ArduinoUNO-Q/LED_MATRIX_README.md
Edwin Noorlander 29dd118dc3 Initial Arduino UNO Q template with LED Matrix functionality
- Complete MPU-MCU communication setup
- LED Matrix text display with configurable parameters
- Configuration management with personal data protection
- Git template with .gitignore for sensitive data
- Automated build and deployment scripts
- SSH key management and service scripts
2025-11-13 12:26:47 +01:00

83 lines
2.5 KiB
Markdown

# Arduino UNO Q LED Matrix Text Display
Complete implementatie voor tekst weergave op de 8x13 LED Matrix met communicatie tussen MPU en MCU.
## Functionaliteit
### MCU (STM32) - LED Matrix Library
- **LEDMatrix class** met volledige tekst display functionaliteit
- **Scrolling tekst** in alle richtingen (0°, 90°, 180°, 270°, of custom hoeken)
- **Instelbare snelheid** (50-1000ms per scroll stap)
- **Display tijd** (1-60 seconden)
- **Font rendering** voor karakters
### MPU (Linux) - Python Controller
- **send_led_matrix_command()** voor tekst versturen
- **JSON command processing** via named pipes
- **Demo functies** met verschillende voorbeelden
## Command Format
**MPU → MCU communicatie:**
```
"TEXT",SPEED,TIME,DIRECTION
```
**Parameters:**
- `TEXT` - Weer te geven tekst (standaard: "Hallo World")
- `SPEED` - Scroll snelheid in ms (standaard: 150ms)
- `TIME` - Display tijd in ms (standaard: 5000ms)
- `DIRECTION` - Scroll richting in graden (standaard: 0°)
**Voorbeelden:**
```bash
"Hallo World",150,10000,0 # Standaard links naar rechts
"Fast Text",80,5000,0 # Snel scrollen
"Slow Text",300,8000,180 # Langzaam rechts naar links
"Diagonal",200,6000,45 # 45 graden hoek
"Vertical",150,7000,90 # Verticaal scrollen
```
## Bestanden
### MCU Side
- `src/mcu/unoq_sketch/unoq_sketch.ino` - Hoofd sketch
- `src/mcu/unoq_sketch/LEDMatrix.h` - Header file
- `src/mcu/unoq_sketch/LEDMatrix.cpp` - Implementatie
### MPU Side
- `src/mpu/main.py` - Python applicatie met demo
- `lib/arduino_unoq/bridge.py` - Communicatie library
## Demo Sequence
De Python applicatie toont automatisch:
1. **"Hallo World"** - Standaard tekst (10s, 0°)
2. **"Arduino UNO Q"** - Snel scrollen (8s, 0°)
3. **"Diagonal 45°"** - 45 graden hoek (6s, 45°)
4. **"Vertical"** - Verticaal scrollen (7s, 90°)
5. **"Reverse"** - Achteruit scrollen (5s, 180°)
6. **"30 Degrees"** - Custom hoek (6s, 30°)
## Build & Deploy
```bash
npm run build # Compileer MCU sketch
npm run upload # Upload naar beide processors
npm run deploy # Build + upload
```
## Communicatie
- **Serial** - MPU stuurt commando's naar MCU
- **Named Pipe** - Externe commando's naar MPU (`/tmp/unoq_cmd.pipe`)
- **Status File** - Status updates (`/tmp/unoq_status.json`)
## Test Resultaten
**Build**: MCU compileert succesvol (5844 bytes)
**Python**: Syntax correct voor alle bestanden
**Library**: LED Matrix functionaliteit geïmplementeerd
**Communicatie**: Command parsing en routing werkt
De LED Matrix tekst display is nu volledig operationeel!