A custom walkie-talkie built on a bare STM32F411RET6 microcontroller and SX1278 LoRa radio module, designed from scratch in KiCad with a fully custom PCB.
I made this STM32 Walkie Talkie to learn about STM32 since i have never worked with The ST chips and LoRa hence i though of it as a good opportunity for me to learn about these and make a good project out of it too. Also it gives me a chance to perfect wireless radio skills.
| Component | Part | Purpose |
|---|---|---|
| MCU | STM32F411RET6 (LQFP-64) | Main processor |
| LoRa radio | Ra-02 (SX1278, 433 MHz) | Wireless communication |
| Mic amp | MAX9814 | Electret microphone amplifier with AGC |
| Speaker amp | MAX98357A | I2S class-D speaker amplifier |
| Display | Nokia 5110 (PCD8544) | Status display |
| LDO | MIC5219-3.3 | 3.3V regulation |
| Charger | TP4056 | Li-Ion battery charging |
| Protection | DW01A + AO3401A + FS8205 | Battery over/under voltage protection and Load sharing |
| Battery | 18650 Li-Ion (2500mAh) | Power source |
- Push-to-talk (PTT) voice transmission over LoRa
- Nokia 5110 display showing TX/RX status, RSSI, battery %, charging state
- LED indicators for TX and RX
- PWM buzzer with distinct tones for PTT, incoming call, low battery, charging complete etc
- Battery percentage via voltage divider on ADC
- Load sharing circuit — runs on USB power while charging battery
- TP4056 charging status readable by firmware
- SWD debug header for ST-Link V2 programming
- When USB is connected the system runs off USB directly and the battery charges independently. When USB is removed the load sharing circuit seamlessly switches to battery power.
System clock: 96 MHz via PLL from HSE 8 MHz** Firmware not tested yet