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

[micro:bit] Remove firmware test #46914

Merged
merged 1 commit into from
Jun 21, 2022
Merged

Conversation

epeach
Copy link

@epeach epeach commented Jun 21, 2022

Report from micro:bit partners that maker/setup was not working and was failing at this step. Quotes from email correspondence below:

return e.boardClient_.firmwareVersion.includes(c.MICROBIT_FIRMWARE_VERSION) ? Promise.resolve() : Promise.reject("Incorrect firmware detected")

I'm assuming [this](https://github.com/code-dot-org/code-dot-org/blob/72c85bdd1a65ebfa25632122168c9da2e17d7a1a/apps/src/lib/kits/maker/boards/microBit/MicroBitBoard.js#L102) is the source.  When it's executing, the  `e.boardClient_. firmwareVersion` is the empty string (""). So of course it fails!

and

An error in the firmware check appears be the hangup. I used the debugger and changed the value of MICROBIT_FIRMWARE_VERSION used for comparison to be "" (empty string). . After that I was able to get a primitive app to run and report updates to accelerometer values. So....seems pretty likely that the hangup is all due to the initial firmware version check process.

This appears to be a race condition, since I (EPeach) can't repro this locally and we haven't had reports from people on our team who've tested this. Since we are still in pre-Beta release, I'm going to remove this check for now and add a Jira ticket to track re-adding this check. The only downside to removing this is that we now aren't able to identify if people have incorrect firmware. Since this is pre-Beta and this error is blocking our partners, I think this is appropriate to remove.

@epeach epeach changed the title [micro:bit] [micro:bit] Remove firmware test Jun 21, 2022
@epeach epeach requested a review from a team June 21, 2022 16:53
@KylieModen
Copy link
Contributor

Thanks for the quick fix, agreed we can follow up with a future fix for this check

@epeach
Copy link
Author

epeach commented Jun 21, 2022

Jira ticket tracking this work - brought into Hardware Swarm epic - https://codedotorg.atlassian.net/browse/STAR-2331

Copy link
Contributor

@mikeharv mikeharv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for tracking the follow-up work here!

@bsiever
Copy link

bsiever commented Jun 21, 2022

Adding this comment here, but perhaps Jira is more appropriate: I think you can just change

to return a promise that resolves after a modest timeout (maybe 500ms). This would give time for the request for the firmware version to complete prior to the check. If it doesn't complete in 500ms, it's probably not a compatible board or not operating correctly.

@epeach epeach merged commit 1798bac into staging Jun 21, 2022
@epeach epeach deleted the remove-test-causing-mb-fail branch June 21, 2022 18:21
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

Successfully merging this pull request may close these issues.

None yet

5 participants