habe hier schon mal nachgefragt, da ich aber den Konto gelöscht, wurde der Beitrag auch gelöscht.
Also Nochmal:
Ich benutze Linux Mint 19.3.
scdaemon, gpg2, Python 2.7.17 Pakete sind installiert. Welche fehlen noch?
Fimwareversion: 1.2.10
Nach dem ich den Befehl
./upgrade_by_passwd.py -f ../prebuilt/RTM.7/{regnual.bin,gnuk.bin}
eingebe bekomme ich folgenden Fehler.
ModuleNotFoundError: No module named 'usb'.
Flash Vorgang läuft. Wie lange ist “Wait 1 second…”?
Mist, habe jetzt den Vorgang aus Versehen mit Ctrl+C unterbrochen. Wollte Terminal kopieren.
Was soll ich jetzt tun? Rote LED blinkt.
Flash process is running. How long is “Wait 1 second…”?
Crap, I accidentally interrupted the process with Ctrl+C. I was trying to copy terminal.
What do I do now? Red LED flashing.
lsusb | xclip -selection clipboard
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 006: ID 20a0:4211 Clay Logic
Bus 001 Device 002: ID 80ee:0021 VirtualBox USB Tablet
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
dmesg | tail -60 | xclip -selection clipboard
[ 2683.494042] usb 1-2: new full-speed USB device number 3 using xhci_hcd
[ 2683.838287] usb 1-2: New USB device found, idVendor=20a0, idProduct=4211, bcdDevice= 2.00
[ 2683.838291] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2683.838293] usb 1-2: Product: Nitrokey Start
[ 2683.838295] usb 1-2: Manufacturer: Nitrokey
[ 2683.838297] usb 1-2: SerialNumber: FSIJ-1.2.10-43115045
[ 4879.813114] usb 1-2: USB disconnect, device number 3
[ 7474.075989] usb 1-2: new full-speed USB device number 4 using xhci_hcd
[ 7474.421121] usb 1-2: New USB device found, idVendor=20a0, idProduct=4211, bcdDevice= 2.00
[ 7474.421124] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 7474.421127] usb 1-2: Product: Nitrokey Start
[ 7474.421129] usb 1-2: Manufacturer: Nitrokey
[ 7474.421132] usb 1-2: SerialNumber: FSIJ-1.2.10-43115045
[ 8283.274150] usb 1-2: USB disconnect, device number 4
[17678.088688] usb 1-2: new full-speed USB device number 5 using xhci_hcd
[17678.440930] usb 1-2: New USB device found, idVendor=20a0, idProduct=4211, bcdDevice= 2.00
[17678.440933] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[17678.440936] usb 1-2: Product: Nitrokey Start
[17678.440938] usb 1-2: Manufacturer: Nitrokey
[17678.440940] usb 1-2: SerialNumber: FSIJ-1.2.10-43115045
[17758.868614] usb 1-2: USB disconnect, device number 5
[19678.264838] usb 1-2: new full-speed USB device number 6 using xhci_hcd
[19678.603180] usb 1-2: New USB device found, idVendor=20a0, idProduct=4211, bcdDevice= 2.00
[19678.603184] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[19678.603186] usb 1-2: Product: Nitrokey Start
[19678.603188] usb 1-2: Manufacturer: Nitrokey
[19678.603190] usb 1-2: SerialNumber: FSIJ-0.0
Thank you. The device has switched with success to the bootloader. I need to check the update script for potential issues. While the device should be possible to safely disconnect, please wait with it until my confirmation. I should be ready in 15-20 minutes.
Assuming the whole Nitrokey Start repository was downloaded through Git (as in mentioned guide), please execute in the nitrokey-start-firmware/tool directory:
git pull
to download updated script;
git describe
please confirm its result is the same with RTM.7-16-g41cc384;
./upgrade_by_passwd.py -f ../prebuilt/RTM.7/{regnual.bin,gnuk.bin} -b
to resume update process from the uploaded bootloader stage.
The third command will resume the connection attempt with the device’s bootloader. In my attempts it turned out that on this stage removing device from power will erase the bootloader from device’s memory, making it effectively not able to be updated further by this way. It will stop communicating through the USB interface at all.
A 5$ STM32 debug adapter would be required, and a simple soldering in such a case, however the device’s case might get broken in the process.
What I meant here is to compare your version string of the downloaded code with this one RTM.7-16-g41cc384. Command for showing this is git describe - it will show the current code revision.
The only thing right know is to focus on keeping the device connected, and to try to execute the update command again, with the -b argument.
I am glad it worked! I assume then the -b switch has helped in your case. I do not remember we have seen such case yet. Thanks to your help I will add this to the documentation, and I will improve the update application. Sorry for the trouble!