HM Dashbutton

Begonnen von joschi2009, 16 Juli 2017, 19:30:54

Vorheriges Thema - Nächstes Thema

joschi2009

Hallo,

hier nun eine HM-Dashbutton Variante.

Im Prinzip eine Einkanal Fernbedienung in der Optik eines Dashbutton.

Teile:

Papas HM_CR2032 Modul mit seiner HM-RC-4 Firmware.
3d-Druck Gehäuse mit Platinenaufnahme und Microtaster.
Microtaster.

Zeitbedarf:

3d-Druck ca.1 Stunde
Zusammenbau 15 min.

Kosten:

Platine ca. 6-8€
Kleinteile und Druck ca. 50ct


Edit 23.07.2017: Links eingefügt
Edit 04.08.2017: Design überarbeitet

papa

Coole Sache. Ich mach die Tage mal ne HM-RC-P1 Firmware.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

betateilchen

Zitat von: joschi2009 am 16 Juli 2017, 19:30:54
Papas HM_CR2032 Modul mit seiner HM-RC-4 Firmware.

gibts dazu irgendwo mehr Infos? Die Forumsuche hat nix ergeben.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

joschi2009

Zitat von: betateilchen am 23 Juli 2017, 14:53:01
gibts dazu irgendwo mehr Infos? Die Forumsuche hat nix ergeben.

sorry, mein Fehler, habe die Links im ersten Beitrag eingefügt.

Wzut

@joschi2009, schön schön, so ein Teil wäre toll als Ersatz für den kleinen Intertechno Handsender als Garagentoröffner.
Zwei Fragen : hast du den auch mit OpenSCAD erstellt und wenn ja würdest du die Dateien auch wieder zur Verfügung stellen ?
Wie wird der Deckel gehalten ? Nur Klemmung ?
Beim Griffkontakt geht das mit meinen Putz Vandalen gerade so, aber wenn das Ding am Schlüsselbund hängt wie lange bleibt da der Deckel an Ort und Stelle ?
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

joschi2009

@Wzut
Im Moment noch mit reiner Klemmtechnik. Ich wollte noch etwas an der Optik arbeiten, werde ich die nächsten Tage tun. Die Datei kannst du gerne per Mail haben.

papa

Habe eben eine HM-RC-P1 Firmware unter examples ins Repository eingecheckt. Damit geht nun auch eine echte 1-Tasten-Fernbedienung.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

joschi2009


Wzut

Zitat von: papa am 22 Juli 2017, 22:59:42
Ich mach die Tage mal ne HM-RC-P1 Firmware.
Naive Frage : warum bzw. wo liegt der Vorteil gegenüber der 4 Kanal FB ?
Ich hätte jetzt ganz simpel sogar die FW der Fensterdrehgriffe genommen und hätte dann noch den Vorteil jeden Tag eine Statusmeldung zu bekommen. Oder gibt das dann eventuell Probleme beim direkten Verbinden mit anderen HM Geräten ?
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

papa

So hast Du keine "toten" Channels im System. Von der 4-Kanal-FB geht ja nur der erste Kanal.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Wzut

OK, bei der Fernbedienung verstehe ich es, aber wenn man die FW der Fensterdrehgriffe nimmt gibt es auch keine toten Channels da doch nur den Status open/close verwendet wird. Achja und gleich noch ne OT Frage : Ich will das Ding mal auf dem Steckbrett mit einem nackten AtMega und einem CC1101 aus einem alten MAX Thermostat aufbauen. Kann ich da den 32kHz Quarz weglassen da ich  dann mit 3,3V Festspannung arbeite ?
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

papa

Ja - kannst Du weglassen. Der 32kHz Quarz wird bisher von keiner Firmware benutzt.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Wzut

Zitat von: joschi2009 am 16 Juli 2017, 19:30:54
Edit 04.08.2017: Design überarbeitet
Das geht ja völlig unter im Edit .... schaut aber sehr schön aus.

@papa, was ich auch noch nicht verstanden habe beim Bootloader erstellen , auf deiner GitHub Seite schreibst du :
ZitatThe first step is to create a bootloader with the specific device data

    Device Type - 2 Byte Hex
    Device ID - 3 Byte Hex
und in der makeota.html steht :
Device Type - a 4 digit hex number:
HM ID - a 6 digit hex number:

Wo finde ich denn die passenden Werte jeweils zu Device Type und Device ID ?
und bei HM ID soll ich meine eigene HM ID eintragen ?
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

papa

#13
Zitat von: Wzut am 05 August 2017, 12:24:35
@papa, was ich auch noch nicht verstanden habe beim Bootloader erstellen , auf deiner GitHub Seite schreibst du : und in der makeota.html steht :
Device Type - a 4 digit hex number:
HM ID - a 6 digit hex number:

Wo finde ich denn die passenden Werte jeweils zu Device Type und Device ID ?
und bei HM ID soll ich meine eigene HM ID eintragen ?

Ist doch das selbe. 2 Byte sind 4 Hex-Zeichen bzw. 3 Byte sind 6 Hex-Zeichen. Das werden mehr oder weniger nur Informatiker wissen. Deshalb steht in der HTML-Seite die Anzahl der Zeichen. Der HM-RC-P1 hat den Type 0x00,0x1a - 001a. Ich hänge die Firmware hier mal an.

Edit: Den Typ nochmal korrigiert.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Wzut

#14
ja ok, ich hatte mich in der Eile auch schlecht ausgedrückt. Es ging mir primär nicht um zwei gleich vier sondern um die unterschiedlichen Bezeichnungen bzw. woher man die Info bekommt welche Werte einzutragen sind ( Das es beim FDGK 0300 sind hattest du geschrieben) :)
Ich habe nun den Bootloader damit erstellt geflashed und deine HM-RC-P1 übertragen. Das neue Device meldet sich allerdings als

   firmware   1.1
   model      HM-LC-SW2-SM
   subType    switch
   

und legt zwei Channels an. Im Channel 1 sehe ich beim High/Low Wechsel von A0 Short & Longpress, der Channel 2  hat immer den state unreachable.
Was kann da schief gelaufen sein ?

Edit : in der HM-RC-P1.ino finde ich
#define DEVICE_MODEL 0x00,0x1a
und in der HM-LC-SWX-SM.ino
#define HM_LC_SW2_SM 0x00,0x0a
wäre demnach auf der HTML Seite nicht 000a einzugeben sondern 001a ?

Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

papa

Richtig - habe ich mich wohl vertippt. 001a ist richtig. Bitte den Bootloader nochmal draufspielen. Dann sollte es mit der obigen Firmware funktionieren.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Wzut

ja geht , nun meldet er sich mit
model HM-RC-P1
subType remote

die regList ist ja bei dem Typ recht bescheiden , am Tastverhalten scheint man da nichts verstellen zu können.
D.h. er wird wohl immer nur short oder long senden.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

papa

Das ist bei allen Fernbedienungen so.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

tndx

Hi joschi,

Zitat von: joschi2009 am 16 Juli 2017, 19:30:54
3d-Druck Gehäuse mit Platinenaufnahme und Microtaster.

ich würde mir mal gerne ein paar von diesen Fernbedienungen zulegen, kannst Du sagen, welche Microtaster Du genau verwendest?

joschi2009

Zitat von: tndx am 28 Oktober 2017, 13:39:48
Hi joschi,

ich würde mir mal gerne ein paar von diesen Fernbedienungen zulegen, kannst Du sagen, welche Microtaster Du genau verwendest?

Das sin 08/15 Taster wie zum Beispiel diese hier

tndx

OK, danke, habe mir diese bei Aliexpress bestellt:

https://www.aliexpress.com/item/100pcs-6-6-5mm-Light-touch-switch-DIP4-ON-OFF-Touch-button-Touch-micro-switch-6/32761296500.html

Setzt Du sie auf ein Stück Leiterplatte, oder biegst Du die Beinchen zur Seite, damit der Schalter einen stabilen Halt hat?

joschi2009

Die Pins an einer Seite abschneiden, der Taster hält ohne weitere Fixierung im 3d-Druck.

tndx

OK, danke, werde ich ausprobieren!

Wzut

Wenn man das Gehäuse leicht ändert kann man auch den Config Taster auf der Platine als Schalttaster benutzen :)
Natürlich muss man dann die Zuordnung im Sourcecode ändern, das bissel config habe ich dann mit einer angehaltenen Drahtbrücke GND - A0 gemacht.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

mark79

Coole Idee! :) Damit hat man keine 2-3 Sekunden Verzögerung, wie beim Amazon Dash Button und die Batterie hält bestimmt auch länger durch.

Was noch richtig gut wäre, wenn er Multi Funktion besitzt. Also das man mehrere Aktionen mit nur einem Button auslösen kann, z.B. gedrückt halten, doppeltes drücken u.s.w.
Rock64 4GB mit Debian Strech, FHEM im LXC, Sonoff Switches/Touch, HM Thermostate, HMUART/Zigbee2MQTT@MapleCUN, ESP RGBWW Wifi Controller, ESP8266 Door Sensor/Briefkastenwächter, BT CSL Stick, BT iTags, Alexa, FireTV, RPi2 mit Kodi, Xiaomi Vacuum v1/Smarthome Komponenten

joschi2009

Naja, long und short kennt er von haus aus...

treborst

Hallo,
habe mir auch so einen Dashbutton zusammengebaut und er meldet sich in FHEM auch als HM-RC-P1 und sonst sieht alles richtig aus.
Den Microschalter habe ich noch nicht angelötet, weil ich mir nicht sicher bin welche Pins bei Betätigung überbrückt werden sollen.
So wie die Platine in das Gehäuse passt, können es ja nur die Pins D3, A5 oder A4 sein.
Wenn ich 2 dieser Pins kurzschliesse, kommt keine Reaktion in FHEM und die Led leuchtet nicht.
Nur das überbrücken von A0 und GND bringt die Led zum leuchten und der Status in FHEM ändert sich.
An diese beiden Pins komme ich aber mit dem Taster nicht.

Könnt ihr sagen wo ich den Taster anlöten muss?

Psi

Hat jemand n hübsche Bild vom fertigen Dashbutton für die asksinpp.de Projekt-Liste?

Ranseyer

Sehr cool. Danke!
(Dann muss ich nur noch mal die Basisplatine+Spannungsversorgung fertigstellen...)
FHEM mit FTUI. Homematic-Funk für Thermostate und Licht. MySensors als Basis für eigene HW.
Zentrale ist der MAPLE-CUL mit RFM69+HModUART-AddOn.
Doku zu meinen Projekten: Github/Ranseyer. Platinen falls verfügbar gerne auf Anfrage.
Support: gerne wenn ich Zeit+Lust habe im Forum. Nicht per PN!

treborst

Hm, leider nicht die Antwort auf meine Frage  :(
Wie muss denn der Taster angelötet werden, dass es in das Gehäuse passt?

Bild von der fertig bestückten Platine wäre gut

tndx

A0 und GND sind genau richtig. Warum soll man nicht an die Pins kommen? Ich habe an die Beinchen vom Taster 2 Drähte angelötet, damit kommt man überall hin :) GND hat man aber auch ganz in der Nähe, nämlich beim Reset-Taster. Ein Bild habe ich leider nicht zur Verfügung...

treborst

Danke für die klare Antwort
Meine Frage nach dem richtigen Pins mag dumm klingen, ich war halt davon überzeugt, dass der Taster direkt an die Platine gelötet werden soll, weil es von der Anordnung nahe liegt.
Jetzt weiß ich, dass ich nichts falsch gemacht habe.

kafisc

Hi zusammen, der Nachbau 1:1 hat an sich wunderbar funktioniert.
Ich habe jedoch immer wieder das Problem, dass der Aktor völlig zufällig nicht mehr reagiert und keine Auslösung über den Taster möglich ist.

Mit einem Multimeter habe ich dann gemerkt, dass die Spannung auf z. B. 2,48 Volt abfällt.
Ein Reset über den Hardwaretaster ist dann auch nicht mehr möglich und der Zustand 2,48 hält weiter an.

Wenn ich dann die Stromzufuhr zur CR2032 trenne und erneut herstelle, kann der Aktor wieder verwendet werden und die Spannung liegt wieder bei z. B. 3,21 Volt.
Das Problem tritt bei NEUEN Markenbatterien auf, sowie bei No-Name Batterien.

Das Problem tritt lediglich in Verbindungen mit einer CR2032 auf. Mit 2 Mignon-Batterien tritt das Problem nicht auf.
Zur Sicherheit habe ich das Projekt erneut auf einem 2ten Arduino Pro Mini 3,3V und einem zweiten CC1101 868 gebaut. Auch hier ist das Verhalten exakt gleich.

Für Hinweise wäre ich dankbar.
Vielen Dank im Voraus & MFG

Papa Romeo

Hallo kafisc,

ich denke es liegt an deinen CR2032. Die Aussage, die Spannung steigt wieder auf 3.21 Volt an, heißt nicht unbedingt dass die CR ok ist.
Meine Erfahrungen mit den CR´s sind, dass, gerade wenn die Spannung an der CR im Leerlauf wieder wesentlich höher als auf 3,1 Volt ansteigt, die Spannung eigentlich
dann nur "statisch" vorhanden ist und schon bei kurzfristiger Belastung wieder in die Knie geht. D.h. die Batterie ist eigentlich "leer".

Zweite Möglichkeit, du hast irgendwo einen "Stromräuber".

LG

Papa Romeo
...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary