|
| 1 | +Troubleshooting |
| 2 | +============================== |
| 3 | + |
| 4 | +From time to time, an error occurs when working with CircuitPython. Here are a |
| 5 | +variety of errors that can happen, what they mean and how to fix them. |
| 6 | + |
| 7 | +File system issues |
| 8 | +------------------------------ |
| 9 | + |
| 10 | +If your host computer starts complaining that your CIRCUITPY drive is corrupted |
| 11 | +or files cannot be overwritten or deleted, then you will have to erase it completely. |
| 12 | +When CircuitPython restarts it will create a fresh empty CIRCUITPY filesystem. |
| 13 | + |
| 14 | +This often happens on Windows when the CIRCUITPY disk is not safely ejected |
| 15 | +before being reset by the button or being disconnected from USB. This can also |
| 16 | +happen on Linux and Mac OSX but its less likely. |
| 17 | + |
| 18 | +.. danger:: This will erase all your files in CIRCUITPY! |
| 19 | + |
| 20 | +#. Download the appropriate flash erase uf2 from `here <https://github.com/adafruit/Adafruit_SPIFlash/tree/master/examples/flash_erase_express>`_. |
| 21 | +#. Double-click the reset button. |
| 22 | +#. Copy the appropriate .uf2 to the xxxBOOT drive. |
| 23 | +#. The on-board NeoPixel will turn blue, indicating the erase has started. |
| 24 | +#. After about 15 seconds, the NexoPixel will start flashing green. If it flashes red, the erase failed. |
| 25 | +#. Double-click again and load the appropriate `CircuitPython .uf2 <https://github.com/adafruit/circuitpython/releases/latest>`_. |
| 26 | + |
| 27 | +ValueError: Incompatible .mpy file. |
| 28 | +------------------------------------- |
| 29 | + |
| 30 | +This error occurs when importing a module that is stored as a `mpy` binary file |
| 31 | +(rather than a `py` text file) that was generated by a different version of |
| 32 | +CircuitPython than the one its being loaded into. Most versions are compatible |
| 33 | +but, rarely they aren't. In particular, the `mpy` binary format changed between |
| 34 | +CircuitPython versions 1.x and 2.x. |
| 35 | + |
| 36 | +So, if you just upgraded to 2.x from 1.x you'll need to download a newer version |
| 37 | +of the library. They are all available in the |
| 38 | +`Adafruit bundle <https://github.com/adafruit/Adafruit_CircuitPython_Bundle/releases/latest>`_ |
| 39 | +and the `Community bundle <https://github.com/adafruit/CircuitPython_Community_Bundle/releases/latest>`_. |
| 40 | +Make sure to download a version with 2.0.0 or higher in the filename. |
0 commit comments