SIGNALDuino Empfänger Firm- und Hardware

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

Vorheriges Thema - Nächstes Thema

Ralf9

Die register sollten normalerweise automatisch richtig gesetzt werden.

initEEPROM() macht beim ersten starten einen Factory reset. Der Factory reset kopiert die richtigen registerwerte ins EEPROM.
Mit CCinit wird dann der CC1101 mit den Werten vom EEPROM initialisiert

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

Okay,  bei mir wird aber nicht das identische wie bei dir ausgegeben...

An Folgendem Beispiel kann ich den Unterschied erklären:

0x0D, // 00 IOCFG2    29     GDO2 as serial output


Bei dir wurde 0d bei mir 29 ausgegeben.
Muss ich das jetzt verstehen?

Was das Problem mit der Ausgabe von Signalen angeht habe ich den Fehler ausfindig gemacht.
Da mir der Kram dauernd abgeschmiert ist, habe ich doch CCinit auskommentiert.

Seit dem stimmen auch die Ausgaben der Register mit deinen überein und es werden fleissig Daten empfangen.
Ich denke ich habe auch eine Idee, wann wir den RSSI Wert abrufen. Mich würde aber interessieren, wie das geht...

Grüße Sidey

Jetzt gehts.
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

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

Ralf9

Mit C34 kannst Du den RSSI auslesen. Du müsstest also während die Nachricht in den FIFO eingelesen wird, das Register 0x34 auslesen.

Mach mal ein "r00n" und "C99"
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

gut, ich habe RSSI Auslesen eingebaut und es in dbm umgerechnet.

Man müsste den RSSI Wert alternativ wohl auch am Ende der Übertragung im RX Buffer anhängen und auslesen können.
Wie wir den RSSI Wert nun weiter verarbeiten weiss ich noch nicht.
Mit der aktuellen Implementierung wird er auch sehr oft vom cc1101 abgefragt. Ob da so gut ist.


Grüße Sidey
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

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

Ralf9

Ja, der RSSI Wert müsste dann am Ende der raw Nachricht angehängt werden z.B.
..CP=1;SP=2;R=-73;
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

Hi Ralf,

Weisst Du, ob die Data rate, auch im asynchron Modus eine Auswirkung hat?

Vielleicht ich die ja für den einen Temp Sensor zu niedrig eingestellt?

Grüße Sidey
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

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

Ralf9

Zitat von: Sidey am 25 Dezember 2016, 16:15:46
Weisst Du, ob die Data rate, auch im asynchron Modus eine Auswirkung hat?

Vielleicht ich die ja für den einen Temp Sensor zu niedrig eingestellt?

Ich habe das hier gefunden, kannst Du damit was anfangen?
https://e2e.ti.com/support/wireless_connectivity/low_power_rf_tools/f/155/t/67311

weihnachtliche Grüße von 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

Hi Ralf,

Ich werte das mal als klares Ja.

Wenn ich mich jetzt nicht total verrechnet habe ist der cc1101 auf 56kbaud eingestellt.

Nicht schlecht, aber vielleicht nicht hoch genug?

mdmcfg3 ist auf 196 (0xc4) gesetzt. Du kannst es ja mal zum Testen etwas höher setzen.

Frohe Weihnachten und Grüße Sidey
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

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

Ralf9

#53
nach dieser Rechnung ist er momentan auf 5,6 kbaud eingestellt, ist dies evtl zu wenig?
0xC4, // 11 MDMCFG3 (x)   DataRate: 5603,79 Baud ((256+196)*2^7)*26000000/(2^28)

Macht es Sinn, das get ccconf zu erweitern, daß auch die DataRate angezeigt wird?
z.B.
ccconf: freq:433.920MHz bWidth:325KHz rAmpl:42dB sens:4dB  DataRate: 5603,79 Baud
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

Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

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

Ralf9

ich habe die DataRate mal auf 25341.03Baud erhöht, hat keine Verbesserung gebracht. Bei einer DataRate größer 100kbaud wurden keine Nachrichten mehr empfangen.
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

Seltsam, das wundert mich, dass das Empfangen bei einer zu hohen Abtastrate nicht geht.


Ich habe die cc1101 Firmware inklusive ein paar Debug Meldungen beim Initialisieren mit in das FHEM Repo gepackt

update all https://raw.githubusercontent.com/RFD-FHEM/RFFHEM/dev-r33/controls_signalduino.txt


Grüße Sidey
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

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

Sidey

Zitat von: Ralf9 am 25 Dezember 2016, 22:06:55
nach dieser Rechnung ist er momentan auf 5,6 kbaud eingestellt, ist dies evtl zu wenig?
0xC4, // 11 MDMCFG3 (x)   DataRate: 5603,79 Baud ((256+196)*2^7)*26000000/(2^28)

Ich habe mal auf 76 KBaud gestellt, ich empfange noch gut, und die Werte stimmen meiner Meinung nach nun besser mit denen des RXB6 überein:

ccreg 00: 0D 2E 2D 07 D3 91 3D 04 32 00 00 06 00 10 B0 71  ccreg 10: 58 34 30 23 B9 00 07 00 18 14 6C 07 00 90 87 6B  ccreg 20: F8 56 11 EF 2C 15 1F 41 00 59 7F 3F 88 31 0B


Ich habe Datarate_M  auf 0x34 / 52 gesetzt und Datarate_E  auf 8

WS1334
WS1258


Gehe ich auf 115Kbaud, dann wird mein RSSI Wert sehr niedrig.

Zitat von: Ralf9 am 25 Dezember 2016, 22:06:55
Macht es Sinn, das get ccconf zu erweitern, daß auch die DataRate angezeigt wird?
z.B.
ccconf: freq:433.920MHz bWidth:325KHz rAmpl:42dB sens:4dB  DataRate: 5603,79 Baud
Ja, warum nicht get config erweitern und einfach nach dem Key=Value Prinzip wie schon MS=X;MU=Y; usw erweitern.
FRE=433,920Mhz;BW=328KHz;AMP=42;ses=4;DR=56K; 

Was auch sein könnte, ist dass der EAS800 nicht auf 433,920 Mhz sendet und er deshalb nicht empfangen wird.

Grüße Sidey
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

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

Ralf9

#58
mit Deiner letzten Änderung funktioniert nun auch das RSSI

ca 1-2m Entfernung:
2016.12.27 10:21:13.426 4 : sduinoE/msg READ: MS;P2=477;P4=-1959;P5=-3916;P6=-9198;D=26242524252425242424252425242524252424242425252425242524242424252424252524;CP=2;SP=6;R=48;O;
2016.12.27 10:21:13.427 4 : sduinoE: Decoded MS Protocol id 0 dmsg s54550D426000 length 40 RSSI = -50


ca 5-10m Entfernung
2016.12.27 10:21:39.784 4 : sduinoE/msg READ: MS;P0=-1956;P3=492;P6=-3894;P7=-9204;D=37303630363636303030303630303630363030303036363036303636363030363036303030;CP=3;SP=7;R=27;O;
2016.12.27 10:21:39.785 4 : sduinoE: Decoded MS Protocol id 0 dmsg s5C250D728000 length 40 RSSI = -60.5


ein Stockwerk drüber
2016.12.27 10:33:32.734 4 : sduinoE/msg READ: MS;P0=541;P1=-9034;P2=-2102;P3=-4140;D=0102030303020202030202020302020202030203020302020202030303020202030202020302;CP=0;SP=1;R=4;O;
2016.12.27 10:33:32.734 4 : sduinoE: Decoded MS Protocol id 0 dmsg s7110A8711000 length 40 RSSI = -72

2016.12.27 10:35:42.744 4 : sduinoE/msg READ: MS;P2=592;P3=-2088;P4=-8928;P5=-4119;D=2423252523252523232323232323232323252325232523252525232323232525252523252325;CP=2;SP=4;R=244;
2016.12.27 10:35:42.744 4 : sduinoE: Decoded MS Protocol id 0 dmsg s6C00AB87A800 length 40 RSSI = -80


ich habe die DataRate mit in das get ccconf eingebaut
ccconf: freq:433.920MHz bWidth:325KHz rAmpl:42dB sens:8dB (DataRate:5603.79Baud)

Nachtrag:
nachdem ich in der signaldecoder.cpp bei einigen "#endif" das ; entfernt und die 31 durch 15 ersetzt hatte, konnte ich es mit der Arduino IDE fehlerfrei compielieren.

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

#59
Zitat von: Sidey am 27 Dezember 2016, 01:16:58
Was auch sein könnte, ist dass der EAS800 nicht auf 433,920 Mhz sendet und er deshalb nicht empfangen wird.

Ich habe mal die bWidth erhöht, nun empfange ich einen von meinen zwei EAS800
ccconf: freq:433.920MHz bWidth:464KHz rAmpl:42dB sens:4dB (DataRate:5603.79Baud)

Aber gegen den RXB6 mit einer selbstgebastelten Groundantenne hat der CC1101 keine Change, damit empfange ich auch einen Sensor vom Nachbar.

Weiß zufällig jemand was der RXB6 für eine Bandbreite hat?

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