Universelle Hardware-Basis für 868MHz Funksensoren und Aktoren

Begonnen von papa, 05 Juli 2017, 22:12:42

Vorheriges Thema - Nächstes Thema

gloob

#420
Leider wurde mein Auftrag bei JLCPCB gecancelt. Hat jemand noch einen anderen Dienst wo man die Panel bestellen kann? Oder muss ich angeben, dass es ein Panel ist mit 5 Designs. Dann werden aber mal eben 32€ extra drauf geschlagen.

Oder kann mir jemand seine Gerber Dateien zur Verfügung stellen, womit eine Bestellung geklappt hat. Ich hatte die Daten von Github genommen. 
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

papa

Bei Elecrow hat es geklappt, wenn man die "combined.txt" weg lässt. Dann fehlen später nur die vielen kleinen Löcher an den Bruchstellen. Du musst dann die Platinen mit einer kleinen Säge trennen.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

kpwg

Zitat von: papa am 07 Mai 2018, 19:05:23
Zum Programmieren nutze ich den "normalen" seriellen Arduino-Bootloader. Dann kommt ein Stecker bzw. Stifte an die Platine und das ganze wird per USB-Serial-Adapter an den Rechner angeschlossen.

Ich habe dafür "quick&dirty" einen Programmieradapter auf 6pin ISP zusammengeschustert. Kontaktiert wird über ein Stück alten 5.25"-Floppy-Stecker, begrenzt durch vier kräftige Drahtbügel auf der Platine. Mit dem ISP komme ich dann bequemer an meinen Programmer, die anderen drei Pins sind TXD, RXD und GND. Optisch alles kein Highlight, aber mechanisch und elektrisch für den Zweck ok.

Im folgenden Schritt werden dann ein paar Boards entstehen.

Danke papa für dieses schöne Projekt.  :)

Wzut

Zitat von: kpwg am 10 Mai 2018, 17:32:26
Optisch alles kein Highlight
na und  ? Was nützt Schönheit ohne Funktion ?
Bin schon mal gespannt wie gut dein Adapter passt wenn das CC1101 noch auf der Platine ist.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

gloob

Hat jemand bitte einen Link für einen passenden Batteriehalter für aaa. Gibt ja doch ab und zu unterschiede.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

kpwg

Zitat von: Wzut am 10 Mai 2018, 19:06:16
Bin schon mal gespannt wie gut dein Adapter passt wenn das CC1101 noch auf der Platine ist.

Da die "Problemstelle" absehbar war, habe ich vom CC1101 Modul seitlich ein paar Späne abgenommen. Somit sitzt es knapp, aber es genügt für sichere Kontaktierung. Interessant ist, das der CR2032 Halter überhaupt nicht stört, da das Blech bereits wieder hinter dem Steckverbinder liegt.

Der Aufbau meines ersten HMSensor Boards verlief gut. Alles ist beschrieben und erfordert keinen großen Aufwand. Für sichere Kontaktierung der CR2032 sollte man vor Auflöten des Batteriebleches einen Hauch Zinn auf den Minuspol der Platine aufbringen. Damit ist die Kontaktierung der Batterie dann einwandfrei. Als Software habe ich aus dem Wiki das Beispiel mit HM-SEC-RHS genommen. Hat gleich auf Anhieb funktioniert.  8)

AVRDude hat bei mir gemeckert, das die Devicesignatur nicht passt. ausgelesen wurde 1E9516, erwartet wurde 1E950F. Da der Chinese m328pb statt m328p geliefert hat, ist das so. Funktioniert aber trotzdem. Unterschiede der Controller stehen hier: http://ww1.microchip.com/downloads/en/AppNotes/Atmel-42559-Differences-between-ATmega328P-and-ATmega328PB_ApplicationNote_AT15007.pdf

Nun habe ich zwischen Katode D2 und A0 einen Miniatur-Reed verlötet und werde damit gleich mal über einen längeren Zeitrum testen (Batterielebensdauer, Stabilität, ...)


sentinel1

Zitat von: gloob am 11 Mai 2018, 17:21:15
Hat jemand bitte einen Link für einen passenden Batteriehalter für aaa. Gibt ja doch ab und zu unterschiede.

ich habe die hier gekauft https://de.aliexpress.com/item/20PCS-AAA-Batteries-Storage-Case-Plastic-Box-Holder-with-6-Cable-Lead-for-1-x-AAA/32810491813.html.Passen genau auf die Platine.

gloob

Hat jemand einen Tipp wie die Bestückung für eine SHT10 auf dem Addon Board aussehen muss?

Muss ich JP3 auf der Unterseite schließen? Ich würde jetzt spontan nur R1 und R2 mit 10K bestücken. JP1 würde ich von 2 auf 3 als Vin Brücken.
Sollte ich JP3 Brücken wenn ich später doch noch einen TSL2561 auflöten will.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

gloob

#428
Sorry für den Doppelpost, aber vielleicht kann mir hier jemand helfen.


Jemand eine Idee, warum mir mein Board eine Spannung von 0,4V anzeigt in FHEM?

Internals:
   CFGFN     
   DEF        222003
   IODev      myHmUARTLGW
   LASTInputDev myHmUARTLGW
   MSGCNT     17
   NAME       HM_222003
   NOTIFYDEV  global
   NR         1240
   STATE      T: 0.0 L: 0
   TYPE       CUL_HM
   lastMsg    No:03 - t:10 s:222003 d:49AD48 0225000000
   myHmUARTLGW_MSGCNT 17
   myHmUARTLGW_RAWMSG 0501002603A01022200349AD480225000000
   myHmUARTLGW_RSSI -38
   myHmUARTLGW_TIME 2018-06-16 21:30:43
   protLastRcv 2018-06-16 21:30:43
   protResnd  5 last_at:2018-06-16 21:30:48
   protSnd    27 last_at:2018-06-16 21:30:43
   protState  CMDs_pending
   rssi_at_myHmUARTLGW cnt:17 min:-46 max:-37 avg:-40.23 lst:-38
   READINGS:
     2018-06-16 21:30:22   Activity        alive
     2018-06-16 21:20:56   CommandAccepted yes
     2018-06-16 21:30:22   D-firmware      0.15
     2018-06-16 21:30:22   D-serialNr      FHEM222003
     2018-06-16 21:30:43   PairedTo        0x49AD48
     2018-06-16 21:21:15   R-burstRx       off
     2018-06-16 21:21:15   R-pairCentral   0x49AD48
     2018-06-16 21:30:43   RegL_00.          01:00 05:64 0A:49 0B:AD 0C:48 12:10 14:03 24:00  25:00 00:00
     2018-06-16 21:30:42   batVoltage      0.40
     2018-06-16 21:30:42   battery         low
     2018-06-16 21:30:42   luminosity      0
     2018-06-16 21:30:42   powerOn         2018-06-16 21:30:42
     2018-06-16 21:30:42   recentStateType info
     2018-06-16 21:30:42   state           T: 0.0 L: 0
     2018-06-16 21:30:42   temperature     0.0
   cmdStack:
     ++A00149AD482220030103
   helper:
     HM_CMDNR   4
     PONtest    0
     cSnd       0149AD4822200300040000000000,0149AD482220030103
     mId        F101
     regLst     ,0
     rxType     156
     supp_Pair_Rep 0
     expert:
       def        1
       det        0
       raw        1
       tpl        0
     io:
       newCh      1
       newChn     +222003,02,01,00
       nextSend   1529177443.66687
       prefIO     
       rxt        2
       vccu       
       p:
         222003
         00
         01
         00
     mRssi:
       mNo        03
       io:
         myHmUARTLGW:
           -30
           -30
     prt:
       bErr       0
       sProc      2
       sleeping   0
       wuReSent   2
     q:
       qReqConf   00
       qReqStat   00
     role:
       chn        1
       dev        1
     rpt:
       IO         myHmUARTLGW
       flg        A
       ts         1529177443.46332
       ack:
         HASH(0x53189b8)
         03800249AD4822200300
     rssi:
       at_myHmUARTLGW:
         avg        -40.2352941176471
         cnt        17
         lst        -38
         max        -37
         min        -46
     shadowReg:
     tmpl:
Attributes:
   IODev      myHmUARTLGW
   IOgrp      vccu:myHmUARTLGW
   actCycle   000:10
   actStatus  alive
   autoReadReg 4_reqStatus
   expert     2_raw
   firmware   0.15
   model      HB-UW-Sen-THPL-I
   peerIDs   
   room       CUL_HM
   serialNr   FHEM222003
   subType    THPLSensor


Angelegt sind 2.8V, mit dem Multimeter gemessen.

Bei 0,4V dürfte der CC1101 garnichts machen.



Ich glaube ich habe das Problem gefunden. Ich nutze als Firmware aktuell den Stand von Udos Universalsensor. Dort wird die Batteriespannung allerdings über einen Spannungsteiler gemessen. Das kann natürlich bei der Platine nicht funktionieren, da es ja keinen gibt.
Hat vielleicht jemand eine Firmware für einen SHT10 mit dem I2C Addon Board?
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

papa

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

papa

Zitat von: gloob am 16 Juni 2018, 20:29:42
Hat jemand einen Tipp wie die Bestückung für eine SHT10 auf dem Addon Board aussehen muss?

Muss ich JP3 auf der Unterseite schließen? Ich würde jetzt spontan nur R1 und R2 mit 10K bestücken. JP1 würde ich von 2 auf 3 als Vin Brücken.
Sollte ich JP3 Brücken wenn ich später doch noch einen TSL2561 auflöten will.

Das kommt auf die Software an. JP3 leitet den Interrupt des TSL2561 an den Anschluss A0 weiter. Wenn die Software den Interrupt erwartet, muss der Jumper geschlossen werden. Mein Example braucht das nicht.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

gloob

Vielen Dank für die Hilfe. die ersten beiden Sensoren laufen jetzt, einzig die Batterieüberwachung läuft noch nicht ganz sauber aber das ist ja nur ein Softwareproblem, das werde ich noch hin bekommen. Ich muss mich jetzt nur mal in die Software einarbeiten.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

kpwg

Zitat von: gloob am 16 Juni 2018, 20:29:42
Hat jemand einen Tipp wie die Bestückung für eine SHT10 auf dem Addon Board aussehen muss?

Habe gerade mal ein Bild eines aufgebauten Sensors gemacht. Außer dem 100nF Abblock-C, den 10k-PullUps am I2C-Bus und der Brücke bei JP1 auf der richtigen Seite muss man nichts tun. Ein Blick im Schaltplan erklärt das auch von selbst. Pinreihen habe ich keine genutzt, lediglich den I2C und die Versorgungsspannung durchverbunden. Mit dem Beispiel von Jérôme https://github.com/jp112sdl/Beispiel_AskSinPP/tree/master/examples/HM-WDS40-TH-I-SHT10 klappte alles auf Anhieb. Gewundert hat mich nur, das trotz 180sec MSG_INTERVAL der Sensor alle 4min sendet. Ob das mit dem fehlenden 32kHz Quartz zusammenhängen kann? Schlimm ist das nicht- die 240sec sind ein sehr vernünftiger Intervall für solche Sensordaten.

jp112sdl

Zitat von: kpwg am 17 Juni 2018, 20:27:14Gewundert hat mich nur, das trotz 180sec MSG_INTERVAL der Sensor alle 4min sendet. Ob das mit dem fehlenden 32kHz Quartz zusammenhängen kann?

Ja, das liegt an der Ungenauigkeit des WDT im Sleep.
Ich hab bei mir bei allen 328P so ~12% Abweichung.
Im Datenblatt des 328P ist glaub ich von 10% die Rede.
TomMajor hat mal einen kleinen Sketch gebaut, um diese Abweichung zu ermitteln:
https://github.com/TomMajor/AskSinPP_Examples/tree/master/Info/WDT_Frequenz

Mittlerweile multipliziere ich bei mir einfach die Zeit mit 0.88. Dann haut es relativ genau hin.
#define MSG_INTERVAL 180 * 0.88

gloob

Zitat von: papa am 16 Juni 2018, 22:43:03
HM-WDS10-TH-O Example - einfach die anderen Sensoren raus nehmen.

Ich habe gerade etwas in einem anderen Post von dir gelesen:

Zitat von: papa am 12 Februar 2018, 19:46:20
Das ist leider nicht ganz so einfach. Das Beispiel im V2 Branch benutzt eine ältere Library. Im Master bin ich gerade dabei, das alles umzustellen. Allerdings geht der Code auch davon aus, dass ein externer Quarz mit 32,768kHz Takt an der CPU ist. Das ist bei einem "normalen" Mini nicht der Fall. Ich werde die Änderungen demnächst im Master einchecken. Dann können wir noch mal sehen.

Gibt es die Einschränkung immer noch?
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway