HM-Dis-TD-T - mechanische Post-Anzeige mit Homematic

Entwicklung und Bau von Hardware aller Art, die im HM-Umfeld eingesetzt werden kann

Moderator: Co-Administratoren

Antworten
mar-fish
Beiträge: 10
Registriert: 06.03.2018, 08:37

HM-Dis-TD-T - mechanische Post-Anzeige mit Homematic

Beitrag von mar-fish » 07.10.2018, 15:27

Hallo Zusammen,

ich bin vor kurzem auf die Homematic-Selbstbau-Möglichkeiten aufmerksam geworden. Arduino etc. ist mir nicht fremd, jedoch ist mir die objektorientierten Struktur der AskSinPP-Lib noch sehr verschlossen :D . Das "einfache" verwenden der Beispiele klapp gut.

Bei stöbern im Internet bin ich auf folgendes Projekt von Adafruit aufmerksam geworden. https://learn.adafruit.com/gmailbox/introduction

Ich würde jetzt gerne die NodeMCU durch eine Homematickomponente ersetzen und dann meinen "normalen" SchneckenPost-Briefkastenstatus damit anzeigen. Also etwas in Richtung "Klappanzeige HM-Dis-TD-T" nur schöner 8) .

Nur leider erschließt sich mir nicht, wo ich den Servo-Code einbauen sollte. Ich sehe schon, objektorientierte Programmierung erfordert noch etwas Einarbeitung meinerseits ;-).

Über jeglich Hilfe bin ich dankbar, von einfachen Hinweisen bis zum fertigen Sketch :D ist alles willkommen.

Vielen Dank
Marco

jp112sdl
Beiträge: 12085
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 847 Mal
Danksagung erhalten: 2139 Mal
Kontaktdaten:

Re: HM-Dis-TD-T - mechanische Post-Anzeige mit Homematic

Beitrag von jp112sdl » 07.10.2018, 18:03

Hi,

du kannst aus den AskSinPP-examples den Sketch vom HM-LC-Sw1-BA-PCB nehmen.

Darin änderst du das Device Model von {0x00,0x6c} auf {0x00,0x78}.

Nun verhält sich der Sketch wie ein HM-Dis-TD-T.

Das Schalten der üblicherweise verwendeten Relais erfolgt in der Switch.h:

Code: Alles auswählen

  virtual void switchState(__attribute__((unused)) uint8_t oldstate,uint8_t newstate,__attribute__((unused)) uint32_t delay) {
    if( newstate == AS_CM_JT_ON ) {
      digitalWrite(pin,lowact ? LOW : HIGH);
    }
    else if ( newstate == AS_CM_JT_OFF ) {
      digitalWrite(pin,lowact ? HIGH : LOW);
    }
    BaseChannel::changed(true);
  }
Dort könntest du statt der Methoden "digitalWrite(..." für ON und OFF deinen Servocode einbauen.
Idealerweise könnte man auch eine eigene Servoklasse bauen...

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

mar-fish
Beiträge: 10
Registriert: 06.03.2018, 08:37

Re: HM-Dis-TD-T - mechanische Post-Anzeige mit Homematic

Beitrag von mar-fish » 07.10.2018, 21:43

Super, danke.
Das hat grundsätzlich erstmal funktioniert, auch wenn der Servo noch nicht so will, wie ich.

Antworten

Zurück zu „Hardwareentwicklung und Selbstbau von Aktoren und Sensoren“