AskSin++ Doku
Moderator: Co-Administratoren
-
- Beiträge: 179
- Registriert: 04.05.2020, 21:31
- System: CCU
- Hat sich bedankt: 16 Mal
- Danksagung erhalten: 8 Mal
AskSin++ Doku
Hi die Webseite Finde ich schon mal super.
Ich habe aber leider keine Informationen zu verwendeten resourcen gefunden.
Manche sachen sind eindeutig, z.B. Pins/Ports.
Aber welche Timer werden verwendet,
Welcher adressbereich
im RAM/ROM / EEPROM...
Ich möchte die Module auf den OTA Bootloader umstellen wen sie fertig sind.
Dazu fände ich es von vorteil wenn man z.B. auch die Frequenz Kalibireirung im config Strig hinterlegen kann.
Ich habe aber leider keine Informationen zu verwendeten resourcen gefunden.
Manche sachen sind eindeutig, z.B. Pins/Ports.
Aber welche Timer werden verwendet,
Welcher adressbereich
im RAM/ROM / EEPROM...
Ich möchte die Module auf den OTA Bootloader umstellen wen sie fertig sind.
Dazu fände ich es von vorteil wenn man z.B. auch die Frequenz Kalibireirung im config Strig hinterlegen kann.
- Psi
- Beiträge: 512
- Registriert: 09.08.2018, 19:58
- Wohnort: Nürnberg
- Hat sich bedankt: 27 Mal
- Danksagung erhalten: 90 Mal
Re: AskSin++ Doku
Hi,
die Doku ist in der Tat etwas High-Level, in der Tiefe könnte man noch viel viel Text aufwenden aber wo fängt man an wo hört man auf.
Zudem ist es immer schwierig eine Dokumentation auf dem Stand des Codes zu halten und das würde bei so einem kleinen Projekt zu viel Aufwand bedeuten. So spezifische Fragen musst du wohl bis auf weiteres aus den Sourcen lesen.
Was den FreqTest angeht: Dieser funktioniert doch auch mit dem OTA Bootloader? Man berichtige mich wenn ich falsch liege.
PS: PullRequests sind immer gern gesehen
Grüße
Christoph
die Doku ist in der Tat etwas High-Level, in der Tiefe könnte man noch viel viel Text aufwenden aber wo fängt man an wo hört man auf.
Zudem ist es immer schwierig eine Dokumentation auf dem Stand des Codes zu halten und das würde bei so einem kleinen Projekt zu viel Aufwand bedeuten. So spezifische Fragen musst du wohl bis auf weiteres aus den Sourcen lesen.
Was den FreqTest angeht: Dieser funktioniert doch auch mit dem OTA Bootloader? Man berichtige mich wenn ich falsch liege.
PS: PullRequests sind immer gern gesehen
Grüße
Christoph
-
- Beiträge: 179
- Registriert: 04.05.2020, 21:31
- System: CCU
- Hat sich bedankt: 16 Mal
- Danksagung erhalten: 8 Mal
Re: AskSin++ Doku
Wenn ich das richtig verstanden habe muss ich den Frequenz Test mit dem Verwendeten 328P/CC1101 machen.Was den FreqTest angeht: Dieser funktioniert doch auch mit dem OTA Bootloader? Man berichtige mich wenn ich falsch liege.
Das Ergebnis wird im 328P EEPROM gespeichert, oder ich ändere die Initialisierung im Code.
Wenn ich nun den Test mit dem CC1101 in der Testbench mache ist der Initwert im EEPROM des 328P des Test Benchs gespeichert.
Löte ich den CC1101 nun in den Sensor/Aktor ein hat der 328P dort den Wert noch nicht.
Da ich die Software nicht für jeden Sensor einzeln compelieren will, um OTA zu nutzen, Muss der Initwert also anders auf den 328P kommen.
Hierzu sehe ich 3 Möglichkeiten.
1.) ich mache den Frequenz Test im Sensor nochmal.
2.) ich schreibe den ermittelten wert mit einem eigenen scetch ins eeprom (wo hin?)
3.) ich erweitre den OTA Bootloader das ich den init wert beim erstellen mit angeben kann, (und schreibe ihn wo hin?).
Da ich auch die Initialisierung der Clock frequez mit in den Bootloader verlegen will, siehe
viewtopic.php?f=76&t=58776&start=10#p581992)
ist 3.) aus meiner Sicht die schönste Lösung.
Sicher geht das für mich über den Config String. Wohin kann ich sicher auch debuggen.
Nur währe es halt einfacher gewesen ....
Wenn diese Werte auch noch verständlich über eigene Felder im makeota.html zu setzen währen könten es mehr Anwender verwenden.
Die daraus entstehenden Infos trage ich auch gerne zu AskSin++ bei.
-
- Beiträge: 12085
- Registriert: 20.11.2016, 20:01
- Hat sich bedankt: 847 Mal
- Danksagung erhalten: 2139 Mal
- Kontaktdaten:
Re: AskSin++ Doku
Die beiden Fequenz-Bytes stehen ganz vorne in den ersten beiden EEPROM Bytes
https://github.com/pa-pa/AskSinPP/blob/ ... .h#L14-L15
Die OTA-Config-Bytes befinden sich im Bootloader dort:
https://github.com/pa-pa/AskSinPP/blob/ ... vice.h#L30
Von den 16 Bytes ist sicher noch was frei!? (Ich selbst arbeite nicht mit OTA)
Dann könntest du vielleicht was mappen...
Beim Start, wenn OTA-Config-Bytes m,n != 0 dann stelle das Funkmodul auf m,n
Aber der OTA-Bootloader selbst muss ja auch schon das Funkmodul mit der korrekten Frequenz initialisieren
https://github.com/pa-pa/AskSinPP/blob/ ... .h#L14-L15
Die OTA-Config-Bytes befinden sich im Bootloader dort:
https://github.com/pa-pa/AskSinPP/blob/ ... vice.h#L30
Von den 16 Bytes ist sicher noch was frei!? (Ich selbst arbeite nicht mit OTA)
Dann könntest du vielleicht was mappen...
Beim Start, wenn OTA-Config-Bytes m,n != 0 dann stelle das Funkmodul auf m,n
Aber der OTA-Bootloader selbst muss ja auch schon das Funkmodul mit der korrekten Frequenz initialisieren
-
- Beiträge: 179
- Registriert: 04.05.2020, 21:31
- System: CCU
- Hat sich bedankt: 16 Mal
- Danksagung erhalten: 8 Mal
Re: AskSin++ Doku
Hi,
das ist doch schon mal ein guter einstieg.
Es reicht doch das die Applikation die Daten aus der richtigen stellen liest und initialisiert.
das ist doch schon mal ein guter einstieg.
Es reicht doch das die Applikation die Daten aus der richtigen stellen liest und initialisiert.
-
- Beiträge: 705
- Registriert: 22.05.2018, 10:23
- Hat sich bedankt: 24 Mal
- Danksagung erhalten: 120 Mal
Re: AskSin++ Doku
Stimmt nicht ganz. In den ersten 4 Bytes des EEPROM steht eine Checksumme, mit welcher entschieden wird, ob der EEPROM initialisiert werden muss.jp112sdl hat geschrieben: ↑10.06.2020, 08:18Die beiden Fequenz-Bytes stehen ganz vorne in den ersten beiden EEPROM Bytes
https://github.com/pa-pa/AskSinPP/blob/ ... .h#L14-L15
Dannach beginnt der Config-Aera - bis zum Start der Device-Daten, die im Constructor der Device-Klasse angegeben ist (Standard ist 0x20).
Die Frequenz für den Bootloader müsste man direkt im makeota.html patchen. Sonst geht OTA-Update auch nicht. Dann könnte man aber auch für das Device den HEX-Code direkt patchen und könnte sich das Speichern im EEPROM sparen.jp112sdl hat geschrieben: ↑10.06.2020, 08:18Die OTA-Config-Bytes befinden sich im Bootloader dort:
https://github.com/pa-pa/AskSinPP/blob/ ... vice.h#L30
Von den 16 Bytes ist sicher noch was frei!? (Ich selbst arbeite nicht mit OTA)
Dann könntest du vielleicht was mappen...
Beim Start, wenn OTA-Config-Bytes m,n != 0 dann stelle das Funkmodul auf m,n
Aber der OTA-Bootloader selbst muss ja auch schon das Funkmodul mit der korrekten Frequenz initialisieren
Anfragen zur AskSin++ werden nur im Forum beantwortet
- stan23
- Beiträge: 2029
- Registriert: 13.12.2016, 21:14
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Altmühltal
- Hat sich bedankt: 576 Mal
- Danksagung erhalten: 335 Mal
- Kontaktdaten:
Re: AskSin++ Doku
Der Bootloader muss doch initial mal ins Flash, und die Fuses gesetzt werden.
Könnte man da nicht das EEPROM mit beschreiben?
Könnte man da nicht das EEPROM mit beschreiben?
Viele Grüße
Marco
RaspberryMatic als VM auf einem NUC mit Proxmox und USB-Funkmodul
~80 Geräte (HM, HmIP, HMW, HBW, AskSin)
Marco
RaspberryMatic als VM auf einem NUC mit Proxmox und USB-Funkmodul
~80 Geräte (HM, HmIP, HMW, HBW, AskSin)
-
- Beiträge: 179
- Registriert: 04.05.2020, 21:31
- System: CCU
- Hat sich bedankt: 16 Mal
- Danksagung erhalten: 8 Mal
Re: AskSin++ Doku
Hm, wenn man die Daten die per Sensor unterschiedlich sein sollen/müssen in eine im ROM definierten Speicherbereich legt,
-kann man das patchen.
-Den Define kann bei der Instazierung der klasse genutzt werden (auch wenn die Daten eventuell doppelt gespeichert werden)
Ich schaue mir mal den Linker an was der so kann.
Bootloader und Applikation müssen halt an die gleiche stelle schauen
Im fall ohne OTA kann alles bleiben wie es ist.
-kann man das patchen.
-Den Define kann bei der Instazierung der klasse genutzt werden (auch wenn die Daten eventuell doppelt gespeichert werden)
Ich schaue mir mal den Linker an was der so kann.
Bootloader und Applikation müssen halt an die gleiche stelle schauen
Im fall ohne OTA kann alles bleiben wie es ist.