How to use Gemini to build Teensy timer firmware
Gemini CLI generated Teensy timer firmware from a reviewed specification; the owner authorized writes, flashed the board, and checked LED and serial behavior.
Original prompt
Shared by the source author. See source notes for context.
GEMINI.mdに従い、コードを作ってください
Reach people exploring AI agents
See placements →What happened
The generated sketch built and ran on Teensy 4.0, using separate timer interrupts for LED changes and tenth-second serial logging.
Reported by hotch-potch — Personal blogHow the agent did it
- The owner reviewed Gemini’s specification and corrected project layout and serial-output expectations.
- Gemini CLI read GEMINI.md and created the sketch after permission for local operations.
- The owner built and flashed it in Arduino IDE, then checked LED transitions and serial output on the board.
Where a person stepped in
hotch-potch corrected the specification and comments, authorized local operations, performed the board upload, and inspected the physical LED and serial monitor.
hotch-potch tried a small specification-driven firmware task on a real Teensy 4.0. The aim was an Arduino project that blinked the onboard LED using timer interrupts and reported elapsed time and LED state through USB serial.
Gemini first produced a GEMINI.md specification. The owner reviewed and corrected its directory layout and output format before placing it in the working folder. That step exposed an important ambiguity: the generated description separated the logging interval from the LED transition interval rather than simply printing whenever the light changed.
Gemini CLI then read the approved file, requested permission for local operations, and created the sketch. The owner corrected generated English comments to the requested Japanese, opened the result in Arduino IDE, built it, and uploaded it to the board.
Physical verification showed the LED blinking and serial lines appearing every tenth of a second. The posted implementation used the Teensy IntervalTimer interface with separate logging and LED timers. This is a modest firmware experiment, but its handoff is concrete: the human corrected the specification, authorized writes, performed the flash, and checked the hardware. The account does not claim production timing certification or a complex embedded system.
Prompt
Original prompt
Source: Personal blog · hotch-potch
Frequently asked questions
Was the result tested on a real board?
Yes. The author flashed Teensy 4.0 and checked the LED and serial monitor.
What did the owner review first?
The specification’s project layout and expected logging format.
Did the agent flash the hardware autonomously?
No. The owner opened Arduino IDE, built, and uploaded the sketch.
More details
About this account
The owner reviewed Gemini’s specification and corrected project layout and serial-output expectations. Gemini CLI read GEMINI.md and created the sketch after permission for local operations.
Original Japanese task prompt preserved verbatim. Firsthand physical experiment; author review and upload are explicit. Small timer example, not evidence of production firmware qualification. Original prompt excerpt.
Credit: hotch-potch — Personal blog
Source published 14 Oct 2025
Source checked 14 Oct 2026
Tools and topics
Gemini CLI · Teensy 4.0 · Arduino IDE · VS Code
firmware · specifications · timer interrupts
Editorial completeness: 100/100. Measures documented fields, not agent performance or verified outcomes.