Firmware
Last updated
Last updated
The Teensy 3.2 (Core64) is pre-programmed with firmware, usually the latest release from https://github.com/ageppert/Core64/releases which will get you started with some basic funcionality.
The Pico (Core64c) is not pre-progreammed with firmware. You'll need to grab the latest release from https://github.com/ageppert/Core64/releases. Hold the boot select button on the Pico during power up and it will mount as a USB disk on your computer. Drag-and-drop the [firmware_version].uf2 file to the Pico and it will automatically load, reset, and run.
After power is apply, the firmware starts in the first mode, "Scrolling Text."
The firmware has been updated since this section was written, and there a video which explains the improved functionality here on Youtube. Please update to the latest firmware at your earliest convenience to enjoy better functionality.
To go to the next mode, touch the stylus to the "M" soft button for at least 1/2 a second.
The second mode is "Flux Detector" and the LEDs are illuminated corresponding to cores which are in the presence of a magnetic field. It is interesting to try different magnet types and see where the lines of flux are piercing the Core Board. The results can be unexpected, like this shown on my first prototype:
The third mode is "Monochrome Drawing." The screen is initially filled with the binary representation of the hex values "DEADBEEF" and "C0DECAFE." Clear the screen with a quick touch of the "M" soft button using the magnetic stylus. Draw in the cores with the stylus.
Other modes are also available for testing and experimenting. The first three modes are the most interesting in the initial beta release of the kit. There are 6 or 7 other modes which will eventually bring you back to the first text scrolling mode.
You can explore the releases for updates. Better yet, modify the firmware to do whatever you want!
Connect the Teensy to your computer to see which version of firmware is installed. Or add a small monochrome OLED display to the I2C OLED 4-pin header in the middle of the logic board.
All programming is down through the Teensy USB port. Even if you have an optional LiPo charge manager installed with a USB port, that port does not connect the data lines to the Teensy.
Firmware development is done in the Arduino IDE with the Teensyduino loader. For details on the specific versions, see the comments at the top of the Core64.ino file located in the Github repo (as shipped with the Beta Kits):
https://github.com/ageppert/Core64/blob/V0.5-Beta-Kit-Release-Demo/Firmware/Core64/Core64.ino
Arduino IDE 1.8.9 https://www.arduino.cc/en/Main/Software
TEENSYDUINO LOADER 1.53 https://www.pjrc.com/teensy/td_download.html (Select ALL additional libraries during installation of Teensyduino Loader and associate them with the Arduino 1.8.9 installation.)
Menu: Arduino > Tools > Manage Libraries > Install
1) Adafruit_SSD1306 2.2.0 by Adafruit for Monochrome OLED 128x64 and 128x32
2) Adafruit_GFX_Library 1.10.6 by Adafruit
3) Adafruit_BusIO 1.3.1 by Adafruit
The libraries should end up being in your "Libraries" folder in your default Arduino Sketchbook location.
Download a zip of the demo firmware: https://github.com/ageppert/Core64/archive/refs/tags/V0.5-Beta-Kit-Release-Demo.zip
OR clone the demo firmware: https://github.com/ageppert/Core64/tree/V0.5-Beta-Kit-Release-Demo
Open the project file Core64.ini.
Connect the Core64 to the computer with the USB cable.
Configure the dropdown menu for the Teensy 3.2 from "Board" through "Port" as shown:
Upload and compile:
After the compiling is complete, the Teensyduino Loader will open and program the Teensy. You should see a small window on the screen like this:
You shouldn't need to press the button on the Teensy - it should be automatic.Occassionally the loading may stall if the Teensyduino Loader is not the active window. If that happens to you, click on the header of window (the word TEENSY) to force it to be active, and then programming should commence.