-
-
Notifications
You must be signed in to change notification settings - Fork 81
EV3 USB fixes. #358
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
EV3 USB fixes. #358
Conversation
We plan on calling the next release v4. The main purpose of changing this now is so that the WebUSB BOS descriptors will point to labs.pybricks.com instead of code.pybricks.com. Also fix missing include in usb_common_desc.c to make this actually take effect.
Use the correct register when calling USBReset(). Also replace some hard-coded values with macros in the related TI library.
Fix the USB being in a bad state after a firmware update. The firmware updater uses the USB to transfer the new firmware and then jumps to the new firmware without resetting the USB controller. Calling USBReset() was not enough to reset the USB controller. Even after this we would never get any interrupts, so requests from a host would time out. This is fixed by using the PSC to reset the USB controller instead of USBReset(). Also, before we reset things, we need to tell the host to disconnect from the firmware update USB device. When we reconfigure things the EV3 will appear as a completely different USB device. Fixes: pybricks/support#2295
|
YES, Milestone 4.0 flashed the EV3 on the USB-2 of mammoet Linux Mint Flash no longer waits 30 seconds after EV3 restart. After a few reboots of the EV3, the EV3 is recognized: dmesg outputWindows I have no feeling that the REPL works more stable. Should |
Yup, that is the only thing being fixed here.
Still looking into this one. I can reproduce it on my Chromebook.
Perhaps @laurensvalk can help with that (
That isn't related to USB. See #357 (comment)
Using |
Fixing pybricks/support#2295 plus bumping the firmware version so that the WebUSB descriptors point to
labs.pybricks.cominstead ofcode.pybricks.com.