ATtiny85 MCU - some tests and example apps + I2C and LCD libraries
LED blink firmware putting the MCU into power-down state between the LED changes.
A simple demonstration of PWM LED charlieplexing.
MQ6 readout and a progress bar on a LCD.
MQ6 readout and a progress bar on a LCD.
A simple circuit making different noises at random intervals when left in the dark. The sounds/noises are:
snd/snd_cricket.c
- cricket chirpsnd/snd_droplet.c
- leaking faucetsnd/snd_insect.c
- buzzing insectsnd/snd_scifi.c
- sci-fi/robot soundssnd/snd_water.c
- running watersnd/snd_whisper.c
- scary whispers
Connections are simple:
- PB1/PB4 - piezo buzzer
- PB2 - LDR (light-dependent resistor) to VCC and a 10k resistor to GND
Simple Geiger Counter based on ATtinyx5 MCU. This is more of a Geiger alarm. Tracks the radiation dose internally, but only signals two alarm levels on a two-color LED and produces sound clicks if the alarm level is breached. It's also designed to be very low-power (battery life test ongoing). No schematic yet, but here is a block diagram and a veroboard-style PCB (made with VeroRoute).
The BJT transistor can also be MPSA42. The buzzer MOSFET should preferably logic level.
The firmware is designed as a simple and lightweight cooperative scheduler maintaining in every state the lowest power level possible:
cmake -DCMAKE_BUILD_TYPE=Release -DAVR_MCU=attiny85 \
-DAVR_PROGRAMMER=avrisp -DAVR_PROGRAMMER_PORT=/dev/ttyACM0 \
-DMCU_FREQ=8000000 -DCMAKE_TOOLCHAIN_FILE=../toolchain-avr-gcc.make ..
make -j
If you have questions, contact Mariusz Ryndzionek at: