The software does not transition to idle mode sometimes #262
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
I am running the software on the waveshare RP-2350 Zero board with NeoPixel LED. The LED colors, as I understand them, are RED for the active mode, GREEN for the initialization mode, BLUE for the idle mode.
If the unit is just powered up it will transition to flashing BLUE color, very slowly pulsating the LED. However sometimes after authentication is completed, the device will never transition into the idle mode and continues flashing RED LED. It does not always happen and sometimes the device behaves as expected.
The waveshare board has RUN button which is effectively a reset button and after pressing that, the device reboots an will become idle after maybe 5-10 seconds.
I am not sure how to debug this, is there a way to expose a serial port in addition to the FIDO2 device interface?
I also tried the same version of software on Pico2W board but LED there does not work at all in a pre-built image so maybe it behaves just the same.
I did some more investigating and it looks like the software does not handle usb power suspension transition without sending CTAPHID_INIT packet over USB. The software must handle usb suspend/resume transition and put the device into an idle state.
The red light should never be displayed. It means the usb has not been mounted and therefore, it cannot be used. It doubtly will be resolved implementing unuseful tasks handling idle state. I think there’s a deeper problem beneath.