A two-part project: a Digispark ATtiny85 USB device that auto-types a command on plug-in, and a Python HTTP receiver that catches the message and displays it in a styled terminal panel.
digispark_rc/
├── receiver.py # Python HTTP server (Rich UI)
├── requirements.txt # Python dependencies
├── digispark_sketch/
│ └── digispark_sketch.ino # Arduino sketch for Digispark
└── README.md
# Create and activate a virtual environment
python -m venv venv
venv\Scripts\activate # Windows
# Install dependencies
pip install -r requirements.txt
# Start the receiver
python receiver.pyThe server listens on port 8080 by default.
- Open
digispark_sketch/digispark_sketch.inoin the Arduino IDE. - Install the Digistump AVR Boards package via Board Manager.
- Edit the configuration at the top of the sketch:
RECEIVER_IP— IP address of the machine runningreceiver.pyRECEIVER_PORT— Port (default8080)MESSAGE— The text you want to appear on the receiver
- Select Digispark (Default — 16.5 MHz) as the board.
- Click Upload, then plug in the Digispark when prompted.
- Plug the Digispark into a Windows machine.
- It emulates a keyboard and types a PowerShell one-liner that sends an HTTP GET request to the receiver.
- The Python receiver catches the request and displays the message in a Rich-styled terminal panel.