When the code is loaded on the PyPortal, it will have the necessary files to run the application. This will leave almost 8 megabytes of flash memory for your own files. As floppies are not high storage devices, this is not either (this holds about eight times the amount of data a 3.5" floppy did back at the turn of the century).
Whenever the project is plugged into a USB cable (via power source or to a computer), it will display the first twelve files in the root directory.
Directories are displayed (but one cannot drill into subdirectories by touch in this implementation, although it's possible for the user to look to add that capability to the code).
To see more than twelve files, there is a ">" icon on the middle right of the screen (if there are more than 12 root directory files) to scroll to the next screenful of file icons. When on the second page and any subsequent pages, a "<" icon will be displayed to move back pages. These movement icons disappear as appropriate. You may want to use a fingernail to click the < and > icons.
The file icons are stored in icons.bmp, a Windows bitmap format easily read by microcontrollers. In the current implementation, they are:
- Blank
- Generic File
- Directory/Folder
- Bitmap Graphics File
- WAV file (sound)
- Python (.py) File
- Next Page ">"
- Previous Page "<"
Additional types of file icons may be added with appropriate changes to the code to select the correct icon for the file type of the file at hand (described in the Code Overview).
If files are added or deleted, the CircuitPython app restarts - this is normal file system behavior for CircuitPython.
Clicking on an icon is not currently implemented. One could attempt to view images, play sound, and print out text files. An advanced application, but certainly possible.
Going Further
Making the floppy emulate a thumb drive is a natural extension of the way CircuitPython works.
Some have asked for the device to act like a floppy drive. That could take a lot more work, likely in Arduino. Putting floppy images on the thumb drive would work fine, it would be up to whatever the floppy is connected to to read the floppy image files and use them appropriately. Such work would be a project for the user.
Emulated floppies might be another project in the future, but it is not expected for this particular project.
Text editor powered by tinymce.