Open gpdaniels opened 3 years ago
Our school has one, and i can maybe dump it's firmware
Thanks for the offer! I've got one dump so far, filesystem here: https://github.com/gpdaniels/spike-prime/tree/master/filesystem/spike%20essential%20-%20v1.0.00.0070-51a2ff4%20-%203.1.21
But it would be great to have newer versions.
Currently the only problem seems to be that we only have windows (10) laptops at our school, maybe i can try booting into a live enviroment but if i remember correctly i've tried and failed
Is there a way to dump the firmware on windows?
I suspect the dfu-util from https://dfu-util.sourceforge.net/ will work. With the file from that I can reformat the file to match the others easy enough, it's just this step that I can't do without the actual hardware:
dfu-util --alt 0 --dfuse-address 0x08000000:1048576 --upload firmware.bin
--upload firmware.bin
wouldn't this write to the hardware?
I thought that when I first started using it too, but for dfu-util upload means from device to computer.
Usage: dfu-util [options] ...
-h --help Print this help message
-V --version Print the version number
-v --verbose Print verbose debug statements
-l --list List currently attached DFU capable devices
-e --detach Detach currently attached DFU capable devices
-E --detach-delay seconds Time to wait before reopening a device after detach
-d --device <vendor>:<product>[,<vendor_dfu>:<product_dfu>]
Specify Vendor/Product ID(s) of DFU device
-p --path <bus-port. ... .port> Specify path to DFU device
-c --cfg <config_nr> Specify the Configuration of DFU device
-i --intf <intf_nr> Specify the DFU Interface number
-S --serial <serial_string>[,<serial_string_dfu>]
Specify Serial String of DFU device
-a --alt <alt> Specify the Altsetting of the DFU Interface
by name or by number
-t --transfer-size <size> Specify the number of bytes per USB Transfer
-U --upload <file> Read firmware from device into <file>
-Z --upload-size <bytes> Specify the expected upload size in bytes
-D --download <file> Write firmware from <file> into device
-R --reset Issue USB Reset signalling once we're finished
-s --dfuse-address <address> ST DfuSe mode, specify target address for
raw file download or upload. Not applicable for
DfuSe file (.dfu) downloads
Ah thanks, i will be next there in monday and i'll try getting the firmware but i can't promise anything
So i ran the command you gave me and it gave me an error, but after installing the winUSB driver it completed successfully
I can't upload files here directly so i will upload it to my website and link it here
Sorry for taking too long, we were at the WRO competition
so i dumped 2 large and 1 small hub's firmware, and the links for them are: https://tonyxforce.hu/hub/smallhub_firmware.bin https://tonyxforce.hu/hub/largehub1_firmware.bin https://tonyxforce.hu/hub/largehub2_firmware.bin
There's no rush. Running the rest of the steps to process the files I get these hashes:
largehub1 = 109c3e2589c8171f244ec740338b9df3
largehub2 = 0f07e0609371ae308687a63ed5aa5fb7
smallhub = f086fc1f95f6c8dda4dd4467641519d3
Interesting that the two large hubs have different versions.
It would be really handy to have the filesystems to go with them, these can be dumped using rshell (which can be installed using pip).
the problem is that i don't think i'll ever have access to these hubs anymore, for some reasons so getting any more info from these aren't really possible
maybe, maybe i can get to school in the summer but it's not really probable
maybe the hubs create the filesystem on boot, if that's the case the FS can maybe be regenerated with recreating some of the hardware and hoping for the best
There's now a small version of the SPIKE prime hub which probably runs a different firmware and has a different filesystem. See: https://education.lego.com/en-us/products/lego-technic-small-hub/45609
It would be good to keep a record of these.
If you have one please get in touch!