SIGNALDuino Empfänger Firm- und Hardware

Begonnen von Ralf9, 02 Oktober 2016, 22:59:51

Vorheriges Thema - Nächstes Thema

Ralf9

Zitat von: Sidey am 25 Januar 2017, 21:11:54
Die Variante, einen Wert nur 3 Bits belegen zu lassen bringt auch noch mal deutliche Geschwindigkeitsvorteile.
Ich denke, ich werde die den message Array auf die Bitstore Klasse umrüsten und die Bitstore Klasse noch ein wenig mit Operatoren ausrüsten.

Dann wird intern immer sparsam gespeichert und die Ausgabe kann im Normalfall dann auch so erfolgen.

Kannst Du abschätzen ob der 8 MHz pro mini dafür noch schnell genug ist?


Zitat
Weitere Überlegung, die Werte hinter P=1252  können wir als int (16 bit) anstelle der 4 zeichen (32 bit) übergeben.

Ist wahrscheinlich keine so gute Idee. z.B. P=4098 wäre 0x1002 und wäre dann Zeilenende und Nachrichtenbeginn

Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Sidey

Zitat von: Ralf9 am 25 Januar 2017, 21:39:24
Kannst Du abschätzen ob der 8 MHz pro mini dafür noch schnell genug ist?

Ich schätze mal ja. Die serielle Ausgabe ist bei 8Mhz gleich schnell.


Zitat von: Ralf9 am 25 Januar 2017, 21:39:24
Ist wahrscheinlich keine so gute Idee. z.B. P=4098 wäre 0x1002 und wäre dann Zeilenende und Nachrichtenbeginn


4096 wäre b0001000000000010

Da würde ich erst mal kein Problem sehen. Aber das schauen wir uns an, wenn wir an dem Punkt sind.
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

RaspII

Hallo,
ich bin am verzweifeln.
Ich habe mit einen SIGNALduino mit den Standard 433Mhz Billigmodulen gebaut, der funktioniert auch super.
Nur beim Somfy Protokoll habe ich keine Reichweite, wunder auch nicht, da die Somfy-Frequenz 433,42 Mhz ist, der SIGNALduino sendet mit 433,92Mhz
(das Problem ist im Forum auch beschrieben).

Kein Problem, ihr habt inzwischen ja den CC1101 in die SIGNALduino Firmware eingebaut.
Also habe ich mir jetzt einen SIGNALduino-CC1101 aufgebaut, da funktioniert jetzt aber (fast) nichts mehr.
Sobald ich das CC1101-Modul mit dem SIGNALduino verbinde klappt nichts mehr, der SIGNALDuino lässt sich nicht mehr initialisieren.
(Schaltung wie NanoCul incl. Widerstandsteiler mit 470/1000 Ohm siehe : https://wiki.fhem.de/wiki/Selbstbau_CUL#Schaltplan)
Der Fehlerfall sieht im Logfile folgendermaßen aus:

2017.01.25 22:36:18 3: sduino reset
2017.01.25 22:36:18 3: Opening sduino device /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0
2017.01.25 22:36:18 3: Setting sduino serial parameters to 57600,8,N,1
2017.01.25 22:36:19 1: sduino/define: /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0@57600
2017.01.25 22:36:19 1: sduino/init: /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0@57600
2017.01.25 22:36:19 3: sduino device opened
2017.01.25 22:36:20 3: sduino/init: disable receiver (XQ)
2017.01.25 22:36:21 3: sduino/init: get version, retry = 0
2017.01.25 22:36:31 3: sduino/init: get version, retry = 1
2017.01.25 22:36:41 3: sduino/init: get version, retry = 2
2017.01.25 22:36:51 3: sduino/init: get version, retry = 3
2017.01.25 22:36:51 2: sduino/init retry count reached. Closed
2017.01.25 22:36:51 2: sduino closed


Vertausche ich die MOSI/MISO Leitungen klappt die Initialisierung des SIGNALduino, allerdings wird kein CC1101 gefunden und ich bekomme die Version:
V 3.3.1-dev SIGNALduino - compiled at Jan 12 2017 23:04:38
ohne CC1101 angezeigt.

Entferne ich die MOSI Leitung des CC1101 (über Spannungsteiler an Pin D11 des Nano) von Pin D11, klappt die Initialisierung des SIGNALduino und ich bekomme die Version:
V 3.3.1-dev SIGNALduino cc1101 - compiled at Jan 12 2017 23:04:38
korrekt angezeit (hä, wie denn das).
Senden klappt allerdings nicht (wie denn auch ohne MoSi Leitung).
Mir ist schon schleierhaft, wie ohne MoSi Leitung überhaupt der CC1101 erkannt wird.

Hat jemand eine Idee?
(bin bzgl. HW nicht unterbelichtet, habe inzwischen 2x ProMicro CUL gebaut die seit > 1 Jahr problemlos arbeiten)

RaspII

Ralf9

#138
Du kannst mal mit
get sduino raw e
einen factory reset machen
und dann ein
get sduino ccreg 99

Edit:
Du kannst auch mal die a-culfw flashen um zu testen ob Deine Hardware ok ist.

Edit2:
Du kannst Dich auch mit Putty oder dem seriellen Monitor der Arduino IDE verbinden und dann z.B. "V" senden

Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

RaspII

@ralf9
Du bist der Beste !!!
get sduino raw e
hat zum Erfolg geführt!
Musste vorher nur D11 abziehen damit sich der "get" Befehl an die Oberfläche traut (der SINGALduino sich initialisieren lässt).

Hatte ich im Forum schonmal gelesen. Hatte aber ausversehen "set" anstelle von "get" eingegeben, da kam dann nur eine Fehlermeldung.
Was passiert bei diesem Befehl genau?

Der SIGNALduino sendet noch auf 433,92Mhz (geringfügig niedriger), jetzt muss ich mal schauen/nachlesen wie ich die 433,42Mhz einstelle.

Danke für die superschnelle Hilfe (ich geht nach dem Erfolg jetzt erst mal ins Bett)
RaspII

Ralf9

mit dem factory reset wird das EEPROM mit den richtigen Werten initalisiert und dann ein reset des CC1101 durchgeführt.
Du kannst Dir das EEPROM mit "get sduino r00n" anschauen.

Wir hatten so einen Fall schon mal, wir konnten es aber nicht nachvollziehen. Evtl gibt es ganz seltene Fälle wo der automatische factory reset am Anfang nicht klappt.

Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

RaspII

#141
Habe nach einigem suchen nicht rausbekommen, wie man per FHEM die Frequenz des SIGNALduino-CC1101 verändern kann.
@Ralf9: vielleicht hast Du einen Tipp / einen Link wo das beschrieben ist.
RaspII

Ralf9

Zitat von: Ralf9 am 25 Januar 2017, 23:50:31
Wir hatten so einen Fall schon mal, wir konnten es aber nicht nachvollziehen. Evtl gibt es ganz seltene Fälle wo der automatische factory reset am Anfang nicht klappt.

Ich denke ich habe den Fehler in der Firmware gefunden
in der RF_RECEIVER.ino Zeile 876
https://github.com/RFD-FHEM/SIGNALDuino/blob/dev-r33_cc1101/RF_Receiver/RF_Receiver.ino

Damit dürfte sich das Verhalten erklären. Wenn beim ersten einschalten des nano der CC1101 nicht erkannt wird, wird das EEPROM als initialisiert markiert, aber es wird kein factory reset durchgeführt.

Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Ralf9

Zitat von: RaspII am 26 Januar 2017, 00:13:54
Habe nach einigem suchen nicht rausbekommen, wie man per FHEM die Frequenz des SIGNALduino-CC1101 verändern kann.
@Ralf9: vielleicht hast Du einen Tipp / einen Link wo das beschrieben ist.

set sduino cc1101_freq

Dies brauchst Du beim Somfy aber nicht machen, da wird beim Senden die Frequenz automatisch geändert.

Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

RaspII

D.h. der SIGNALduino empfangt dann immer auf der Stamdardfrequenz von 433,92Mhz, das wäre genau das gewünschte Verhalten .
Ich teste das mal heute abend.

Dann habe ich noch eine Frage:
Bei mir ändert sich der Zustand der den Somfy Devices zugeordneten Icons nicht unmittelbar nach Druck von "auf" oder "ab", sondern nur wenn ich einen Refresh der Seite mache. Weiss jemand warum das so ist?


Gesendet von meinem SM-G900F mit Tapatalk

RaspII

Sidey

Das hat irgendwas mit longpoll zu tun. Ist im Wiki bestimmt beschrieben. :)
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

RappaSan

Richtig.
Bei mir unter dem Abschnitt:
define WEB FHEMWEB 8083 global

in der fhem. cfg zu finden.

attr WEB longpollSVG 1

RaspII

#147
Zitat von: Ralf9 am 26 Januar 2017, 00:23:30
set sduino cc1101_freq

Dies brauchst Du beim Somfy aber nicht machen, da wird beim Senden die Frequenz automatisch geändert.

Gruß Ralf

Das automatische Ändern der Frequenz beim Senden tut bei mir nicht. Bestimmt habe ich wieder ein Attribut etc. vergessen (switch_rfmode 0 oder 1 bringt auch nichts)
Irgendwie steh ich auf dem Schlauch und finde auch in der Commandref und Wiki nichts.
Ich brauche hier Eure Hilfe.
Gerne mache ich danach auch einen Update der Wiki  8)

Hier noch meine aktuelle Konfig:
define sduino SIGNALduino /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0@57600
attr sduino flashCommand avrdude -c arduino -b 57600 -P [PORT] -p atmega328p -vv -U flash:w:[HEXFILE] 2>[LOGFILE]
attr sduino hardware nanoCC1101

define RolloLinks SOMFY 5F462F A9 00AD
attr RolloLinks IODev sduino
attr RolloLinks devStateIcon open:fts_shutter_10 stop:fts_shutter_30 closed:fts_shutter_100
attr RolloLinks eventMap on:down stop:stop off:up
attr RolloLinks room SOMFY
attr RolloLinks switch_rfmode 1               #### Das war nur ein Test
attr RolloLinks webCmd down:stop:up

RaspII

Ralf9

Zitat von: RaspII am 26 Januar 2017, 19:46:17
Das automatische Ändern der Frequenz beim Senden tut bei mir nicht. Bestimmt habe ich wieder ein Attribut etc. vergessen (switch_rfmode 0 oder 1 bringt auch nichts)
Irgendwie steh ich auf dem Schlauch und finde auch in der Commandref und Wiki nichts.
Ich brauche hier Eure Hilfe.

Wie ist bei Dir das log beim Senden?

Ich habe bei mir mal mit Deinem "define RolloLinks SOMFY 5F462F A9 00AD" gesendet:

2017.01.26 20:29:03.165 5: sduinoE/write: adding to queue sendMsg P43#A98A8A27084E11#R6
2017.01.26 20:29:03.165 5: sduinoE: sendmsg msg=P43#A98A8A27084E11#R6
2017.01.26 20:29:03.165 5: sduinoE: sendmsg Preparing manchester protocol=43, repeats=0, clock=640 data=A98A8A27084E11
2017.01.26 20:29:03.165 4: sduinoE/set: sending via SendMsg: SC;R=6;SR;P0=-2560;P1=2560;P3=-640;D=10101010101010113;SM;C=640;D=A98A8A27084E11;F=10AB85550A;
2017.01.26 20:29:03.266 5: sduinoE SW: SC;R=6;SR;P0=-2560;P1=2560;P3=-640;D=10101010101010113;SM;C=640;D=A98A8A27084E11;F=10AB85550A;
2017.01.26 20:29:03.276 4: sduinoE SendFromQueue: msg=SC;R=6;SR;P0=-2560;P1=2560;P3=-640;D=10101010101010113;SM;C=640;D=A98A8A27084E11;F=10AB85550A;
2017.01.26 20:29:03.989 4: sduinoE/msg READ: SC;R=6;SR;P0=-2560;P1=2560;P3=-640;D=10101010101010113;SM;C=640;D=A98A8A27084E11;F=10AB85550A;ccreg write back 10B07127C4
2017.01.26 20:29:03.989 5: sduinoE/msg READ: regexp=^S(R|C|M); cmd=sendraw msg=SC;R=6;SR;P0=-2560;P1=2560;P3=-640;D=10101010101010113;SM;C=640;D=A98A8A27084E11;F=10AB85550A;ccreg write back 10B07127C4
2017.01.26 20:29:03.989 4: sduinoE/read sendraw answer: SC;R=6;SR;P0=-2560;P1=2560;P3=-640;D=10101010101010113;SM;C=640;D=A98A8A27084E11;F=10AB85550A;ccreg write back 10B07127C4


Mit  F=10AB85550A  wird die Frequenz und Datenrate beim Senden geändert

Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

RaspII

#149
@Ralf:
Habe diesen Fehler gefunden.
Ich hatte einen FHEM Update gemacht. Mir war nicht klar, dass dann wohl der voangegangene Update:
update all https://raw.githubusercontent.com/RFD-FHEM/RFFHEM/dev-r33/controls_signalduino.txt
überschrieben wird.
Habe obigen Update jetzt wiederholt und schon funktioniert es (die Frequenz liegt mit dem grünen Modul bei 433,41 Mhz, ich denke das sollte gehen). Testen kann ich allerdings mit den echten Rolläden erst nächste Woche.

Man kann FHEM wohl beibringen, dass nach einem "FHEM Update" auch immer obiger Update mit ausgeführt wird, falls mir jemand eine Schnellbleiche geben kann: immer zu.

Jetzt bleibt nur noch das Problem mit dem Update der ICONs (attr WEB longpollSVG 1 hat nichts gebracht).
Oder senden die Rollos eine Quittung und erst dann wird die Oberfläche upgedatet?

Danke für die bisherigen Tipps, ohne Euch wäre ich verloren.
Hatte ich eigentlich schon erwähnt, dass ich das Konzept des SIGNALduino richtig Klasse finde (z.B. die Schnittstelle zur Firmware)
Dickes Lob an alle Beteiligten.
RaspII