Update: 7/30/19 … It’s ALL WORKING NOW, YAY!
OK! The upcoming iOS 13 allows iPads to be more like computers, which means being able to do computer-like things such as plugging in a USB drive, opening up the Files app in iOS 13 and browsing the files. This is going to be fantastic for folks who want to use an iPad as their full-time desktop replacement, and if you’re a coder it looks like you’ll be able to do things like opening up Python .py files, use IDEs for coding, etc.
However! iOS beta 1 deletes files off some devices that are USB-Drive-like, for example, all the CircuitPython boards. The iPad also resets itself, so that’s not super-great either.
This post is to document it the best we can so it’s fixed before the iOS 13 release. Thank you @_danj_, and @DancingBottle for also letting us know.
Here’s our Circuit Playground Express. Running the latest or pretty much any previous version of CircuitPython.
Here is the Circuit Playground Express as it appears on the latest version(s) of Mac OS. Shows up as a USB drive, all it well. Copy, deleted, move, it’s just like a USB drive that happens to be Python device.
Plugging in the Circuit Playground express to the iPad running iOS 13 beta 1, will at first correctly run, light up, based on the code stored on the drive code.py. However, it quickly, almost immediately changes the name of the drive from CIRCPY to XXXERROR on the iPad. The iPad then deletes all the files off the drive.
If you are fast you can see that the files are there before they are deleted, and a new file that has zero bytes is displayed, and it’s from the year 2031.
We made a video to show all this happening (video).
Additionally, we happen to use and have a USB Analyzer from Total Phase and separately logged the USB traffic, we’ve uploaded it here on GitHub.
Our guess is that iOS 13 beta supports FAT16/32, but not FAT12, so it mis-reads the device and zaps it, which deletes the files.
UPDATE! 6/26/19 – On GitHub e28eta posted up some investigation.
Update: 7/30/19 … It’s ALL WORKING NOW, YAY!