AskSin++ Doku

Entwicklung und Bau von Hardware aller Art, die im HM-Umfeld eingesetzt werden kann

Moderator: Co-Administratoren

Antworten
FrankenKai
Beiträge: 80
Registriert: 04.05.2020, 21:31
System: CCU
Hat sich bedankt: 2 Mal
Danksagung erhalten: 4 Mal

AskSin++ Doku

Beitrag von FrankenKai » 09.06.2020, 21:29

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.

Benutzeravatar
Psi
Beiträge: 350
Registriert: 09.08.2018, 19:58
Wohnort: Nürnberg
Hat sich bedankt: 20 Mal
Danksagung erhalten: 45 Mal

Re: AskSin++ Doku

Beitrag von Psi » 09.06.2020, 22:56

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

papa
Beiträge: 475
Registriert: 22.05.2018, 10:23
Danksagung erhalten: 42 Mal

Re: AskSin++ Doku

Beitrag von papa » 10.06.2020, 07:37

Wer Zeit und Lust hat, kann hier gerne aktiv werden - ist doch OpenSource :-)
Anfragen zur AskSin++ werden nur im Forum beantwortet

FrankenKai
Beiträge: 80
Registriert: 04.05.2020, 21:31
System: CCU
Hat sich bedankt: 2 Mal
Danksagung erhalten: 4 Mal

Re: AskSin++ Doku

Beitrag von FrankenKai » 10.06.2020, 07:52

Was den FreqTest angeht: Dieser funktioniert doch auch mit dem OTA Bootloader? Man berichtige mich wenn ich falsch liege.
Wenn ich das richtig verstanden habe muss ich den Frequenz Test mit dem Verwendeten 328P/CC1101 machen.
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.

jp112sdl
Beiträge: 5433
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 216 Mal
Danksagung erhalten: 445 Mal
Kontaktdaten:

Re: AskSin++ Doku

Beitrag von jp112sdl » 10.06.2020, 08:18

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

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

FrankenKai
Beiträge: 80
Registriert: 04.05.2020, 21:31
System: CCU
Hat sich bedankt: 2 Mal
Danksagung erhalten: 4 Mal

Re: AskSin++ Doku

Beitrag von FrankenKai » 10.06.2020, 08:34

Hi,
das ist doch schon mal ein guter einstieg.
Es reicht doch das die Applikation die Daten aus der richtigen stellen liest und initialisiert.

papa
Beiträge: 475
Registriert: 22.05.2018, 10:23
Danksagung erhalten: 42 Mal

Re: AskSin++ Doku

Beitrag von papa » 10.06.2020, 09:45

jp112sdl hat geschrieben:
10.06.2020, 08:18
Die beiden Fequenz-Bytes stehen ganz vorne in den ersten beiden EEPROM Bytes
https://github.com/pa-pa/AskSinPP/blob/ ... .h#L14-L15
Stimmt nicht ganz. In den ersten 4 Bytes des EEPROM steht eine Checksumme, mit welcher entschieden wird, ob der EEPROM initialisiert werden muss.
Dannach beginnt der Config-Aera - bis zum Start der Device-Daten, die im Constructor der Device-Klasse angegeben ist (Standard ist 0x20).
jp112sdl hat geschrieben:
10.06.2020, 08:18
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
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.
Anfragen zur AskSin++ werden nur im Forum beantwortet

stan23
Beiträge: 1094
Registriert: 13.12.2016, 21:14
System: Alternative CCU (RaspberryMatic etc.)
Wohnort: Altmühltal
Hat sich bedankt: 175 Mal
Danksagung erhalten: 107 Mal
Kontaktdaten:

Re: AskSin++ Doku

Beitrag von stan23 » 10.06.2020, 09:57

Der Bootloader muss doch initial mal ins Flash, und die Fuses gesetzt werden.
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)

FrankenKai
Beiträge: 80
Registriert: 04.05.2020, 21:31
System: CCU
Hat sich bedankt: 2 Mal
Danksagung erhalten: 4 Mal

Re: AskSin++ Doku

Beitrag von FrankenKai » 10.06.2020, 11:37

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.

Antworten

Zurück zu „Hardwareentwicklung und Selbstbau von Aktoren und Sensoren“