Toon posts:

Ramses II 868MHz communicatie via evofw3 en ramses_rf

Pagina: 1
Acties:

  • vliegnerd
  • Registratie: Augustus 2003
  • Laatst online: 09:21
Veel verwarming en ventilatie systemen gebruiken het Honeywell Ramses II protocol dat op 868 MHz berichten verstuurt en ontvangt.

Dit protocol wordt o.a. door Honeywell Evohome, Itho Daalderop (WTW, spider thermostaten) en Orcon (WTW) gebruikt.

Met behulp van DIY hardware kunnen deze berichten ontvangen en verstuurd worden.

Voor communicatie/besturing is de HGI80 gateway op de markt gebracht. Deze is helaas slecht verkrijgbaar. De HGI80 is een RF naar USB bridge. De HGI80 ontvangt de 868 MHz RF berichten en schrijft ze op de USB seriële poort:

code:
1
---  I --- 37:17xxxx 32:13xxxx --:------ 22F1 003 000107  # RF15 zet Orcon WTW op stand 1


Deze HGI80 gateway kan vervangen worden door een kloon. Meestal een arduino met CC1101 chip.
De software die op deze kloon draait is evofw3: https://github.com/ghoti57/evofw3

Om berichten te ontvangen, te decoderen en te verzenden kan ramses_rf gebruikt worden: https://github.com/zxdavb/ramses_rf
De maker van ramses_rf heeft ook een custom component voor de integratie in Home Assistant ontwikkeld: ramses_cc: https://github.com/zxdavb/ramses_cc

Deze combinaties worden hier al door verschillende tweakers gebruikt. De berichten staan in verschillende topics, vaak bij het apparaat dat gemonitord of bestuurd wordt. Hier kunnen we alle ervaringen/tips delen.

4,8kW ZO-NW PVOutput 8x300Wp ZO 12 graden. 8x300Wp NW 12 graden.


  • vliegnerd
  • Registratie: Augustus 2003
  • Laatst online: 09:21
Ik gebruik een nanocul v2 voor evofw3:
https://www.smart-home-ko...o-cul/nano-cul-868-extra/

Dit is een Arduino Nano (atmega328 5,5V). Niet de meest geschikte hardware. Maar ik kan helaas geen andere/betere vinden. Ik heb zelf geprobeerd om een CC1101 aan een Arduino Micro (atmega 32u4) te solderen, maar dat is mijn nog niet werkend gelukt. :-(

Omdat het mij niet zomaar lukt om de juiste software op de nanocul te flashen, hier mijn stappen plan om de nanocul eerst van de Arduino bootloader te voorzien en daarna te flashen met evofw3.

Het niet werkende deel:
Evofw3 downloaden van: https://github.com/ghoti57/evofw3/
Volg vooral de uitleg om boards.txt aan te passen uit de README.

Nanocul flashen kan volgens deze uitleg: https://github.com/ghoti57/evofw3/issues/22
Via HTerm en de DFU tool een .hex van evofw3 proberen te flashen: https://www.smarthome-age...cul-stick-testen-debugen/
(Dit ging allemaal niet soepel, een stappenplan ontbreekt hier, want het lukte mij niet)

Resultaat: Een "gebrickte" nanocul. De originele CUL bootloader was niet meer te bereiken. Ook in de Arduino IDE niet bereikbaar. Ook via de "reset 2x indrukken" truc geen bootloader meer te flashen.

Oplossing:

Een USBtinyISP programmer aangesloten op de ISP header van de nanocul. (Dit kan ook met een Arduino UNO als Arduino ISP, maar het lukte mij niet om dit voor elkaar te krijgen).

De USBtinyISP kun je voor 5 euro op Ali kopen. Ik heb een officiele van Adafruit.

In de 3x2 connector heb ik tweestuks pin headers geprikt, zodat de "female" connector een "male" connector wordt.


De connector met uitstekende pinnen kun je met de hand op de ISP header (rode vak in figuur hierboven) van de nanocul drukken. (Nokje van connector van de arduinochip af wijzend, omhoog in de figuur).
Ik moest wel met een stanleymes de heat-shrink tube voorzichtig wegsnijden. Voor de zekerheid een strookje papier onder de ISP header geschoven om kortsluiting op de printplaat eronder te voorkomen. Dat is waarschijnlijk niet nodig.

Op de USBtinyISP de jumper JP3 verbinden, zodat de arduino nano 5V krijgt van de programmer.

Nu in de Arduino IDE "Arduino Nano" als target board (dus niet het evofw3 custom board) en "USBtinyISP" als programmer kiezen en de Nano bootloader flashen.
De Nano is nu "unbricked" en ik kon de nano in een usbpoort prikken en evofw3 flashen.

Ik heb de volgende instellingen gebruikt:
(Dit kan alleen als boards.txt is ingeladen)
code:
1
2
3
4
5
Board: "atmega328p (SW UART)"
Processor: "atmega328p (5V, 16 MHz)"
Pinout: "Nano"
Host: "115200"
Bootloader: "Standard Bootloader"


Na flashen is de arduino bootloader verdwenen, je kunt alleen opnieuw flashen door de nanocul weer aan de ISP programmer te hangen en de bootloader opnieuw te installeren. Er is nu "gewoon" een arduino bootloader aanwezig: Je kunt evofw3 opnieuw vanuit de Arduino IDE flashen.

Na het flashen is waarschijnlijk nanoculs autotune nodig: https://github.com/ghoti57/evofw3/wiki/EVOFW3-Autotune
De frequentie van de CC1101 zender/ontvanger is afhankelijk van de preciesie van het 26.000 MHz kristal op de CC1101 module. Helaas is die meestal niet precies genoeg. Met autotune probeert de evofw3 software de frequentie iets bij te stellen zodat de ontvangst wat verbeterd wordt.

Het commando
!FT
start het autotunen.
Tussendoor kun je met !F de status opvragen, zo vaak je wil.
Na afloop kun je met !FS de nieuwe frequentie opslaan.

[Voor 110% gewijzigd door vliegnerd op 26-12-2022 08:49]

4,8kW ZO-NW PVOutput 8x300Wp ZO 12 graden. 8x300Wp NW 12 graden.


  • maleadt
  • Registratie: Januari 2006
  • Laatst online: 02-02 14:34
Het is mij ook gelukt om evofw3 op een nanoCUL te flashen, dus ik documenteer het hier even. :)

Mijn nanoCUL komt van https://schlauhaus.biz/en/product/nanocul-868/, bevat dus een ATMEGA328P (en geen 32u4 zoals in https://github.com/ghoti57/evofw3/issues/22 te lezen valt). Hierbij heb ik voor de culfw gekozen ("V 1.67 nanoCUL868", zoals ik kon uitlezen door "V" te sturen over serial terminal). Net zoals vliegnerd hierboven heb ik de evofw3 sources gecompileerd met de Arduino IDE (met evofw3 board definitions ingeladen), met dezelfde settings (board "atmega328p (SW UART)", processor "atmega328p (5V, 16 MHz)", pinout "Nano", maar baudrate 115200). Omdat ik dfu-programmer niet in gang kreeg (op macOS werd geen device gedetecteerd, op Windows vond ik de drivers niet) heb ik dan maar gewoon avrdude gebruikt, want dat werkt blijkbaar gewoon:

code:
1
avrdude -p atmega328p -c arduino -P /dev/serial/by-id/usb-... -b 57600 -D -Uflash:w:./evofw3.ino.hex


In tegenstelling tot vliegnerd heeft mijn device dit wel overleefd :) Als ik een seriële terminal opstart, krijg ik na `!V` te sturen mooi `# evofw3 0.7.1` te zien. Momenteel aan het autotunen, dus hopelijk werkt alles (het kan nog zijn dat de pinout niet overeenkomt natuurlijk).

Ik had eigenlijk al een werkende Arduino Micro met CC11010 en evofw3 verbonden met ramses_rf, maar kon er enkel berichten mee ontvangen, niet verzenden. Vandaar dat ik het eens uitprobeer met een nanoCUL. Als dat ook niet lukt zal het waarschijnlijk een FanX worden, als die weer op voorraad is.

EDIT: en na het tunen kan ik met HA successvol commands versturen, en eindelijk de ventilatie (beter dan met een relais) sturen :)

[Voor 4% gewijzigd door maleadt op 15-01-2023 22:34]



Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee