Skip to content
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

solo key update fails with problem flashing firmware #161

Closed
olof-nord opened this issue Oct 6, 2022 · 4 comments
Closed

solo key update fails with problem flashing firmware #161

olof-nord opened this issue Oct 6, 2022 · 4 comments

Comments

@olof-nord
Copy link

Hello Solokeys,

I wanted to upgrade my Solokey firmware, but the update failed.

What do I need to do to correctly update to the latest firmware?

$ solo key version
3.1.2 unlocked
$ solo key update
Wrote temporary copy of firmware-4.1.5.json to /tmp/tmpigfaxwjb.json
sha256sums coincide: f36bb365bfddf75004f28af392ae1439192ca0ed821ef496084a75a00d05087a
Switching into bootloader mode...
using signature version >2.5.3
erasing firmware...
error:ng firmware 100.00%...
problem flashing firmware!
(27264, b'')
$ solo key version
3.1.2 unlocked
@olof-nord
Copy link
Author

Now it seems that the Solokey does not work anymore?

$ solo1 key verify
Please press the button on your Solo key
Traceback (most recent call last):
  File "/usr/bin/solo1", line 8, in <module>
    sys.exit(solo_cli())
  File "/usr/lib/python3.10/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/usr/lib/python3.10/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/usr/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/lib/python3.10/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/lib/python3.10/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/usr/lib/python3.10/site-packages/solo/cli/key.py", line 363, in verify
    cert = key.make_credential(pin=pin)
  File "/usr/lib/python3.10/site-packages/solo/devices/base.py", line 100, in make_credential
    result = client.make_credential(options, pin=pin)
TypeError: Fido2Client.make_credential() got an unexpected keyword argument 'pin'

$ solo key ping   
Traceback (most recent call last):
  File "/usr/bin/solo", line 8, in <module>
    sys.exit(solo_cli())
  File "/usr/lib/python3.10/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/usr/lib/python3.10/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/usr/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/lib/python3.10/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/lib/python3.10/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/usr/lib/python3.10/site-packages/solo/cli/key.py", line 484, in ping
    res = client.ping(ping_data)
  File "/usr/lib/python3.10/site-packages/solo/devices/base.py", line 74, in ping
    return self.send_data_hid(CTAPHID.PING, data)
  File "/usr/lib/python3.10/site-packages/solo/devices/base.py", line 53, in send_data_hid
    return self.get_current_hid_device().call(cmd, data, event)
  File "/usr/lib/python3.10/site-packages/fido2/hid/__init__.py", line 214, in call
    raise CtapError(struct.unpack_from(">B", recv)[0])
fido2.ctap.CtapError: CTAP error: 0x01 - INVALID_COMMAND
➜  node git:(main) ✗

@olof-nord
Copy link
Author

Trying to use the key to logging in unfortunately confirms that the device is no longer usable.

@olof-nord
Copy link
Author

Here is the version info:

$ solo version
0.1.1
$ solo key version
3.1.2 unlocked

@olof-nord
Copy link
Author

Problem solved! Just execute the update command once more and the device is back working again.
solokeys/solo1#580

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

No branches or pull requests

1 participant