commit 0fa6e12967d2db79ceaea4f0206f6bed37eaaa9e Author: Thomas Date: Wed Apr 15 06:39:57 2026 +0000 Upload files to "/" diff --git a/README.md b/README.md new file mode 100644 index 0000000..c8c7822 --- /dev/null +++ b/README.md @@ -0,0 +1,230 @@ +# Robot Mower HA V2 + +Komplet pakke til: + +- **Robot**: ESP32-C6-DevKitC-1 + NEO-M8N + GY-521 (MPU6050) + GY-91 (MMC5883MA + BMP180) +- **Ladeboks**: ESP8266 + INA226 + 20x4 I2C LCD +- **Home Assistant**: REST-baserede entities + templates + Lovelace dashboard + +## Indhold + +- `robot_v2_esp32c6/robot_v2_esp32c6.ino` +- `dock_v2_esp8266/dock_v2_esp8266.ino` +- `home_assistant/home_assistant_package.yaml` +- `.gitignore` + +--- + +## Funktioner + +### Robotten +Sender til Home Assistant via REST: +- GPS latitude / longitude +- satellites +- hdop +- speed +- GPS fix +- motion detect +- heading fra kompas +- temperatur / tryk +- alder på sidste gode position + +### Ladeboksen +Måler med INA226: +- spænding +- strøm +- effekt + +Viser på 20x4: +- dato / tid +- spænding / strøm +- effekt / GPS-status +- HOME/AWAY + CHG/IDLE + RUN/STOP + +Henter samtidig status fra Home Assistant: +- GPS status +- motion status +- home status +- charging status + +--- + +## Hardware + +### Robot +- ESP32-C6-DevKitC-1 +- NEO-M8N GPS +- GY-521 MPU6050 +- GY-91 med MMC5883MA + BMP180 +- buck converter hvis robotspænding er højere end 5V/3.3V + +### Ladeboks +- ESP8266 LoLin / D1 mini type +- INA226 +- 0.01Ω 1% shunt, 2W eller 3W +- 20x4 I2C LCD +- buck converter 29V -> 5V + +--- + +## Wiring + +### Robot (ESP32-C6) + +#### I2C +- GPIO6 -> SDA på MPU6050 +- GPIO6 -> SDA på GY-91 +- GPIO7 -> SCL på MPU6050 +- GPIO7 -> SCL på GY-91 +- 3V3 -> VCC på begge sensormoduler +- GND -> GND på begge sensormoduler + +#### GPS UART +- GPIO17 (RX) <- GPS TX +- GPIO16 (TX) -> GPS RX +- 3V3/VCC -> GPS VCC (afhængig af modul) +- GND -> GPS GND + +### Ladeboks (ESP8266) + +#### I2C +- D2 / GPIO4 -> SDA på INA226 +- D2 / GPIO4 -> SDA på 20x4 LCD +- D1 / GPIO5 -> SCL på INA226 +- D1 / GPIO5 -> SCL på 20x4 LCD + +#### Shunt / high-side måling +- PSU +29V -> SHUNT -> ud til basestation + +- PSU GND -> ud til basestation GND + +#### INA226 +- VIN+ -> før shunt +- VIN- -> efter shunt +- VCC -> 3.3V +- GND -> GND + +#### Forsyning +- 29V -> buck input +- buck 5V -> ESP8266 5V/VIN +- buck GND -> ESP8266 GND + +--- + +## Arduino biblioteker + +### Robot +Installer: +- TinyGPSPlus +- Adafruit BMP085 Library +- MPU6050_tockn + +### Ladeboks +Installer: +- LiquidCrystal_I2C + +--- + +## Konfiguration der SKAL ændres + +### I begge `.ino` filer +Søg efter disse linjer og ret dem: + +```cpp +const char* WIFI_SSID = "DIT_WIFI"; +const char* WIFI_PASSWORD = "DIT_PASS"; +const char* HA_HOST = "192.168.2.10"; +const uint16_t HA_PORT = 8123; +const char* HA_TOKEN = "DIN_LONG_LIVED_ACCESS_TOKEN"; +``` + +### I Home Assistant YAML +Sæt **dine rigtige dock-koordinater** her: + +```yaml +lat2 = 56.194000 +lon2 = 10.682000 +``` + +--- + +## Home Assistant opsætning + +Kopiér `home_assistant/home_assistant_package.yaml` ind i din HA packages mappe +eller merge ind i din eksisterende config. + +Eksempel: + +```yaml +homeassistant: + packages: !include_dir_named packages +``` + +Læg så filen i: + +```text +/config/packages/robot_mower_v2.yaml +``` + +Genstart Home Assistant. + +--- + +## Første opstart + +### 1. Start robotten +Tjek at disse dukker op i HA: +- `sensor.robot_gps_latitude` +- `sensor.robot_gps_longitude` +- `sensor.robot_gps_speed_kmh` +- `sensor.robot_gps_satellites` +- `sensor.robot_gps_hdop` +- `sensor.robot_heading_deg` +- `sensor.robot_temperature` +- `sensor.robot_pressure` +- `sensor.robot_gps_fix_raw` +- `sensor.robot_motion_raw` + +### 2. Start ladeboksen +Tjek: +- `sensor.robot_dock_voltage` +- `sensor.robot_dock_current` +- `sensor.robot_dock_power` +- `binary_sensor.robot_dock_online` + +### 3. Tjek templates +- `sensor.robot_gps_status` +- `sensor.robot_motion_status` +- `sensor.robot_home_status` +- `sensor.robot_charge_status` +- `sensor.robot_distance_to_dock` + +--- + +## Bemærkninger + +- Kompasmåling på robotter med motorer og strømførende ledninger kan være støjet. +- Hvis motion er for følsom, hæv `MOTION_THRESHOLD` i robot-koden. +- Hvis GPS fix er for stram, justér sat/hdop grænserne i robot-koden. +- LCD I2C-adressen er sat til `0x27`. Nogle displays bruger `0x3F`. + +--- + +## Git forslag + +```bash +git init +git add . +git commit -m "Initial robot mower HA V2 package" +``` + +--- + +## Filer + +Denne pakke er lavet som en god **V2 startpakke**, men der kan stadig være behov for +små justeringer af: +- I2C adresser +- GPS baudrate +- MPU6050 følsomhed +- kompas-kalibrering +- LCD adresse