116 lines
4.3 KiB
Markdown
116 lines
4.3 KiB
Markdown
# ToGo-Lab FireFly Morse Blinker
|
||
|
||
**DIY kit**: ATtiny-based Morse blinker. Through-hole. No mains. Simple on purpose.
|
||
**Default license**: [CC-BY-NC-4.0](https://creativecommons.org/licenses/by-nc/4.0/)
|
||
|
||
---
|
||
|
||
## Intro
|
||
|
||
This is my “Hello World” hardware project on the new ToGo-Lab server.
|
||
|
||
Years ago I built a tiny Morse throwie: ATtiny + one LED + one resistor, plus firmware. This version adds a supercapacitor and small solar cells. It uses the LED as a light detector, so it only blinks in the dark.
|
||
|
||
It's not a throwie anymore. Hang it anywhere with decent light (for charging) and dry conditions and let it blink Morse on its own during night.
|
||
|
||
Goal: a beginner-friendly DIY kit with clear docs and hackable firmware.
|
||
|
||
Checkout also the [blog about this project](https://https://togo-lab.io/?p=82).
|
||
ToGo-Lab Cloud [link](https://nextcloud.togo-lab.io/index.php/f/1176), actual internal link only.
|
||
Suggestions welcome. Open an issue or email [tgohle@togo-lab.io](mailto:tgohle@togo-lab.io).
|
||
|
||
---
|
||
|
||
## Repo layout
|
||
```
|
||
├── doc
|
||
│ ├── assets // pictures, diagrams..
|
||
│ └── logs // lab logs
|
||
├── firmware
|
||
│ ├── archive // archive, derived from...
|
||
│ │ └── ATTINY45_2014_MorseThrowie
|
||
│ │ ├── ATTINY45_2014_MorseThrowie.ino
|
||
│ │ └── pitches.h
|
||
│ ├── include
|
||
│ ├── FireFly_MorseBlinker // arduino IDE file
|
||
│ └── src
|
||
├── hardware
|
||
│ ├── CAD // CAD files for mechanical work
|
||
│ │ └── ToGo-Lab_FireFly_MorseThrowie.dxf
|
||
│ └── KiCad // KiCad project files
|
||
│ └── 0001-FireFly
|
||
│ ├── 0001-FireFly-backups
|
||
│ │ ├── 0001-FireFly-2025-09-07_180819.zip
|
||
│ │ └── 0001-FireFly-2025-09-07_181506.zip
|
||
│ ├── 0001-FireFly.kicad_pcb
|
||
│ ├── 0001-FireFly.kicad_prl
|
||
│ ├── 0001-FireFly.kicad_pro
|
||
│ └── 0001-FireFly.kicad_sch
|
||
├── License_-_CC_BY-NC_4.0.md
|
||
└── README.md
|
||
```
|
||
|
||
---
|
||
|
||
## Hardware
|
||
- **MCU**: ATtiny45/85 (internal RC clock, no crystal).
|
||
- **I/O**: 1× LED + series resistor. Unused pins broken out to breadboard-style pads.
|
||
- **Burning Attiny**: external ISP programmer via Arduino IDE; PDIP-8 ATtiny45/85 footprint.
|
||
- **Power**: 3V DC (coin cell & & solar cell + supercapacitor with Schottky diodes to extend battery power).
|
||
- **Safety**: low voltage only. Observe polarity.
|
||
- **PCB**: hackable; access to unused ATtiny pins. (big pads for beginners, clear silks, LED polarity marks)
|
||
|
||
---
|
||
|
||
## Firmware / Arduino IDE
|
||
- Follow `Documentation/ToGo-Lab_FireFly_ArduinoIDE_Program_Guide.md`.
|
||
- Board core: any stable ATtiny45/85 core.
|
||
- Clock: **internal**. No fuse change required for first tests.
|
||
- Programmer: USBasp / AVRISPmkII / Arduino-as-ISP.
|
||
- Open the sketch in `0001_FireFly/Program/`.
|
||
|
||
---
|
||
|
||
## Assembly
|
||
- Follow `Documentation/ToGo-Lab_FireFly_Assembly_Guide.md`.
|
||
- First power-up: LED should blink test pattern. If not, recheck polarity and bridges.
|
||
|
||
---
|
||
|
||
## Test / Bring-up
|
||
1. Visual check; no shorts.
|
||
2. Power at 3–5 V. Current < 10 mA idle.
|
||
3. Program firmware over ISP.
|
||
4. Verify Morse timing; adjust WPM in `config.h` if needed.
|
||
5. Optional: measure current.
|
||
|
||
---
|
||
|
||
## BOM
|
||
- Follow `Documentation/ToGo-Lab_FireFly_BOM.csv` as source of truth.
|
||
|
||
---
|
||
|
||
## Files to fabricate
|
||
- Gerbers and drill files from `KiCad/fab/` (board house-ready).
|
||
- Project file: `0001_FireFly/KiCad/ToGo-Lab_FireFly.kicad_pro`.
|
||
|
||
---
|
||
|
||
## Known constraints
|
||
- Through-hole only. No reflow.
|
||
- Minimal I/O to keep it beginner-friendly.
|
||
- Low power is nice but optional; optimize after the basic release.
|
||
|
||
---
|
||
|
||
## Roadmap (tech only)
|
||
- v0.1-proto: breadboard + first PCB, single message, speed presets.
|
||
- v1.0: build guide, BOM with alternates, pilot 10 units.
|
||
- v1.1: docs polish, optional brightness setting, minor PCB tweaks.
|
||
|
||
---
|
||
|
||
## Contributing
|
||
PRs and issues welcome. Keep it simple.
|
||
Photos of your build you send me go in `Documentation/gallery/` with a short caption and license notice. |