Skip to content
rspaargaren edited this page Sep 24, 2025 · 5 revisions

☕ Steun het project op BuyMeACoffee

IO-Homecontrol ESP32 Project – Help & Getting Started

Welkom bij het IO-Homecontrol ESP32 project!
Dit project maakt het mogelijk om Somfy IO screens, rolluiken en jaloezieën te bedienen via een ESP32 in combinatie met een SX1276 LoRa-module. Integratie met Home Assistant is mogelijk via MQTT.

Deze pagina bundelt ervaringen en tips vanuit de community (Discord/GitHub), zodat je snel kunt starten.


🚀 Snelle Start (Quick Start)

  1. Hardware: gebruik een ESP32 met SX1276 (868 MHz), bijv. Heltec WiFi LoRa V2, LilyGo T3 V1.6.1 of Heltec Wireless Bridge.
  2. Firmware flashen: clone de repo en upload via PlatformIO.
    git clone https://github.com/rspaargaren/iohomecontrol
    In PlatformIO: Build → Upload. In PlatformIO: Build file system & upload
  3. WiFi & Web: verbind met je WiFi en open het IP van de ESP32 in je browser.
  4. Koppelen: voeg een device toe, zet je screen in pair mode en voeg deze bij device settings toe.

1. Ondersteunde Hardware

Het project werkt alleen met ESP32 boards met SX1276 LoRa chip.
❌ Niet ondersteund: SX1262 (zoals Heltec V3), RFXcom 433 MHz modules.

Aanbevolen boards

  • Heltec WiFi LoRa V2 (SX1276, 868 MHz)
  • LilyGo LoRa32 T3 V1.6.1 (SX1276)
  • Heltec Wireless Bridge (SX1276, WiFi/Bluetooth/LoRa)
  • Alternatief: ESP32 + losse SX1276 module

⚠️ Let op: kies altijd de 868 MHz variant (in Europa gangbaar).


2. Benodigdheden

  • ESP32 board met SX1276
  • USB-kabel (USB-C of micro-USB, afhankelijk van board)
  • Computer met:
  • Stabiele WiFi
  • Optioneel: 3D-geprinte behuizing (voorbeeld case)

3. Installatie

  1. Download de repository
    git clone https://github.com/rspaargaren/iohomecontrol
  2. Open het project in VS Code (PlatformIO)
  3. Controleer platformio.ini (juiste boardselectie)
  4. Flash de firmware naar het board
    • PlatformIO: Build → Upload
  5. Flash de filesystem naar het board
    • PlatformIO: Build filesystem -> upload filesystem
  6. Voer WiFi-configuratie in via de webinterface (na eerste opstart)

4. Webinterface

Na het verbinden met je WiFi kun je via het IP-adres van de ESP32 de webinterface openen.

Mogelijkheden

  • Devices (screens/rolluiken) toevoegen, bewerken, verwijderen
  • Screens koppelen/ontkoppelen (LINK/UNLINK)
  • Remotes (afstandsbedieningen) toevoegen en aan devices linken (WIP)
  • MQTT-instellingen configureren
  • Backup/Restore van configuratie (JSON)

Beperkingen

  • HTTPS niet ondersteund (te zwaar voor ESP32)
  • Geen login (ontworpen voor LAN-gebruik)

Tip: Plaats het device in een gesloten IoT-VLAN en beperk toegang via je router/firewall.


5. Screens koppelen

  1. Voeg een nieuw device toe in de webinterface.
  2. Zet je screen in pair mode met de fysieke afstandsbediening (klein knopje achterop; screen beweegt kort op/neer).
  3. Voer in de terminal of webinterface het commando uit:
    add XXXX
    waarbij XXXX het ID is dat de ESP32 detecteert.
  4. Klaar – de screen is gekoppeld.

6. Afstandsbediening koppelen (Remote)

Het koppelen van remotes zorgt ervoor dat statuswijzigingen door handbediening ook in Home Assistant zichtbaar worden.

Stappen

  1. Druk op knoppen van de fysieke remote zodat het ID wordt gedetecteerd.
  2. Voeg de remote toe in de webinterface.
  3. Open het tandwiel bij de remote, kies een device en klik LINK.

⚠️ De remotes-UI is WIP. Er kunnen (tijdelijk) bugs zijn bij opslaan/verwijderen of bij het tonen van de device select-lijst.


7. MQTT & Home Assistant

Instellen MQTT

  1. Vul Broker IP, Username en Password in via de webinterface.
  2. Standaardpoort: 1883.
  3. Controleer in je broker-logs (bijv. Mosquitto in Home Assistant) of authenticatie slaagt.

Bekende punten

  • Power cycle-persist: sinds de WIP (aug/sept 2025) blijft de MQTT-username/password bewaard na herstart.
  • WiFi-connect bij eerste boot: in sommige gevallen verbindt de ESP32 pas na een reset; recente WIP-builds verbeteren dit.
  • Status/position reporting: Bij bediening via fysieke remote kan HA de nieuwe positie niet altijd direct zien; koppelen van de remote helpt.

Bewegingsduur (state “opening/closing”)

  • Stel per device de bewegingstijd in (open/close in seconden) via het tandwiel in de webinterface.
  • Zo kan HA correcte tussen-statussen tonen i.p.v. direct “open/closed”.

8. Bekende bugs & WIP

  • MQTT reconnect: grotendeels verbeterd in WIP (aug/sept 2025).
  • Remote beheer: toevoegen/verwijderen en device select soms buggy.
  • State weergave: HA kan te snel “open” tonen; gebruik handmatige timing per device.
  • Security: geen HTTPS/login (bewuste keuze voor lokaal beheer).

9. Troubleshooting & Tips

  • Bootloop na flash → herflash (re-image) en voer WiFi-instellingen opnieuw in.
  • Display / pinout issues → controleren of je board-variant (Heltec/LilyGo) overeenkomt met de geconfigureerde pinnen.
  • MQTT flapping (connect/disconnect) → user/password opnieuw opslaan; controleer broker-ACL’s en netwerk/VLAN.
  • Backup config voordat je firmware wijzigt: download JSON via de webinterface.
  • Solar screens: deze fork werkt ook met solar-powered screens (betere timing dan originele repo).

10. Community & Support


11. Veelgestelde Vragen (FAQ)

Q: Werkt Heltec V3?
A: Nee, V3 gebruikt vaak SX1262 → niet ondersteund.

Q: Kan ik HTTPS of login toevoegen?
A: Nee, ESP32 is daar niet krachtig genoeg voor. Gebruik netwerkbeveiliging (bijv. IoT VLAN).

Q: Kan ik meerdere screens tegelijk aansturen?
A: Ja, via Home Assistant automatiseringen en MQTT. Zorg wel dat de timing per screen correct is ingesteld.

Q: Moet ik altijd fysiek bij de screens kunnen?
A: Nee, je kunt ze ook koppelen via de afstandsbediening.


👉 Deze pagina is een levende handleiding – heb je aanvullingen of verbeteringen? Voeg ze toe via een PR of issue!