[Gnuk-users] Upgrading gnuk on a nitrokey start
Remy van Elst
relst at relst.nl
Tue Jan 3 18:41:33 UTC 2017
Hi Szczepan (hopefully correctly spelled)
I tried to upgrade with the prebuilt bin file, after doing the make clean,
./configure and new make for gnuk and regnual on the 16.10 machine. It
seems to fail for me, just as the other times I tried (with RTM1 firmware):
Device:
Vendor: Nitrokey
Product: Nitrokey Start
Serial: FSIJ-1.0.4-52FF7106
Revision: release/1.0.4-6-g739e00e
Config:
NITROKEY_START:dfu=no:debug=no:pinpad=no:certdo=yes:keygen=yes
Sys: 1.0
$ python2 ./upgrade_by_passwd.py -f ../regnual/regnual.bin
~/tmp/nitrokey-start-firmware-1.0.4-1a.bin
../regnual/regnual.bin: 4388
/home/remy/tmp/nitrokey-start-firmware-1.0.4-1a.bin: 58368
CRC32: a4811640
Device:
Configuration: 1
Interface: 0
20001400:20004a00
Downloading flash upgrade program...
start 20001400
end 20002500
Run flash upgrade program...
Waiting for device to appear:
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
^CTraceback (most recent call last):
File "./upgrade_by_passwd.py", line 134, in <module>
main(wait_e, keyno, passwd, data_regnual, data_upgrade[4096:])
File "./upgrade_by_passwd.py", line 75, in main
time.sleep(wait_e)
KeyboardInterrupt
Device:
Vendor: Nitrokey
Product: Nitrokey Start
Serial: FSIJ-1.0.4-52FF7106
Revision: release/1.0.4-6-g739e00e
Config:
NITROKEY_START:dfu=no:debug=no:pinpad=no:certdo=yes:keygen=yes
Sys: 1.0
$ python2 ./upgrade_by_passwd.py -f ../regnual/regnual.bin
~/tmp/nitrokey-start-firmware-1.0.4-1a.bin
../regnual/regnual.bin: 4388
/home/remy/tmp/nitrokey-start-firmware-1.0.4-1a.bin: 58368
CRC32: a4811640
Device:
Configuration: 1
Interface: 0
20001400:20004a00
Downloading flash upgrade program...
start 20001400
end 20002500
Run flash upgrade program...
Waiting for device to appear:
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
^CTraceback (most recent call last):
File "./upgrade_by_passwd.py", line 134, in <module>
main(wait_e, keyno, passwd, data_regnual, data_upgrade[4096:])
File "./upgrade_by_passwd.py", line 75, in main
time.sleep(wait_e)
KeyboardInterrupt
Upgrading to RTM2:
$ python2 ./upgrade_by_passwd.py -f ../regnual/regnual.bin
../../nitrokey-start-firmware/prebuilt/RTM.2/gnuk.bin
../regnual/regnual.bin: 4388
../../nitrokey-start-firmware/prebuilt/RTM.2/gnuk.bin: 53248
CRC32: a4811640
Device:
Configuration: 1
Interface: 0
20001400:20004a00
Downloading flash upgrade program...
start 20001400
end 20002500
Run flash upgrade program...
Waiting for device to appear:
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
^CTraceback (most recent call last):
File "./upgrade_by_passwd.py", line 134, in <module>
main(wait_e, keyno, passwd, data_regnual, data_upgrade[4096:])
File "./upgrade_by_passwd.py", line 75, in main
time.sleep(wait_e)
KeyboardInterrupt
On 1.2.2:
$ python2 usb_strings.py
Device:
Vendor: Nitrokey
Product: Nitrokey Start
Serial: FSIJ-1.2.2-87042430
Revision: release/1.0.2-471-g1a76ab5-modified
Config: NITROKEY_START:dfu=no:debug=no:pinpad=no:certdo=no
Sys: 3.0
It works:
$ python2 ./upgrade_by_passwd.py -f ../regnual/regnual.bin
../src/build/gnuk.bin
../regnual/regnual.bin: 4388
../src/build/gnuk.bin: 110592
CRC32: a4811640
Device:
Configuration: 1
Interface: 0
20002800:20005000
Downloading flash upgrade program...
start 20002800
end 20003900
Run flash upgrade program...
Waiting for device to appear:
- Wait 1 seconds...
Device:
08001000:08020000
Downloading the program
start 08001000
end 0801b000
Resetting device
Update procedure finished
$ python2 usb_strings.py
Device:
Vendor: Nitrokey
Product: Nitrokey Start
Serial: FSIJ-1.2.2-87042430
Revision: release/1.0.2-471-g1a76ab5-modified
Config: NITROKEY_START:dfu=no:debug=no:pinpad=no:certdo=no
Sys: 3.0
>From 1.2.2 to RTM1:
$ python2 ./upgrade_by_passwd.py -f ../regnual/regnual.bin
../../nitrokey-start-firmware/prebuilt/RTM.1/nitrokey-start-firmware-1.0.4-1a.bin
../regnual/regnual.bin: 4388
../../nitrokey-start-firmware/prebuilt/RTM.1/nitrokey-start-firmware-1.0.4-1a.bin:
58368
CRC32: a4811640
Device:
Configuration: 1
Interface: 0
20002800:20005000
Downloading flash upgrade program...
start 20002800
end 20003900
Run flash upgrade program...
Waiting for device to appear:
- Wait 1 seconds...
Device:
08001000:08020000
Downloading the program
start 08001000
end 0800e400
Resetting device
Update procedure finished
However, afterwards the green light stays on and dmesg says this:
[Tue Jan 3 19:37:11 2017] usb 1-1.1: device descriptor read/64, error
-32
[Tue Jan 3 19:37:11 2017] usb 1-1.1: new full-speed USB device number
37 using ehci-pci
[Tue Jan 3 19:37:11 2017] usb 1-1.1: device not accepting address 37,
error -32
[Tue Jan 3 19:37:12 2017] usb 1-1.1: new full-speed USB device number
38 using ehci-pci
[Tue Jan 3 19:37:12 2017] usb 1-1.1: device not accepting address 38,
error -32
[Tue Jan 3 19:37:12 2017] usb 1-1-port1: unable to enumerate USB device
$ python2 usb_strings.py
Back on RTM1:
$ python2 usb_strings.py
Device:
Vendor: Nitrokey
Product: Nitrokey Start
Serial: FSIJ-1.0.4-52FF7106
Revision:
Config: NITROKEY_START:dfu=no:debug=no:pinpad=no:certdo=no:keygen=no
Sys: 1.0
$ python2 ./upgrade_by_passwd.py -f ../regnual/regnual.bin
../src/build/gnuk.bin
../regnual/regnual.bin: 4388
../src/build/gnuk.bin: 110592
CRC32: a4811640
Device:
Configuration: 1
Interface: 0
20001400:20004a00
Downloading flash upgrade program...
start 20001400
end 20002500
Run flash upgrade program...
Waiting for device to appear:
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
- Wait 1 seconds...
^CTraceback (most recent call last):
File "./upgrade_by_passwd.py", line 134, in <module>
main(wait_e, keyno, passwd, data_regnual, data_upgrade[4096:])
File "./upgrade_by_passwd.py", line 75, in main
time.sleep(wait_e)
KeyboardInterrupt
So it seems to still fail, even with the bin files instead of the HEX.
https://raymii.org
On Thu, Dec 29, 2016 at 12:27 PM, Szczepan Zalega | Nitrokey <
szczepan at nitrokey.com> wrote:
> Hi Remy!
>
> I have noticed that you have used .hex file for regnual update. The tool
> does not understand this format and in consequence it sends ASCII
> hexdump representation directly to device, which obviously will not
> work. This was the cause of the update issues mentioned in previous
> email. The stm32flash tool handles both .bin and .hex.
>
> Just for testing purposes I have converted the firmware you have
> received to binary [3] with srecord tools (not checked it though):
>
> ```
> srec_cat nitrokey-start-firmware-1.0.4-1a.hex -intel -offset
> -0x08000000 -o nitrokey-start-firmware-1.0.4-1a.bin -binary
>
> ```
>
> Have you tried upgrading using regnual with prebuilt binaries? [2]
>
> As for compiling firmware for first release on Ubuntu 16.10, I have done
> the same successfully on Virtualbox with image downloaded from OSBoxes
> (to make it fully reproducible) - full log attached [1]. Please try the
> compilation on a clean repository.
>
> Additionally regnual tool might need recompilation (make clean; make) on
> each ./configure run since it uses files generated with it.
>
> SHA sum for downloaded Ubuntu image from OSBoxes:
> $ sha512sum Ubuntu_16.10_Yakkety-VB-64bit.7z
> fa16b1fc694679a7e470030eddc3fc1e842e94e6cb62ac5ea3f346a2ccbc
> 39b8c909395655b3134a189021e8c02fdd001fb2fe544f012e18dffb14e369a79a6e
> Ubuntu_16.10_Yakkety-VB-64bit.7z
>
>
> [1] http://paste.ubuntu.com/23664245/
> [2]
> https://github.com/Nitrokey/nitrokey-start-firmware/tree/
> gnuk1.2-regnual-fix/prebuilt
> [3]
> https://github.com/Nitrokey/nitrokey-start-firmware/tree/
> gnuk1.2-regnual-fix/prebuilt/RTM.1
>
> --
> Best regards,
> Szczepan
>
> _______________________________________________
> gnuk-users mailing list
> gnuk-users at lists.alioth.debian.org
> https://lists.alioth.debian.org/mailman/listinfo/gnuk-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/gnuk-users/attachments/20170103/50e9c915/attachment.html>
More information about the gnuk-users
mailing list