Arduino Nano für AskSinPP (5V, 16 MHz)

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

Moderator: Co-Administratoren

Matsch
Beiträge: 5359
Registriert: 30.05.2019, 11:37
System: Alternative CCU (auf Basis OCCU)
Wohnort: Chemnitz
Hat sich bedankt: 113 Mal
Danksagung erhalten: 722 Mal

Re: Arduino Nano für AskSinPP (5V, 16 MHz)

Beitrag von Matsch » 27.06.2021, 22:32

jp112sdl hat geschrieben:
27.06.2021, 21:24
Ein 8-Ch IC ist schon recht groß, wenn 5 Kanäle benötigt werden.
6,5 x 7 mm

TomMajor
Beiträge: 1790
Registriert: 30.08.2017, 23:25
Hat sich bedankt: 175 Mal
Danksagung erhalten: 399 Mal
Kontaktdaten:

Re: Arduino Nano für AskSinPP (5V, 16 MHz)

Beitrag von TomMajor » 27.06.2021, 23:34

kalwados hat geschrieben:
27.06.2021, 21:25
TomMajor hat geschrieben:
27.06.2021, 20:38
ich hatte mal für den AskSin Analyzer XS eine Variante gemacht mit 4-Kanal Shifter und "Speziallösung" für GDO0/D2 pin.
Ja, da sieht interessant aus. Laut Symbol im Schaltplan ist das eine Zener-Diode, von der Bezeichnung her eine Schottky-Diode. Magst du mal kurz erklären, warum eine "normale" Diode (aka 1N4148) hier nicht ausreichend ist?

TIA
Hi kalwados,

die Diode soll den GDO0 pin möglichst sicher (und mit möglichst geringem Aufschlag) auf Vcc vom CC1101 klemmen. Dafür ist eine Schottky besser geeignet wegen der geringeren Duchflussspannung, GDO0 hätte dann weniger Spannung über seinem Soll als bei einer 1N4148.

Normalerweise haben digitale IC diese Art Eingangschutz sowie so integriert, war aber beim CC1101 nicht sicher und habe sie deswegen vorgehalten, schaden tuts sie nichts. Wichtiger als die Diode ist der Serienwiderstand 1k zur Strombegrenzung im 5V Fall.

Und wegen der Frage 16MHz, weiß nicht ob es bisher klar rauskam. Bei 16MHz wären wir bei 3V (was bei AskSinPP wegen dem CC1101 gern verwendet wird), etwas außerhalb der Spec. Deshalb dann die Variante mit 8MHz die sicher bei 3V (und drunter) geht.
https://github.com/TomMajor/SmartHome/t ... s_Spannung
Viele Grüße,
Tom

Benutzeravatar
kalwados
Beiträge: 70
Registriert: 07.07.2019, 13:29
Hat sich bedankt: 29 Mal
Danksagung erhalten: 7 Mal

Re: Arduino Nano für AskSinPP (5V, 16 MHz)

Beitrag von kalwados » 03.10.2021, 18:42

Der Sommer ist (leider) vorüber, jetzt ist wieder Zeit zum Basteln ;-) und ich wärme mein altes Projekt wieder auf. Mittlerweile habe ich einen funktionierenden Infrarot-Sender zusammengelötet, basierend auf einem Arduino Nano, CC1101, Levelshifter, Leistungstransistor und IR-Sendedioden. Das Teil verwendet AskSinPP mit IRremote.h und ist an der CCU als Schaltaktor registriert und ich kann darüber meinen Panasonic-Receiver mehr oder weniger erfolgreich Ein-/Ausschalten. Die Stromversorgung erfolgt über ein altes USB-Steckernetzteil 5V/1A an der Mini-USB-Buchse des Arduino.
HB-IR-SW1 Fertiggerät (small).jpg
Die IR-Kommandos für "Gerät ein" und "Gerät aus" habe ich fest im Programmcode hinterlegt. Blöderweise kennt der Audio-Receiver keine getrennten Infrarot-Codes für "Ein" und "Aus", nur ein "Power-Toggle". Durch ausprobieren aller möglichen IR-Codes habe ich jedoch Einen gefunden, welches das Gerät in einen Test-Modus versetzt und dazu den Receiver einschaltet, falls er noch aus ist. Um also z.B. "Radio ein" zu erreichen, sind folgende IR-Sequenzen erforderlich:

- "TestMode" -> Gerät einschalten/Test-Mode aktivieren
- Drei Sekunden warten (Boot-Zeit des Gerätes abwarten, falls vorher "Aus").
- "PowerToggle" -> Gerät auschalten
- 3 Sekunden warten (Shutdown)
Definierter Zustand "Aus" ist erreicht.
- "PowerToggle" -> Gerät einschalten
- 3 Sekunden warten (Boot)
- "SelectInput"

Für die 3 Sekunden Wartezeit rufe ich _delay_ms(3000) auf; das funktioniert auch. Aber die CCU meldet immer einen Kommunikationsfehler, weil die Antwort des Aktors halt einige Sekunden auf sich warten lässt.

Nun meine Fragen dazu:
- gibt es eine Möglichkeit, die erforderlichen Verzögerungen so zu realisieren, dass der restliche AskSinPP-Programmcode "normal" weiterläuft? Task, Thread, Timer?

- anstelle die IR-Codes fest im Code zu verankern, würde ich die gerne als Parameter in der CCU einstellen und dann den ganzen Ablauf als CCU-Script realisieren. Aber wie kann ich eine Byte-Sequenz wie z.B. "01 CA 3D" (PowerOn/TestMode) oder "00 0A 9A" (Select Input) übergeben?
- Gibt es überhaupt eine Geräteklasse, mit der sich soetwas umsetzen lässt?

Danke für's Lesen und für evtl. Antworten :-)

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

Re: Arduino Nano für AskSinPP (5V, 16 MHz)

Beitrag von jp112sdl » 03.10.2021, 20:41

kalwados hat geschrieben:
03.10.2021, 18:42
Task, Thread, Timer?
Alarm-Klasse der AskSinPP
kalwados hat geschrieben:
03.10.2021, 18:42
- Gibt es überhaupt eine Geräteklasse, mit der sich soetwas umsetzen lässt?
Ja das geht, ist aber nicht mit 2 Sätzen beschrieben.
Zumal auch 2 Möglichkeiten in Betracht kommen:
1.) Codes als Parameter eines Kanals hinterlegen (erspart das Übertragen der Payload bei jedem Auslösen)
2.) oder aber als SUBMIT einer Kanalaktion.

Beides findest exemplarisch z.B. beim HB-Dis-EP-42BW
https://github.com/jp112sdl/HB-Dis-EP-4 ... P-42BW.ino
und zugehöriger XML
https://github.com/jp112sdl/JP-HB-Devic ... #L253-L259

VG,
Jérôme ☕️

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

Benutzeravatar
kalwados
Beiträge: 70
Registriert: 07.07.2019, 13:29
Hat sich bedankt: 29 Mal
Danksagung erhalten: 7 Mal

Re: Arduino Nano für AskSinPP (5V, 16 MHz)

Beitrag von kalwados » 04.10.2021, 21:10

Hallo Jérôme,

vielen Dank für die Antwort! Wenn die IR-Codes per Payload übergeben werden könnten, war das Gerät natürlich viel universeller einzusetzen. Dann könnte ich die Delays im Homematic-Script einbauen und ggf. auch noch ein den Fernseher steuern (ich glaub IRremote kann auch Sony).

Ist mein Gerät eigentlich ein "Schalter", "Aktor", "OutputUnit"? Welche Device-Model-ID setze ich für einen HB-IR-SW1 am Besten ein? Für eine IR-Aktor wäre dann vermutlich auch eine entsprechende XML-Datei und ein schönes Icon erforderlich ;-)

Vermutlich am Wochenende werde ich mir den Code des E-Paper-Displays mal genauer ansehen. Durch diese ganze Template-Geschichte blicke ich noch nicht so richtig durch; bin eher der Delphi-Entwickler.

Gruß vom Teutoburger Wald.
Achim

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

Re: Arduino Nano für AskSinPP (5V, 16 MHz)

Beitrag von jp112sdl » 04.10.2021, 21:32

kalwados hat geschrieben:
04.10.2021, 21:10
Ist mein Gerät eigentlich ein "Schalter", "Aktor", "OutputUnit"?
Aus meiner Sicht nichts davon, da du einen Sender baust und keinen Empfänger.
Bei HB-IR-SW1 würde ich jetzt vermuten, dass ich einen Aktorkanal mittels IR steuern kann.
Aber diese IDs können alles und nichts sein... HB-UNI-Sen-IR würde ich wohl nehmen.
kalwados hat geschrieben:
04.10.2021, 21:10
Welche Device-Model-ID
Hier ist eine Sammlung von bekannten verwendeten Homebrew IDs:
https://asksinpp.de/rftypes/HomeBrew.ht ... subersicht
Also am besten nichts aus den dort gelisteten Bereichen
kalwados hat geschrieben:
04.10.2021, 21:10
Für eine IR-Aktor wäre dann vermutlich auch eine entsprechende XML-Datei und ein schönes Icon erforderlich
... und eine Ansicht für "Geräte und Bedienung" und eine Auswahlmöglichkeit in Programmen...
Kommt halt immer drauf an, wie "schick" und komfortabel es werden soll

VG,
Jérôme ☕️

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

Antworten

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