Comments (5)
Nope, that is clearly not intended functionality... when communication fails at such a rate, libti*+tilp are not usable. However, the thing is, I don't know what happens. It's news to me that it can happen on an older, non-Python Edition TI-eZ80 calculator.
It's not that libticalcs is talking garbage to the calculator, or failing to understand what the calculator returns, since communication is reliable for most non-Python Edition TI-eZ80 calculators (my older 83PCE is in that set), and even on affected calculators (my 83PCE EP is in that set), the desired operations eventually work. It shouldn't be the USB cable's fault, since the same cable has never triggered issues with other calculators.
If the issue happens at a lower level, software USB analyzers such as usbmon on Linux might help debugging the issue, but if they don't, I don't have an external USB analyzer...
Did you try using another USB port on the computer, or (not to) plug on your calculator on some form of external USB hub, if you have that ? I know that this can impact communication, since my 89 Titanium does not work at all when plugged into a USB 3 port (it's not even detected at the USB level, so libticables doesn't get a chance to see it in the first place), but it works flawlessly, with the same USB cable, when plugged into an external USB 1.1 hub or a 2.0 port.
from tilp_and_gfm.
Hmm, I have tried using different USB ports, but the error persists. Thanks for the help, I'll probably end up trying out some USB analyzers.
from tilp_and_gfm.
Well, it seems I have fixed this problem after resetting my kernel configuration. Although I changed a multitude of settings, one that stands out to me as a possible solution is disabling CONFIG_SCSI_SCAN_ASYNC
. I haven't had the time to test whether it was specifically this kernel configuration, but I can probably soon.
from tilp_and_gfm.
I also get similar issues (though with much higher error rates than 1 in 3… more like 6 in 7 times) on my TI-84 Plus when attempting to restore a backup. Specifically, it gets all of the variable names and, at the very end, the PC sends a Request to Send
, at which point it hangs for a few seconds and times out on the operation slv_bulk_read
(see pic below for graphical error message; I can provide more extensive logs if desired). I've found that spamming the "List calculator content" button a bit before restoring can sometimes improve the error rates, though this is also inconsistent.
I am on Linux (Arch), and disabling CONFIG_SCSI_SCAN_ASYNC
in the kernel does not change anything for me. I have a couple kernels installed (both xanmod-edge and regular linux from the Arch repos) and this issue occurs on both. I've also tried this both with just leaving the calculator on and with setting it to "Receive" mode (2nd
→ X,T,θ,n
(Link) → >
→ 1
), all to no avail.
Note that this only happens when restoring backups, and regularly sending files or listing contents works fine for me (there may be other broken operations but I have yet to find them). If you need any additional info or have anything I should test please let me know.
System info:
- PC:
- Kernel:
5.16.1
- TiLP2 v1.18 (cables=1.3.5, files=1.1.7, calcs=1.1.9, conv=1.1.5)
- ^ All built from source using the AUR packages tilp, libticalcs, libticables, libtifiles, and libticonv (I tried to use the
-git
versions that compile from the latest commits to the repository but I was having other issues with it running due to incompatible library versions and stuff, but I'll try it again later)
- Kernel:
- Calculator:
- TI-84 Plus (not CE, not Silver)
- Running OS version 2.55MP (afaik the latest)
from tilp_and_gfm.
Thanks for the report. It's interesting that the issue occurs on a 84+ as well.
It reminds me of a corner case of multi-file transfers I fixed a while ago, long after fixing single file transfer of specific sizes on multiple models. The current commit ID for the fix I'm talking about is debrouxl/tilibs@36e7d8f . I never integrated it onto the main branch because of insufficient regression testing on other models.
However, that issue and this one should be different, because that communication issue is deterministic, AFAICT.
from tilp_and_gfm.
Related Issues (20)
- Capture screen from command line HOT 1
- Add support for running assembly programs on TI-84 Plus CE in OS 5.6+ using arTIfiCE HOT 3
- Sync Clock With PC Always Sets Clock to UTC HOT 5
- Android ARM-64 support? HOT 2
- TI83F header comment cutoff? HOT 10
- trying to transfer MirageOs produces an issue stating "Invalid Parameter" HOT 3
- Free software license HOT 3
- Build fails on Manjaro: Can't exec "aclocal": No such file or directory at /usr/share/autoconf/Autom4te/FileUtils.pm line 274. HOT 4
- Double-clicking empty device list causes Segmentation fault HOT 3
- Errors connecting to TI-84 Plus CE HOT 6
- Updating an app with TiLP hangs & times out while calculator is on "Defragmenting" screen HOT 2
- Unable to restore CRASH.82B file to TI-82 on tilp HOT 1
- Feature Request: Dark Theme HOT 3
- File transfer (TX) does not work on TI-92: Files never actually save to the device. HOT 2
- Win32: The procedure entry point deflateSetHeader could not be located in the dynamic link library libgio-2.0-0.dll
- ./install_tilp.sh fails on OSX Ventura 13.3 HOT 3
- ./install_tilp.sh fails on OSX Ventura 13.3 ARM HOT 2
- Cannot download specific variables from TI-92 II HOT 1
- [GFM] macOS: segfault on gtk_file_chooser_set_current_name
- dependency libglade2-0 will be removed from Debian: deprecated and unmaintained upstream HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tilp_and_gfm.