Skip to content

Conversation

JakubVanek
Copy link
Contributor

@JakubVanek JakubVanek commented Jun 16, 2025

As noted in the linked commit (coming from pybricks/pybricksdev#98), the hardware version can still be read even when the brick is plugged into a USB 3.0 port.

Unforunately, the CRC packets likely cannot be salvaged this way - the CRC request is longer than the CRC response and so the CRC value is overwritten inside the brick. EDIT: It seems that CRC replies are not corrupted at all.

I have not yet tested this code myself, so I have created this as a draft PR for now.

@JakubVanek JakubVanek force-pushed the feature/getversion-on-usb30 branch 3 times, most recently from 3f57f89 to b10617d Compare June 20, 2025 09:32
@JakubVanek JakubVanek marked this pull request as ready for review June 20, 2025 09:32
@JakubVanek
Copy link
Contributor Author

JakubVanek commented Jun 20, 2025

This is now tested and known to work. On USB 3.0, this is now returned

$ sudo ./ev3duder --usb flash info
USB connection established.
Hardware version : unknown (unable to query via USB 3.0)
EEPROM version   : V0.60 (mass produced hardware)
`FW_GETVERSION` was successful.

@JakubVanek JakubVanek force-pushed the feature/getversion-on-usb30 branch from b10617d to 1efa4b7 Compare June 20, 2025 09:34
As noted in the linked commit (coming from pybricks/pybricksdev#98),
the EEPROM version can still be read even when the brick is plugged
into a USB 3.0 port.
@JakubVanek JakubVanek force-pushed the feature/getversion-on-usb30 branch from 1efa4b7 to 0f7fc52 Compare June 21, 2025 00:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant