Getting Started
Adafruit Playground is a wonderful and safe place to share your interests with Adafruit's vibrant community of makers and doers. Have a cool project you are working on? Have a bit of code that you think others will find useful? Want to show off your electronics workbench? You have come to the right place.
The goal of Adafruit Playground is to make it as simple as possible to share your work. On the Adafruit Playground users can create Notes. A note is a single-page space where you can document your topic using Adafruit's easy-to-use editor. Notes are like Guides on the Adafruit Learning System but guides are high-fidelity content curated and maintained by Adafuit. Notes are whatever you want them to be. Have fun and be kind.
Click here to learn more about Adafruit Playground and how to get started.
-
Screensaver bundle for Fruit Jam OS
This is a collection of screensavers written in CircuitPython for the Adafruit Fruit Jam OS, an operating system running on the Fruit Jam by Adafruit. This bundle contains 4 screensavers. Visit again to see if we have added more!
This repository is a collection of screensavers written in CircuitPython and created for the Adafruit Fruit Jam OS, an operating system running on the Fruit Jam by Adafruit. It is a credit-card-sized, RP2350-powered mini computer designed for retro emulation and other fun projects.
This bundle contains 4 screensavers:
- Weather Clock - A display containing the current date, time, temperature and weather icon
- 15 Puzzle - Images are split into sliding tiles in a 4x4 grid
- Maze - A screensaver that generates random mazes and then solves them in real-time.
- Star Field - a screen of moving stars reminiscent of a famous 1960s SciFi TV show.
The weather clock displays a simple view of the current weather and time. The background display also indicates whether it is currently daytime or nighttime (determined by sunrise and sunset times). In addition to the wifi settings, the location and timezone are configured in the settings.toml file. If not set, the weather and time for New York City are displayed. From the weather_clock_screensaver.py file, copy the LATITUDE, LONGITUDE, TMZ and METRIC lines to the settings.toml file on the CircuitPython drive and modify them for your location. Note: Latitude and longitude values can be defined either by direction (N,S,E,W) or by signed number. The screensaver requires signed numbers. So, for latitudes with an "S" and/or longitudes with "W", use a minus sign with the value.Set METRIC to 1 for displaying metric values (Celcius temperatures) or set to 0 for non-metric values (Fahrenheit temperatures).
For the 15 puzzle screensaver, a different image is chosen each time the screensaver is activated, then converted into tiles and slid within a 4x4 grid like the classic game. With the default settings, the tiles slide randomly for about 1 minute before resolving to the initial starting position, and then started again. Several images are included, but you can add your own to the ssbundle_assets/15puzzle folder, which should be 320 pixels width and 240 pixels height and 256 colors.
For the maze screensaver, 3 different size mazes are created, from easy to hard. You can change this behavior by modifying the MAZE_PICK line near the top of the file. You can change it to a specific size maze (0-2), random choice (MAZE_RANDOM), or the default display of the maze sizes in order (MAZE_SEQUENCE). The harder the maze, the longer it takes to generate the maze and solve it, so you will see a blank screen at the start when the first maze is being created.
For the star field screensaver, you can specify whether are not to show the star streaks by modifying the STREAK line near the top of the file to "True" or "False". You can also modify the number of stars to display with the STARCOUNT line, however, the more stars you have the slower the performance will be.
Installation
It is always best to install the latest version of CircuitPython . You will need to install the Fruit Jam OS for the Adafruit Fruit Jam. This will also include all the libraries needed by the Screensaver Bundle, so no additional libraries are needed.
Download the latest version of this bundle from the GitHub repository. Unzip the bundle and copy the screensaver files to the "/apps/screensavers" folder on the Fruit Jam. Run the Screensaver app on the Fruit Jam OS to choose one of the screensavers, or refer to the Fruit Jam OS learn guide for how to configure the screensaver manually.
-
Can You Write a One Line CircuitPython Program to Create a Maze?
There is a somewhat famous Commodore 64 program that created random mazes onscreen with a single line of BASIC code. The program accomplished this by randomly printing the slash "/" and backslash "\" characters, making a surprisingly accurate display of a maze. I was wondering if this could be done with a single line of CircuitPython code, so I set out to see if it was possible (spoiler alert: It can with a caveat).
Here is the one line of BASIC code for the Commodore 64 that produces random mazes:
This minimal program randomly prints either the slash "/" or the backslash character "\" and repeats the process in an infinite loop. The result looks like this:
-
Moon Miner Arcade Game for the Adafruit Fruit Jam
Moon Miner is a retro-styled arcade game reminiscent of the Lunar Lander arcade game from the 1980s. Your mission is to retrieve minerals from various moons around the solar system. It is a physics-based game, where you must navigate your rocket ship based on gravity and thrust to make a safe landing for retrieving minerals. Achieve a successful landing by reducing speed to near zero and keeping the lander upright on designated flat areas. It is available to play on the Adafruit Fruit Jam.
Features
- The game employs physics to maneuver based on gravity. The game takes into account each moon has different gravitational properties.
- A heads-up display shows mission flight data in real-time.
- Complete the mission of collecting gems and your best time to complete the mission is saved. Play again to beat your best time.
- There are several ways you can die. Make sure you land on a horizontal surface at a safe velocity (and watch out for volcanos).
- Use fuel locations when running low on fuel. Some locations can be revisited again for additional fuel.
- Four missions are included.
- Written entirely in CircuitPython for the Adafruit Fruit Jam.
The full learn guide, including download and installation instructions can be found at the author's web site at https://danthegeek.com/2025/12/28/moon-miner-learn-guide/