Hauptmenü

Message aus log senden

Begonnen von JorEl, 01 September 2013, 09:36:20

Vorheriges Thema - Nächstes Thema

JorEl

ZitatIch überlege noch, ob es Sinn macht "G" bzw. "i" zu "missbrauchen", oder es besser wäre ein eigenen Befehl zu erfinden...

Ich denke "i" ist ein wenig zu weit weg bzw. einfach zu unterschiedlich, das Protokoll hat zwar schon Ähnlichkeiten zu Intertechno, aber es ist dennoch in mehreren Punkten unterschiedlich.

"G" mit flexiblem Sync wäre sicher eine gute Möglichkeit - im Grunde genommen wäre es unabhängig von diesem Thema großartig, diese Flexibilität beim Senden von RAW-Daten zu senden. :-)

Aber ein eigener Befehl wäre natürlich eine großartige Sache - eine nicht geringe Menge an Hardwarekomponenten die das Conrad RSL nutzt gibt es schließlich, noch dazu relativ kostengünstig verglichen mit anderen Geräten. :-)

mehf

So, habe mal versucht "G" zu erweitern. Ich kann aber leider nicht selber testen.
Die Syntax sieht dann so aus:

  GXhhhhllllssNnprHHLLhhllDDDD...

wobei hhhh = Sync Pulse Hightime (in 16us)
und   llll = Sync Pulse Lowtime (in 16us)
Der Rest bleibt wie gehabt. Folgt kein "X" nach dem "G" bleibt alles beim alten.
Die sync Anzahl solltest du auf 0 setzen, sonst werden beide Sync Methoden verwendet.
Viel Glück

JorEl

Hallo,

danke für die angepasste Firmware. Ich hab es jetzt mal getestet und wie es aussieht stürzt CUL nach dem ersten Versuch ab... ich kann zumindest keinen zweiten Befehl mehr ausführen und in meinem Testprogramm kommt es zu einer write-exception auf den seriellen Port.

Mein Testbefehl war GX002E01A900400528515128BE5E13C0 - wenn ich es richtig verstanden habe, dann sind die hhhh und llll Angaben im konkreten Fall 750 / 16 = 46 --> 0x002E bzw. 6800 / 16 = 425 --> 0x01A9, oder sind diese Parameter nicht als Hex-Werte zu übergeben?

Es sieht dann so aus:

GX[hhhh=002E][llll=01A9][sync=00][N=4][n=0][p=0][r=5][HH=28 --> Dez. 40 --> *16 = 640][LL=51 --> Dez. 81 --> *16 = 1296][hh=51][ll=28][DDDD=BE5E13C0]

Wende ich die Syntax wirklich vollständig korrekt an? Nur um eine mögliche Fehlerquelle hier auszuschließen...

Habe natürlich auch versucht llll und hhhh als Dezimalzahlen zu übergeben, das führt jedoch ebenfalls dazu, dass beim nächsten Aufruf wieder eine Exception auftritt.

mehf

Genau richtig hhhh, llll sind in hex.
Ich glaub ich hab den Bug gefunden...

JorEl

Hi,

perfekt, es funktioniert jetzt absolut zuverlässi und die Distanz ist offenbar deutlich höher als mit der Fernbedienung. :-)

Vielen, vielen Dank für die Hilfe!

Hab nun zwar schon das nächste kleine "Problem" damit es in die Oberfläche von fhem einzubauen, aber ich denke dazu mache ich besser ein eigenes Thema auf.

mehf


JorEl

Hi,

ich muss das Thema nochmal ansprechen - aber nur wegen einer - hoffentlich lösbaren - Kleinigkeit. :-)

Wäre es möglich, den Sourcecode der culfw-Anpassungen zu bekommen? Ich bastel nun auch zunehmend damit rum und die Original-Firmware enthält ja soweit ich gesehen habe noch nicht diese Erweiterung...

Vielen Dank im Voraus!

JorEl

Hi,

sorry, wenn ich das Thema nochmal nach vorne reihe... ich hab nun auch am SVN nachgesehen und die Anpassungen, mit denen RSL sehr gut funktioniert, sind wohl leider auch dort nicht enthalten - oder ich lese den Code nicht richtig. :-)

Könnte ich die Veränderungen bitte bekommen bzw. gegebenenfalls auch nur eine kurze Info, was angepasst werden muss, um zum selben Ergebnis zu kommen?

Vielen Dank

mehf

hier nun endlich die Code Anpassungen...