Problems / FAQ

Problem: When I try to save code.py from the Android application the f.write() statements in the serial text box don't look correct. There are lots of ellipsis ("...") and/or OSErrors, and there are no numbers printed on the lines after. My code does not get saved successfully.

Explanation: This is the result of trying to write to the storage from REPL when it's not mounted as writable. 

Solution: If you are using the boot.py file from the preparation page, then you need to unplug the board, flip the on-board switch to the right position, then plug the board back in and try again.

If you aren't using the boot.py form the preparation page, you need to edit your own boot.py to mount the storage properly for writing.

Problem: I'm trying to save my code the normal way via Mu and USB storage, but I'm getting an error about permission or write protection.

Explanation: Your board is currently mounted so that the Android app and REPL can write to the storage, but you are trying to save from the PC and USB storage instead. 

Solution: If you are using the boot.py file from the preparation page, then you need to unplug the board, flip the on-board switch to the left position, then plug the board back in and try again. If you aren't using the boot.py form the preparation page you need to edit your own boot.py to mount the storage properly to non-writable.

Problem: When my CircuitPython board is plugged in to my Android device, the on-screen keyboard does not show, so I cannot type anything into the REPL or code and macro editors.

Explanation: Some Android devices and OS versions have a feature that disables the virtual on-screen keyboard while there is a physical keyboard connected. The idea is that since you're using a hardware keyboard, you won't want the virtual one eating up valuable screen real estate. Since the Circuit Playground Express board is seen as a keyboard, it gets caught by this feature. Luckily, most devices offer a setting to control the behavior.

Solution: First plug in your Circuit Playground Express board (or any hardware keyboard). There must be a hardware keyboard connected for the setting to be visible on many devices. Open the settings and look for a setting called "Language & Input" or "Language & Keyboard" or something similar and tap on it. Look for an entry called "Current Keyboard" or "Default Keyboard" or something similar and tap it. You should see a pop-up dialog allowing you to choose from all of the installed virtual keyboards on your device.

At the top, there should be an on/off switch that controls the behavior of the soft keyboard while a hardware one is connected. It's called "Hardware Show input method" or "Show keyboard on screen" or something similar. Turn it on, and then go back to the CircuitPython Editor application and try again.

Problem: I faced some problem that wasn't listed here and the application does not work for me. 

Explanation: This application is in the alpha stage. It is possible it may not work on all Android devices or with all CircuitPython boards.

Solution: Please open an issue on the Github page and provide as much specific information about the problem you've faced as you can. At the minimum, provide your Android device model, OS version, CircuitPython board, and a detailed description of the problem.

FAQ

Q: Does the application work with other CircuitPython boards beyond the Circuit Playground Express?

A: Yes. The app can work with other boards, but you will need to get the storage mounted as writable. This will likely be a bit less convenient if your board doesn't have an on-board switch. See this guide about using a board pin as a substitute.

Q: Is the application open source?

A: Yes. The application is hosted on GitHub. Check it out there if you'd like to see how the app works, or lend a hand in development.

Q: The application uses my devices battery kind of fast, is this normal?

A: This varies from device to device, but in general yes powering the CircuitPython board for long periods of time can drain the battery, especially if you use the NeoPixels a lot on high brightness.

Q: Is there an iOS app available to do this?

A: Not that I know of. If you are an iOS developer (or know one) looking to help, please reach out to the project on Github or on the Hackaday.io project page.

This guide was first published on Dec 18, 2018. It was last updated on Dec 18, 2018. This page (Problems / FAQ) was last updated on Nov 11, 2019.