You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
serial_write_compressed(translate("You are in safe mode because:\n"));
148
+
serial_write_compressed(translate("\nYou are in safe mode because:\n"));
150
149
151
150
constcompressed_string_t*message=NULL;
152
151
153
152
// First check for safe mode reasons that do not necessarily reflect bugs.
154
153
155
154
switch (reason) {
156
155
caseSAFE_MODE_BROWNOUT:
157
-
message=translate("The microcontroller's power dipped. Make sure your power supply provides\nenough power for the whole circuit and press reset (after ejecting CIRCUITPY).");
156
+
message=translate("The power dipped. Make sure you are providing enough power.");
158
157
break;
159
158
caseSAFE_MODE_USER:
160
159
#if defined(BOARD_USER_SAFE_MODE_ACTION)
161
160
message=BOARD_USER_SAFE_MODE_ACTION;
162
161
#elif defined(CIRCUITPY_BOOT_BUTTON)
163
-
message=translate("You pressed the BOOT button at start up.");
162
+
message=translate("You pressed the BOOT button at start up");
164
163
#else
165
164
message=translate("You pressed the reset button during boot.");
166
165
#endif
167
-
serial_write_compressed(message);
168
-
message=translate("\nTo exit, reset the board without requesting safe mode.");
169
-
// The final piece is printed below.
170
166
break;
171
167
caseSAFE_MODE_NO_CIRCUITPY:
172
168
message=translate("CIRCUITPY drive could not be found or created.");
173
169
break;
174
170
caseSAFE_MODE_PROGRAMMATIC:
175
-
message=translate("The `microcontroller` module was used to boot into safe mode. Press reset to exit safe mode.");
171
+
message=translate("The `microcontroller` module was used to boot into safe mode.");
176
172
break;
173
+
#ifCIRCUITPY_SAFEMODE_PY
177
174
caseSAFE_MODE_SAFEMODE_PY_ERROR:
178
175
message=translate("Error in safemode.py.");
179
176
break;
177
+
#endif
178
+
caseSAFE_MODE_STACK_OVERFLOW:
179
+
message=translate("Heap was corrupted because the stack was too small. Increase stack size.");
180
+
break;
180
181
caseSAFE_MODE_USB_TOO_MANY_ENDPOINTS:
181
182
message=translate("USB devices need more endpoints than are available.");
182
183
break;
183
184
caseSAFE_MODE_USB_TOO_MANY_INTERFACE_NAMES:
184
185
message=translate("USB devices specify too many interface names.");
185
186
break;
186
187
caseSAFE_MODE_USB_BOOT_DEVICE_NOT_INTERFACE_ZERO:
187
-
message=translate("Boot device must be first device (interface #0).");
188
+
message=translate("Boot device must be first (interface #0).");
message=translate("The CircuitPython heap was corrupted because the stack was too small.\nIncrease the stack size if you know how. If not:");
230
-
break;
231
-
default:
232
-
message=translate("Unknown reason.");
233
-
break;
234
-
}
235
-
serial_write_compressed(message);
236
-
serial_write_compressed(translate("\nPlease file an issue with the contents of your CIRCUITPY drive at \nhttps://github.com/adafruit/circuitpython/issues\n"));
233
+
// Always tell user how to get out of safe mode.
234
+
serial_write_compressed(translate("\nPress reset to exit safe mode.\n"));
0 commit comments