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

No easy way to reboot into safe mode on the Feather M0 Express #350

Closed
process1183 opened this Issue Oct 20, 2017 · 4 comments

Comments

Projects
None yet
2 participants
@process1183
Collaborator

process1183 commented Oct 20, 2017

While working on issue #286, I discovered that there is not an easy way (say shorting a pin to GND or 3V while pushing reset) to reboot the Feather M0 Express into safe mode. I messed up some test scripts and ended up getting the CIRCUITPY drive stuck in read only mode (read only from the PC) and had to temporarily flash firmware with safe mode forced on to fix it (this was easier than switching to Arduino and wiping the SPI flash).

The Feather M0 Express doesn't have a switchable safe mode implemented in atmel-samd/boards/feather_m0_express/board.c:

bool board_requests_safe_mode(void) {
    return false;
}

If this is something that you would like done, I'd be happy to work on it.

@tannewt

This comment has been minimized.

Show comment
Hide comment
@tannewt

tannewt Oct 20, 2017

Collaborator

Yes! That would be awesome. I think there may be a related bug about resetting from Python code too.

Are you on our Discord? Its where we discuss things and have a weekly voice meeting.

Collaborator

tannewt commented Oct 20, 2017

Yes! That would be awesome. I think there may be a related bug about resetting from Python code too.

Are you on our Discord? Its where we discuss things and have a weekly voice meeting.

@process1183

This comment has been minimized.

Show comment
Hide comment
@process1183

process1183 Oct 20, 2017

Collaborator

@tannewt Yep, I signed up for Discord. I may not be able to attend the weekly meetings though, because I'm at work all day.

Collaborator

process1183 commented Oct 20, 2017

@tannewt Yep, I signed up for Discord. I may not be able to attend the weekly meetings though, because I'm at work all day.

@tannewt tannewt added this to the 3.0 milestone Oct 20, 2017

@tannewt

This comment has been minimized.

Show comment
Hide comment
@tannewt

tannewt Dec 5, 2017

Collaborator

I'm going to pick this up for 2.x. We want the ability to reset to the bootloader so I'll cover this at the same time.

Adding the ability to reset to the bootloader next reset press means we can provide the same out-of-box experience to the CircuitPlayground Express even though it'll ship with CircuitPython going forwards. We'll ship with demo code that make subsequent resets go to the bootloader rather than requiring a double tap. The double tap behavior will happen once that demo code is replaced though.

Collaborator

tannewt commented Dec 5, 2017

I'm going to pick this up for 2.x. We want the ability to reset to the bootloader so I'll cover this at the same time.

Adding the ability to reset to the bootloader next reset press means we can provide the same out-of-box experience to the CircuitPlayground Express even though it'll ship with CircuitPython going forwards. We'll ship with demo code that make subsequent resets go to the bootloader rather than requiring a double tap. The double tap behavior will happen once that demo code is replaced though.

@tannewt tannewt assigned tannewt and unassigned process1183 Dec 5, 2017

@tannewt tannewt modified the milestones: 3.0, 2.x Dec 5, 2017

dhalbert pushed a commit that referenced this issue Dec 6, 2017

Introduce reset mechanics to microcontroller.
This allows one to configure how a subsequent reset will behave and
also trigger a reset.

Fixes #350 and fixes #173
@tannewt

This comment has been minimized.

Show comment
Hide comment
@tannewt

tannewt Dec 6, 2017

Collaborator

This is fixed in 2.x and will be merged into master soon.

Collaborator

tannewt commented Dec 6, 2017

This is fixed in 2.x and will be merged into master soon.

@tannewt tannewt closed this Dec 6, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment