Files
hytte_link/CLAUDE.md
T
steinhelge a544594769 Initial project: XIAO ESP32S3 + SX1262 LoRa sensor link hytte–hjem
- cabin_node: subscribes to local MQTT (ESPHome sensors), sends
  temperature, battery voltage/SOC and switch states over LoRa SF12
- cabin_gw: receives LoRa packets, publishes JSON to home MQTT broker
- Bidirectional: gateway forwards ON/OFF commands from home HA to node
- cabin_node always in RX mode (12V powered) — commands arrive instantly
- ESPHome config for ESP32 on teknisk rom: Victron MPPT BLE + JBD BMS
  BLE + DS18B20 temperatures + GPIO switches for varme/VVB

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-10 23:11:35 +01:00

2.5 KiB
Raw Blame History

hytte_link

LoRa-basert sensorlink mellom hytte og hjemme. Sender temperatur (inne/ute), batterispenning og SOC fra 12V-anlegg på hytta til MQTT-broker hjemme (alu).

Arkitektur

Hytte:
  DS18B20 (inne/ute) ──┐
  Victron MPPT (BLE) ──┤
  JBD BMS (BLE) ────── ESP32 (ESPHome, cabin_tech) ──WiFi──► MQTT (lokal HA)
                                                               │
                        XIAO ESP32S3 + Wio-SX1262 ◄──MQTT────┘
                          (cabin_node)
                              │ LoRa SF12 868 MHz
                              ▼ 1520 km
Hjemme:               XIAO ESP32S3 + Wio-SX1262
                          (cabin_gw)
                              │ MQTT publish
                              ▼
                        mosquitto (alu, 192.168.86.31)
                              │
                        Home Assistant hjemme

Bygging (PlatformIO)

pio run -e cabin_node              # hytte-node
pio run -e cabin_gw                # hjemme-gateway
pio run -e cabin_node -t upload
pio run -e cabin_gw -t upload

ESPHome (cabin_tech)

esphome run esphome/cabin_tech.yaml

Secrets

Kopier include/secrets.example.hinclude/secrets.h og fyll inn. Kopier esphome/secrets.yaml.exampleesphome/secrets.yaml og fyll inn.

LoRa-parametere

Parameter Verdi
Frekvens 868 MHz
SF 12
BW 125 kHz
CR 4/5
Sync word 0xAB
Airtime ~1.3 s

Pakkeformat (CabinPacket, 12 bytes)

Felt Type Enhet
magic uint8 0xCA
seq uint8 rullende
temp_in_x10 int16 °C × 10
temp_out_x10 int16 °C × 10
batt_mv uint16 mV
batt_pct uint8 0100
sig uint32 HMAC-SHA256 (trunkert)

Pinner (Wio-SX1262 på XIAO ESP32S3)

Verifiser mot Seeed-skjema før flashing:

  • NSS: GPIO44 (D7)
  • RST: GPIO43 (D6)
  • DIO1: GPIO2 (D1)
  • BUSY: GPIO1 (D0)

MQTT-topics

Topic Retning
hytte/sensor/temp_inne ESPHome → cabin_node
hytte/sensor/temp_ute ESPHome → cabin_node
hytte/sensor/batt_mv ESPHome → cabin_node
hytte/sensor/batt_pct ESPHome → cabin_node
hytte/lora/status cabin_gw → alu