Fensterdrehgeriffkontakt - Die nächste Runde

Begonnen von papa, 02 April 2020, 09:37:44

Vorheriges Thema - Nächstes Thema

Feinfinger

Was für einen Programmer nutzt du denn?

Ich hatte anfänglich einen USBASP Programmer für ein paar Euro aus der Bucht. Der hat nur Probleme gemacht, d.h. ich hatte auch keine Fehler beim flashen, es hat aber nicht wirklich geklappt. Hab mich dann damit beholfen und eine externe Spannungsversorgung gebastelt und konnte dann alle flashen. Mittlerweile nutze ich den Diamex Programmer, wesentlich entspannter :-)
Proxmox VM - MAPLE-CUL - SIGNALDINO

papa

Zitat von: Fillip am 02 Januar 2021, 22:28:21
Vorrausgesetzt der Flashvorgang auf den Atmega war erfolgreich, wie müssten sich denn die LEDs auf der Platine verhalten wenn ich Spannung anlege bzw die Batterie einlege? Aktuell passiert mit den LEDs gar nichts...
Hm - das ist komisch. Es müsste zumindest der Bootloader 7x blinken.
Zitat von: Fillip am 02 Januar 2021, 22:28:21
@papa hast du noch die FreeCad Datei für die Small Variante in rund? Im Github ist nur die Eckige zu finden...
https://forum.fhem.de/index.php/topic,109786.msg1081861.html#msg1081861
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Fillip

Wie gesagt, nach dem zweiten Flashvorgang blinkt nun die rote LED nach dem zuschalten der Spannungsversorgung 7x schnell.
In der tat nutze ich einen "günstigen" Programmer, mal vor vielen Jahren bei Amazon gekauft, damit auch schon einiges geflasht vor Jahren, also de funktionier eigentlich...
Nur anlernen lässt sich das ganze aktuell nicht an der CCU / RaspberryMatic...

papa

Hast Du auch ein
#define USE_OTA_BOOTLOADER
in Sketch ?
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Fillip

Zitat von: papa am 03 Januar 2021, 00:03:54
Hast Du auch ein
#define USE_OTA_BOOTLOADER
in Sketch ?
Nein, hatte ich nicht...  ::)
Ich habe jetzt die HB-SEC-RHS-3.ino mittels Arduino IDE geöffnet, dort die // vor dem #define USE_OTA_BOOTLOADER entfernt.
Als Board habe ich den Arudino UNO gewählt
Dann über Sketch > Binärdatei exportieren, dann die entstandene HB-SEC-RHS-3.ino.standard.hex mittels der makeota.html den Bootloader erzeugt und drauf geflasht... Soweit richtig?

papa

Bis auf das Board -ja. Das muss auf Pro Mini stehen.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Fillip

Ja das hatte ich eben nochmal geändert, danke.

Danach dann noch paar fragen:
- Wenn ich den dritten Kontakt, bsp für den Glasbruchsensor nicht nutzen möchte, was muss im Sketch außer "// #define SENS3_PIN 16" noch angepasst werden? Denn nur mit dem bekomme ich eine Fehlermeldung
'SENS3_PIN' was not declared in this scope
- Wenn ich dies dann auskommentiert habe, nutze ich im makeota.html dann als Device HM-SEC-RHS-2 ? > Die erstellte .hex mit der Firmware und Bootloader flashe ich dann auf die Platine mittels ISP Programmer, mehr kommt da nicht drauf...?
- Für das .tar.gz für die CCU, welche .hex (Firmware) nutze ich da dann für die prepota.sh? Die aus dem Sketch oder die mit dem Bootloader? Ich vermute erstere...
- Zu der info Datei für die CCU, im Sketch steht die Firmwareversion auf  0x10, wäre dann die info Datei so korrekt? Typ Resultiert aus der Dezimalzahl von 00C3 für den HM-SEC-RHS-2...

TypeCode=195
Name=HB-SEC-RHS-2
CCUFirmwareVersionMin=2.27.0
CCU3FirmwareVersionMin=3.27.0
FirmwareVersion=1.0


Wenn ich das ganze hier mal ans laufen bekommen habe, werde ich das ganze mal versuchen für "Laien" wie mich zu dokumentieren, wenn gestattet  :D

Fillip

Ja das hatte ich eben nochmal geändert, danke.

Danach dann noch paar fragen:
- Wenn ich den dritten Kontakt, bsp für den Glasbruchsensor nicht nutzen möchte, was muss im Sketch außer "// #define SENS3_PIN 16" noch angepasst werden? Denn nur mit dem bekomme ich eine Fehlermeldung
'SENS3_PIN' was not declared in this scope
- Wenn ich dies dann auskommentiert habe, nutze ich im makeota.html dann als Device HM-SEC-RHS-2 ? > Die erstellte .hex mit der Firmware und Bootloader flashe ich dann auf die Platine mittels ISP Programmer, mehr kommt da nicht drauf...?
- Für das .tar.gz für die CCU, welche .hex (Firmware) nutze ich da dann für die prepota.sh? Die aus dem Sketch oder die mit dem Bootloader? Ich vermute erstere...
- Zu der info Datei für die CCU, im Sketch steht die Firmwareversion auf  0x10, wäre dann die info Datei so korrekt? Typ Resultiert aus der Dezimalzahl von 00C3 für den HM-SEC-RHS-2...

TypeCode=195
Name=HB-SEC-RHS-2
CCUFirmwareVersionMin=2.27.0
CCU3FirmwareVersionMin=3.27.0
FirmwareVersion=1.0


Wenn ich das ganze hier mal ans laufen bekommen habe, werde ich das ganze mal versuchen für "Laien" wie mich zu dokumentieren, wenn gestattet  :D


Frage in die Runde: Hat wer das Modul unter RaspberryMatic am laufen? Müssen dazu noch weitere änderungen gemacht werden? Denn so will die "CCU" das nicht erkennen / lernt es nicht an...

papa

SENS_PIN3 muss auf 0, wenn er nicht genutzt werden soll. Du musst im makeota.html das gleiche setzten wie im Sketch. Wenn Du mit #define RHS3 übersetzt, muss im makeota.html auch der HM-Sec-RHS-3 eingestellt werden. Wenn das Define auskommentiert ist, ist der HM-Sec-RHS-2 zu verwenden.
Das Hex vom makeota.html mit ISP flashen reicht.

Bessere Doku ist immer gut.

Wie gesagt, bei der CCU bin ich leider raus.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Fillip

Okkeey, heißt, wenn ich den zusätlichen Kontakt nicht nutzen möchte, dann setze ich im Sketch
// #define RHS3
sowiwe
#define SENS3_PIN 0
Und wähle dann in der maketota den RHS-2 aus...?

Was meinst Du mit
Zitat von: papa am 03 Januar 2021, 17:33:57
Du musst im makeota.html das gleiche setzten wie im Sketch.
Meinst Du damit aus dem Sketch die Zeilen
// define all device properties
#ifdef RHS3
const struct DeviceInfo PROGMEM devinfo = {
    {0xa9,0xb8,0xc7},       // Device ID
    "papaa9b8c7",           // Device Serial
    {0xF2,0x09},            // Device Model
    0x10,                   // Firmware Version
    as::DeviceType::ThreeStateSensor, // Device Type
    {0x01,0x00}             // Info Bytes
};
#else
const struct DeviceInfo PROGMEM devinfo = {
    {0x09,0x56,0x34},       // Device ID
    "papa222111",           // Device Serial
    {0x00,0xC3},            // Device Model
    0x22,                   // Firmware Version
    as::DeviceType::ThreeStateSensor, // Device Type
    {0x01,0x00}             // Info Bytes
};
#endif

In meinem Fall dann sicher der untere Teil wenn ich das als RHS-2 nutze? Doch wie bzw welche Daten gebe ich da in der makeota ein?

papa

Lass es uns anders herum machen - was willst Du bauen. Ich sage, was Du wo setzen musst.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Fillip

#386
Na ich wollte den Fensterdrehgriffkontakt "normal" nutzen erst mal. Heißt einfach die Stellung von geschlossen, gekippt oder geöffnet, anzeigen lassen, was ja der sinn deiner Sache ist, den zusätlichen Kontakt für den Glassbruchsensor erst mal nicht, auf U3 ist auch kein TLE verbaut... Den Quarz habe ich auf der Platine z.b nicht verbaut, da du mal meintet der ist nicht notwendig...

Bsp. die makeota im Screenshot, wie gebe ich das im Sketch ein? Heißt aber auch, das ich für jeden Sensor die Daten erneut im Sketch eingeben muss, oder? Auch die "00C3" unter Device Model - a 4 digit hex number wird vorausgefüllt sobald ich den RHS-2 auswähle...

By the way: Wenn jemand 3D Gedruckte gehäuse benötigt, bin neuerdings im Besitz eines 3D Druckers, habe bis jetzt gute Erfahrungen gemacht mit dem Gehäuse im Druck. Habe auch die höhe etwas angepasst damit die Platine nicht so vom Griff gequetscht wird...

EDIT: Mir ist eben noch eingefallen  ::) Ich habe am FHEM Server noch den NeumannCUL dran, mit dem müsste ich den Sensor ja auch direkt in FHEM einbinden können, oder?  ???

papa

Für den RHS-2 mit 2 TLEs muss folgendes gesetzt werden

// #define RHS3
#define USE_OTA_BOOTLOADER
#define SENS3_PIN 0


Die Werte im makeota.html sehen gut aus. Für jedes Gerät, muss eine neue HMID & Serial vergeben werden. Das geht einfach mit dem "Random" Button. Das Hexfile ist für alle das selbe.

Hoffe, das ist verständlich.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Fillip

Ja das ist verständlich, die Änderungen habe ich ja auch im Sketch gemacht. Nach dem Export habe ich dann zwei Datein.
- HB-SEC-RHS-3.ino.with_bootloader.eightanaloginputs.hex
- HB-SEC-RHS-3.ino.eightanaloginputs.hex

Für die makeota nehme ich immer die zweite, ist das so richtig?

papa

BananaPi + CUL868 + CUL433 + HM-UART + 1Wire