Autor Thema: Fehlerhafte CC1101 Module  (Gelesen 37828 mal)

Offline Horti

  • Full Member
  • ***
  • Beiträge: 238
Antw:Fehlerhafte CC1101 Module
« Antwort #270 am: 12 Mai 2020, 08:36:38 »
Danke für den gut gemeinten Ratschlag. Die Firmmware von Dirks Wettersensoren basiert aber nicht auf papas asksinpp, deswegen kann ich da auch nicht einfach Werte ins EEPROM schreiben. Sicher gebe es auch hier andere Möglichkeiten, als die Frequenz zu patchen, aber darum geht es hier nicht.

Offline papa

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1796
Antw:Fehlerhafte CC1101 Module
« Antwort #271 am: 12 Mai 2020, 09:34:38 »
Und wieder ich :)
Ich habe an der seriellen Konsole gelauscht:
AskSin OTA Bootloader V0.7.0

TX bootloader sequence
Wait for CB msg
Timeout
CRC fail, Reboot

Was habe ich gemacht:

Welche Checksumme wird denn vom OTA-Bootloader geprüft?
Du musst natürlich auch die Firmware übertragen, nachdem der Bootloader geflasht wurde.

Hier stehen die Schritte alle beschrieben: https://github.com/pa-pa/AskSinPP/tree/master/bootloader/avr
Oder hier: https://wiki.fhem.de/wiki/Universalsensor#OTA_.28OverTheAir.29_Firmwareupdate

Siehe Bild, wo die Daten im HB-UW-Sen-THPL_update_V0_15_000_150303.hex zu patchen sind.
Hier ist ein Onlinetool zum Checksumme berechen: https://www.fischl.de/hex_checksum_calculator/
« Letzte Änderung: 12 Mai 2020, 09:41:58 von papa »
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Offline Horti

  • Full Member
  • ***
  • Beiträge: 238
Antw:Fehlerhafte CC1101 Module
« Antwort #272 am: 12 Mai 2020, 10:26:29 »
Moin,

ich kenn die ganzen Schritte mittlerweile ausreichend genau, denke ich, habe ich ohne Frequnzanpassung auch mehr als einmal gemacht. Ich habe jetzt wie gesagt eine Hex-Datei mit der makeota.html, die auch die Firmware enthält, erzeugt. Die funktioniert auch grundsätzlich, nur die Frequenzeinstellung ist für das verwendete Funkmodul nicht optimal oder halt umgekehrt :)
Also habe ich jetzt die beiden Frequenstrings in der Datei korrigiert (50 durch CA ersetzt), die Checksumme korrigiert und die entstandene Hex-Datei geflasht. Dabei bekomme ich die Ausgabe auf der seriellen Konsole.
Die ganzen Schritte gerade noch mal durchgeführt, beide Hex-Dateien s. Anhang, aber trotzdem bleibt das Ding im Bootloader stecken.
Habe ich irgendein entscheidendes Detail übersehen?

Offline papa

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1796
Antw:Fehlerhafte CC1101 Module
« Antwort #273 am: 12 Mai 2020, 10:39:16 »
Sorry - keine Zeit mir das im Detail anzusehen.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Offline Horti

  • Full Member
  • ***
  • Beiträge: 238
Antw:Fehlerhafte CC1101 Module
« Antwort #274 am: 12 Mai 2020, 13:41:45 »
Klar, verstehe ich, Danke für Deine Hilfe bis hierhin.

Vielleicht kann sich das Thema ja noch jemand anders ansehen, beide Dateien sind identisch, bis auf die Zeilen mit der gepatchten Frequenzeinstellung, die Checksummen sind angepasst. Trotzdem weigert sich der Bootloader im 2. Fall die Applikation zu starten (CRC fail).

Offline frank

  • Hero Member
  • *****
  • Beiträge: 9035
Antw:Fehlerhafte CC1101 Module
« Antwort #275 am: 12 Mai 2020, 14:15:21 »
hier sollte ja die crc prozedur vom damaliegen bootloader beschrieben sein:
https://github.com/jabdoa2/Asksin_OTA_Bootloader/blob/master/README.md
FHEM: 6.0(SVN) => Pi3(stretch)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [hm.js]: https://forum.fhem.de/index.php/topic,106959.0.html

Offline Horti

  • Full Member
  • ***
  • Beiträge: 238
Antw:Fehlerhafte CC1101 Module
« Antwort #276 am: 12 Mai 2020, 17:39:10 »
Ich habe nun doch eine neue Firmware-Datei mit der aktuellen Linux-Version der Arduino-IDE erzeugt (man wächst mit seinen Aufgaben :) ). Und zwar einmal mit der Standard- und einmal mit der geänderten Frequenz. Erwartungsgemäß haben sich die hex-Dateien nur an 2 Stellen unterschieden: Frequenz selber und Zeilen-Prüfsumme
pi@raspberrypi:~/Downloads $ diff -y --suppress-common-lines WetterSensor.cpp.hex WetterSensor.cpp_CA.hex
:10025000063D070C0B060D210E650F5010C81193BB            | :10025000063D070C0B060D210E650FCA10C8119341

Meine ursprüngliche Frage, wo man die Frequenz patchen kann, wäre damit beantwortet. Warum es bei der Ausführung hackt muss ich ggf. woanders weiter analysieren.

Offline Dirk P.

  • New Member
  • *
  • Beiträge: 49
Antw:Fehlerhafte CC1101 Module
« Antwort #277 am: 08 Juni 2020, 14:11:38 »
Für den NanoCul gibt es noch keine Lösung. Du kannst aber auch den FreqTest-Sketch aus der AskSin++ nehmen und ermitteln, wie weit das Funkmodul daneben liegt. Dann müsstest Du die Werte im SourceCode des NanoCul entsprechend anpassen.
Hallo, ich bin am verzeifeln.
Habe auch zwei Module bekommen deren Frequenz zu tief senden und empfangen.
Ich nutze es für meine eQ3 Thermostaten.
Das Modul das funzt liegt nur ewas neben der Frequenz....
Nun habe ich die neuen Werte die ich ausgerechnet habe, in die rf_asksin.c. eingefügt und neu compilliert.
Nichts, keine Frequenzänderung.
Jetzt habe ich in der cc1100.c entdeckt, das dort auch die Standardwerte drin stehen, auch geändert...nichts.
Ich verstehe einfach nicht, das nicht ein Modul (auch das funktionierende) auf eine Änderung reagiert....
Den SelbstbauCul habe ich schon zigmal überprüft und ist nach der Schaltung entstanden > https://wiki.fhem.de/wiki/Selbstbau_CUL
...ich muss aber gestehen das ich aus der ioBroker Gemeinde stamme...
Da hier aber das Thema behandelt wird/wurde, wende ich mich an euch.

Danke
« Letzte Änderung: 08 Juni 2020, 14:58:20 von Dirk P. »

Offline papa

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1796
Antw:Fehlerhafte CC1101 Module
« Antwort #278 am: 16 Juni 2020, 23:35:33 »
Da man ja praktisch keine ordentlichen CC1101 Module mehr kaufen kann, habe ich mal das Frequenzhandling im Zusammenhang mit dem OTA-Bootloader etwas verbessert. Die neue "makeota.html" Seite erlaubt die Eingabe der ermittelten Frequenz und patched den OTA-Bootloader mit den entsprechenden Werten. Außerdem kann jetzt im Sketch das Define "USE_OTA_BOOTLOADER_FREQUENCY" gesetzt werden. Dann wird im Sketch auch die Einstellung aus dem Bootloader übernommen. Somit braucht die Frequez nur einmal - im Bootloader - gesetzt werden.
Bei der Gelegenheit habe ich die "makeota.html" Seite auch überarbeitet. Die Model-ID kann jetzt auch aus einer Drop-Down-Liste ausgewählt werden. Ich suche noch jemanden, der mal alle Original und Homebrew Geräte dort einträgt und aktuell hält  :D
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire
Gefällt mir Gefällt mir x 2 Liste anzeigen

 

decade-submarginal