Daher hier nochmal für alle die Anleitung, die diesen Sketch auf einem HM-LC-Sw1PBU oder HM-LC-Sw2PBU verwenden möchten..
Danke an alle Beteiligten, die mich hier so sehr unterstützt haben, waren die Fragen auch noch so doof.
Wichtige Information am Anfang:
Durch das Flashen des Sketches erlischt natürlich eure Garantie!
Durch das Flashen wird aus dem HM-LC-SwxPBU ein HB-UNI-SenAct-4-4, dadurch kann man den Aktor nach dem Anlernen nicht tauschen, also müssen alle Programme und Direktverknüpfungen neu erstellt/angelegt werden!
Solltet ihr noch keinen ISP-Programmer haben, dann kann ich euch die Empfehlung von klassisch auch nur wärmstens empfehlen:https://www.diamex.de/dxshop/USB-ISP-Pr ... l-AVR-Rev2 Diese hat bei mir unter Windows10 sofort funktioniert, ohne Treiber installation etc. einstecken und fertig! Ich hatte den Postversand gewählt und der Programmer war am nächsten Tag da.
Anleitung:
- Als erstes solltet ihr prüfen, ob auf dem Aktor der ATMEGA644PA verbaut wurde.
Ich habe bei meinem Aktor (HM-LC-Sw1PBU-FM) dieses Chip verbaut, in der Aufbauanleitung wird aber geschrieben, das der ATMEGA644A verwendet wird, auf den Bilder ist aber der ATMEGA644PA zu sehen, die Beschreibung ist hier falsch. Gleiches gilt auch für die Aufbauanleitung für den HM-LC-Sw2PBU-FM.
- Programmierungsbeschreibung (Danke an klassisch):
- Überprüfen der Spannungsversorgung: An den Pins VCC müssen 3.3V gegen GND anliegen. Die Pins für den I2C Anschluss bieten sich zum Messen an.
- Einstellungen Arduino IDE:
--Zuerst den Mighty Core zur Unterstützung des 644PA Prozessor einbinden. Die Installationsanleitung dazu findet sich auf der zugehörigen Github Seite https://github.com/MCUdude/MightyCore#how-to-install . Danach kann ein Neustart der Arduino IDE erforderlich sein
-- Board einstellen -> Werkzeuge -> Board -> ATmeaga644 (zu finden unter MightyCore)
-- Pinout einstellen -> Werkzeuge -> Pinout -> Bobuino
-- Clock einstellen -> Werkzeuge -> Clock -> 8MHz external
-- Compiler Optimierung einstellen -> Werkzeuge -> Compiler LTO -> Disabled
-- Variante einstellen -> Werkzeuge -> Variant -> 644P/644PA
-- Brownout Voltage einstellen -> Werkzeuge -> BOD -> 2.7V
-- Programmer für den Bootloader einstellen: -> Werkzeuge -> Programmer -> "STK 500 as ISP (MightyCore)"
-- Libaries aktualisieren! (EnableInterrupt mind V1.0. Falls die Arduino IDE diese Version noch nicht anbietet, direkt von github https://github.com/GreyGnome/EnableInterrupt ziehen und ins entsprechende lokale Verzeichnis kopieren)
- Den Adapter mit dem 6 pol ICSP Pin Header gemäß der Beschriftung verbinden: - Sketch anpassen an Bobuino-Pinout für ATMEGA644PA. Beispiel am Aktor "HM-LC-Sw2PBU-FM":
Pinne aus dem Sketch:
Code: Alles auswählen
#define RELAY1_PIN 17 //A3
#define RELAY2_PIN 16 //A2
#define BUTTON1_PIN 6
#define BUTTON2_PIN 3
Relais1 = PD5
Relais2 = PD4
Taste1 = PD6
Taste2 = PD0 (RX)
anhand des oben Dargestellten Bildes kann man nun die Bobuino Pinne herausfinden:
Code: Alles auswählen
#define RELAY1_PIN 30
#define RELAY2_PIN 8
#define BUTTON1_PIN 9
#define BUTTON2_PIN 0
Code: Alles auswählen
#define NDEBUG
- Applikation flashen: Programmieren mit -> Sketch -> Hochladen mit Programmer
- Danach kann man den Aktor wieder zusammenbauen.
- Um den Aktor sauber anlernen zu können müsst ihr das Addon von jp112sdl installieren: https://github.com/jp112sdl/JP-HB-Devices-addon
- Nach dem Anlernen müssen nun aber noch Direktverknüpfungen erstellt werden, damit bei Tastendruck auch der Aktor geschaltet wird.
Ich habe dann bei mir Direktverknüpfungen angelegt, die nur auf den kurzen Tastendruck reagieren. Mit dem Langentastendruck kann ich dann wieder eine andere Direktverknüpfung anlegen, oder auch ein Programm starten lassen.
Empfehlung:
Es werden beim Anlernen immer 4 Taster und 4 Relais in der CCU eingebunden. Unter Einstellungen --> Geräte --> Gerätename habe ich dann die Sichtbarkeit der nicht verwendeten Kanäle ausgeschaltet, damit ich diese nicht ständig irgendwo stehen habe.
Zusatz:
An den Entwickler von TinyMatic habe ich bereits eine Anfrage zum implementieren des Aktors gestellt, da dieser schon zwei andere Selbstbauaktoren eingebaut hat, wird das vermutlich auch schnell passieren. Der ist da echt flott
Einschränkungen:
- Direktverknüpfungen, die zwischen Taster und der internem Relais erstellt wurden, sind nicht in der WEB-UI unter Direktverknüpfungen zu sehen.
Allerdings kann man diese unter Einstellungen->Geräte->GERÄTENAME->Einstellen sehen und bearbeiten.
- In der Web-Ui kann man den kurzen- und den langen Tastendruck unter Status und Bedienung->Geräte->GERÄTENAMEN simulieren. Das funktioniert nicht, da die klassischen HM-Aktoren eigene Telegramme rausfiltern. Das bedeutet, das man das virtuelle Betätigen des Aktors auch in Programmen nicht verwenden kann!
Gruß Carsten