Seite 3 von 4

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Dienstag 26. September 2017, 14:45
von gusi
Hallöchen!

Ich kenne das DemoPad nicht. Aber kannst mal schauen, ob es da die Möglichkeit gibt, die Darstellung der Antworten nicht in ASCII sondern in Hex oder Bytes einzustellen.
flinke flasche hat geschrieben: MV? -> ist der GET Befehl. An Stelle des ? gibt er mir dann eine Zahl zurück.

In der Abfrage (um ein Textfeld zu füllen indem die Lautstärke dann steht) geben ich das dann so an, dass er mir die Zahl immer ausgibt -> MV(.*)
Klar, die Zahl wird ja auch als ASCII Zeichen dargestellt. Dein ARCAM liefert aber keine ASCII Zeichen im darstellbaren Bereich zurück und deshalb siehst Du nichts, obwohl sie da sind/gesendet wurden. Mit Regular Expressions wirst Du dir da dann auch schwer tun etwas zu erkennen. Ich denke, Du bist da voll vom DemoPad und der Darstellung der Antwort abhängig.

Ciao,
Christian.

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Dienstag 26. September 2017, 15:12
von flinke flasche
Das hört sich nicht gut an.
In Demopad kann ich diesbezüglich nichts einstellen. Zumindest wüsste ich nicht wo, kann aber heute Abend mal schauen.

Dann bleibt wohl nur der Umweg über FHEM, sollte das nicht gehen, oder?

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Dienstag 26. September 2017, 15:56
von Joker82
In FHEM saß ich schon einmal vor dem gleichen Problem für meinen Sony Projektor. Soweit ich das vor einem Jahr recherchieren konnte, gibt es leider keinen fertigen Code zum umschreiben, sprich man müsste quasi ein neues Modul selber schreiben, da bin ich dann ausgestiegen :confused2:

Also wenn Du unter FHEM eine Lösung findest, wäre ich auch interessiert...

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Dienstag 26. September 2017, 16:00
von flinke flasche
Joker82 hat geschrieben:In FHEM saß ich schon einmal vor dem gleichen Problem für meinen Sony Projektor. Soweit ich das vor einem Jahr recherchieren konnte, gibt es leider keinen fertigen Code zum umschreiben, sprich man müsste quasi ein neues Modul selber schreiben, da bin ich dann ausgestiegen :confused2:

Also wenn Du unter FHEM eine Lösung findest, wäre ich auch interessiert...
Schade, von dir hätte ich jetzt auf eine Lösung gehofft :lol:
So gut bin ich dann auch nicht in FHEM :no:
Aber irgendwie muss man das Problem ja lösen können.

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Dienstag 26. September 2017, 16:15
von Joker82
Naja...

Jemand der Programmieren kann, könnte dieses Protokoll wohl ziemlich leicht programmieren. Bzw. müssen hierfür glsube zwei Module in FHEM zusammen arbeiten und kommunizieren und dann vom zum steuernden Gerät zu lesen und dieses zu senden...

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Dienstag 26. September 2017, 16:21
von flinke flasche
Joker82 hat geschrieben:Naja...
Jemand der Programmieren kann,
und schon bin ich raus :wavecry:

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Dienstag 26. September 2017, 16:29
von Joker82
An der gleichen Stelle binnich auch gescheitert :totlachen:

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Donnerstag 28. September 2017, 07:20
von gusi
Hallöchen!

Also: ich kann zwar programmieren, habe aber keine Ahnung von FHEM, ich müsste mir zum Testen das alles installieren, mich dann in die Modulentwicklung für FHEM einlesen und könnte dann erst recht nicht testen, weil ich keinen ARCAM hier stehen habe. Ausserdem hab ich derzeit wenig Zeit um solche Spielchen zu machen, ich bin schon froh, wenn ich meine Somfy Steuerung bis Weihnachten soweit habe, dass ich verdunkeln kann. Also sorry, mit mir kannst momentan nicht rechnen.

Aber ich frage mich, ob Du, Tobi, der einzige bist, der dieses Problem hat. Das müsste doch schon längst mal in der Demopad Fangemeinde aufgetaucht und gelöst worden sein :hmmm: ?

Ciao,
Christian.

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Donnerstag 28. September 2017, 07:34
von flinke flasche
gusi hat geschrieben:Hallöchen!

Aber ich frage mich, ob Du, Tobi, der einzige bist, der dieses Problem hat. Das müsste doch schon längst mal in der Demopad Fangemeinde aufgetaucht und gelöst worden sein :hmmm: ?

Ciao,
Christian.
Das hätte ich auch gedacht, aber irgendwie hat keiner dieses Problem oder anders formuliert, dass ich es nicht finde.
Der Arcam sollte außerdem ja nicht das einzige Gerät sein der seine Befehle so verschickt und feedback gibt.
Vermutlich nutzen aber viele nicht die Feedbacks, Befehle senden geht ja.

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Freitag 29. September 2017, 16:47
von flinke flasche
Hier habe ich mal einen kleinen Auszug aus einer Demopad Anleitung:
Command Data
DemoPad maintains an online forum which contains many command files for different equipment. HDMI Matrices, amplifiers, IR commands for TVs etc are all there. In most cases the recommended approach is to obtain a pre-saved command file & import it into your project (or to use a pre-saved Device, which would already have the commands entered). If however you need to enter commands manually, it is necessary to discuss the various command protocol notation which is common in the industry.

ASCII (text) commands - these are usually easily recognised as being textual in nature, for example the command: PWR ON (which is an Epson projector power on command) or @MAIN:PWR=On (which is a Yamaha amplifier power on command) are both examples of text commands. Typically, such text commands require a carriage return (hex 0D) and/or line feed (hex 0A) character at the end, which forms part of the command. The default command suffix for the device of \x0D\x0A provides this.

Byte based commands - Byte based commands are entered in hexadecimal (hex) format with a \x preceding an uppercase 2 digit representation of the byte value. For example, an uppercase M is transmitted as a hexadecimal byte 4D (please refer to ascii character codes online) which is written in DemoPad as \x4D. There is no difference between using the character M in a command, or using \x4D - the exact same data is transmitted.

However, some device commands contain byte values which do not represent characters, hence they have to be written in \x format, eg \xFE

Hex values are sometimes written differently in protocol documents, here are some examples & how they should be entered in DemoPad:

0x02 0x05 0xfe 0x34 or 02 05 FE 34 or even 0205fe34

should all be entered as \x02\x05\xFE\x34

You may also see these common text representations of certain characters:

<CR> or \r both usually mean: \x0D (carriage return)

<LF> or \n both usually mean: \x0A (line feed)
Ne, Idee?

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Samstag 30. September 2017, 10:52
von flinke flasche
gestern hab ich mal wieder etwas rumgespielt. Durch das Programm PaketSender bin ich auf eine Möglichkeit gestoßen wie die Feedbacks gesendet werden.
Und siehe da, es hat geklappt :clap: . Allerdings noch nicht bei allen Befehlen. Das kann aber daran liegen, dass mache direkt abgefragt werden und nicht automatisch gesendet werden.

So bekomme ich die Feedbacks wohl zurück geliefert
!\x01\x14\x00\x01\x00\x0D

Heute Abend gehts weiter ans testen und schauen :thumbsup:

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Samstag 30. September 2017, 11:32
von gusi
flinke flasche hat geschrieben:gestern hab ich mal wieder etwas rumgespielt. Durch das Programm PaketSender bin ich auf eine Möglichkeit gestoßen wie die Feedbacks gesendet werden.
Und siehe da, es hat geklappt :clap: . Allerdings noch nicht bei allen Befehlen. Das kann aber daran liegen, dass mache direkt abgefragt werden und nicht automatisch gesendet werden.

So bekomme ich die Feedbacks wohl zurück geliefert
!\x01\x14\x00\x01\x00\x0D

Heute Abend gehts weiter ans testen und schauen :thumbsup:
Hallöchen Tobi,

ja, genau das hab ich mir gedacht, als ich in meinen früheren Posts meinte, dass es "nicht darstellbare Zeichen" sind. Sie sind da, aber sie werden nicht (richtig) angezeigt. Ich frage mich aber, ob man diese Antwort des Arcam jetzt mit einer Regex auswerten kann? Welche Zeichen des Feedbacks sind für Dich in diesem einen Beispiel wichtig bzw. willst Du wissen?

Ciao,
Christian.

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Samstag 30. September 2017, 15:45
von flinke flasche
gusi hat geschrieben:
flinke flasche hat geschrieben:gestern hab ich mal wieder etwas rumgespielt. Durch das Programm PaketSender bin ich auf eine Möglichkeit gestoßen wie die Feedbacks gesendet werden.
Und siehe da, es hat geklappt :clap: . Allerdings noch nicht bei allen Befehlen. Das kann aber daran liegen, dass mache direkt abgefragt werden und nicht automatisch gesendet werden.

So bekomme ich die Feedbacks wohl zurück geliefert
!\x01\x14\x00\x01\x00\x0D

Heute Abend gehts weiter ans testen und schauen :thumbsup:
Hallöchen Tobi,

ja, genau das hab ich mir gedacht, als ich in meinen früheren Posts meinte, dass es "nicht darstellbare Zeichen" sind. Sie sind da, aber sie werden nicht (richtig) angezeigt. Ich frage mich aber, ob man diese Antwort des Arcam jetzt mit einer Regex auswerten kann? Welche Zeichen des Feedbacks sind für Dich in diesem einen Beispiel wichtig bzw. willst Du wissen?

Ciao,
Christian.

Wichtig sind für mich alle Zeichen.
Es wechselt aber so gesehen immer nur der vorletzte Teil seinen Wert (hier \x00).
Das letzte \x0D könne ich auch weglassen und global setzen, da es je nur der return ist.

Wüsste jetzt nicht wie ich mit regex das auswerten kann.
Müsste mal versuchen was er so ausgibt:
!\x01\x14\x00\x01\(.*)\x0D
denke aber nicht, dass er mir dann eine Dezimalzahl gibt. Sonder auch nur x00.
Das teste ich aber. Kann ich das mit einem regex code erzwingen, dass er eine Dezimalzahl ausgibt :hmmm: ?

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Samstag 30. September 2017, 18:28
von gusi
flinke flasche hat geschrieben: Müsste mal versuchen was er so ausgibt:
!\x01\x14\x00\x01\(.*)\x0D
denke aber nicht, dass er mir dann eine Dezimalzahl gibt. Sonder auch nur x00.
Das teste ich aber. Kann ich das mit einem regex code erzwingen, dass er eine Dezimalzahl ausgibt :hmmm: ?
Ja, das vermute ich auch. Mit einer Regex macht man nur einen Musterabgleich. D.h. er wird dir \x00 bzw. 0x00 liefern. Ich glaube kaum, dass er dir dann eine "0" ausgeben wird. Immerhin gibt er \x21 ja auch als "!" aus, und nicht als 33 (was der Dezimalwert von 0x21 ist).

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Sonntag 1. Oktober 2017, 11:09
von flinke flasche
gusi hat geschrieben:
flinke flasche hat geschrieben: Müsste mal versuchen was er so ausgibt:
!\x01\x14\x00\x01\(.*)\x0D
denke aber nicht, dass er mir dann eine Dezimalzahl gibt. Sonder auch nur x00.
Das teste ich aber. Kann ich das mit einem regex code erzwingen, dass er eine Dezimalzahl ausgibt :hmmm: ?
Ja, das vermute ich auch. Mit einer Regex macht man nur einen Musterabgleich. D.h. er wird dir \x00 bzw. 0x00 liefern. Ich glaube kaum, dass er dir dann eine "0" ausgeben wird. Immerhin gibt er \x21 ja auch als "!" aus, und nicht als 33 (was der Dezimalwert von 0x21 ist).

Leider hab ich mich zu früh gefreut.
Für mich die wichtigste Information kann ich (noch) nicht darstellen - die Lautstärke :no:

Leider bekomme ich laut PacketSender folgenden Code zurück
!\01\r\00\01'\r
das heißt ich habe einen return im code :hit:

für mich baue ich den Code normalerweise so um
!\x01\xr\x00\x01'
(zumindest denke ich, dass es so sein muss)
Leider geht es nicht. Wäre das "r" nicht sollte es eigentlich klappen.

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Sonntag 1. Oktober 2017, 18:32
von gusi
Hallöchen!
flinke flasche hat geschrieben: Leider hab ich mich zu früh gefreut.
Für mich die wichtigste Information kann ich (noch) nicht darstellen - die Lautstärke :no:

Leider bekomme ich laut PacketSender folgenden Code zurück
!\01\r\00\01'\r
das heißt ich habe einen return im code :hit:
Ist das ein Tippfehler? Bekommst Du wirklich "!\01\r\00\01'\r"? Weiter oben hast Du geschrieben, dass Du "!\x01\x14\x00\x01\x00\x0D" zurückbekommst. Da ist kein \r mitten drin.
flinke flasche hat geschrieben: für mich baue ich den Code normalerweise so um
!\x01\xr\x00\x01'
(zumindest denke ich, dass es so sein muss)
Leider geht es nicht. Wäre das "r" nicht sollte es eigentlich klappen.
Das macht keinen Sinn, so wie Du das umbaust. Vielleicht ist es ja auch ein Tippfehler. Richtig wäre: !\x01\r\x00\x01\r
\x in einer Regular Expression sagt aus, dass eine Hexadezimalzahl folgt. "r" ist keine Hex-Zahl. Also \x01 ist so ein gültiges und "\xr" ist ein ungültiges Muster.

Aber ich frage mich immer noch, warum da ein Return mitten im Code ist und vor allem: wo ist das \x14 geblieben?? Könnte es sein, dass bei der Ausgabe vom PacketSender was schiefgelaufen ist? Wurden da ev. die Rückmeldungen von zwei Befehlen vermischt? Kannst es noch mal versuchen und schauen, ob da wirklich immer ein \r mitten im Feedback ist?

Ciao,
Christian.

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Sonntag 1. Oktober 2017, 20:34
von flinke flasche
Bei meinem Lautstärkeproblem kommt wirklich ein r Zurück, also als 0D als Hex.
Mit !\x01\r\x00\x01'\r hast du natürlich recht. Hab mich da verschrieben.
Leider kann er damit auch nicht anfangen.
Hab auch schon so was versucht: !\x01(.*)\x00\x01'\r um einfach jedes Zeichen zu erlauben, was aber auch nicht zum Ziel führte.

Hab verschiedene Codes für verschiedene Befehle geschrieben :hit:
Der Code um den es jetzt geht ist ein Lautstärke Feedback von 39db.
Das gibt mir PaketSender vom ARCAM zurück:
!\01\r\00\01'\r

Komisch ist auch das Format, was ich so interpretiere, dass das Feedback als Zeichen zurückgegeben wird. Oder als irgendein Mix, was man am !, r und ' erkennt. PaketSender gibt mir !\01\r\00\01'\r und den gleichen Code als HEX zurück (sitze gerade an einem anderen Rechner weshalb ich den nicht habe). Welcher aber wirklich gesendet wird und welcher auch berechnet sein kann weiß ich nicht.
In einem anderen Programm "Hercules" für Windows gibt er mir zum Beispiel nur !' zurück :hmmm: . Was vermutlich an den nicht sichtbaren Zeichen liegt was du geschrieben hast.

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Montag 2. Oktober 2017, 07:32
von gusi
flinke flasche hat geschrieben:Hab verschiedene Codes für verschiedene Befehle geschrieben :hit:
Der Code um den es jetzt geht ist ein Lautstärke Feedback von 39db.
Das gibt mir PaketSender vom ARCAM zurück:
!\01\r\00\01'\r

Komisch ist auch das Format, was ich so interpretiere, dass das Feedback als Zeichen zurückgegeben wird. Oder als irgendein Mix, was man am !, r und ' erkennt. PaketSender gibt mir !\01\r\00\01'\r und den gleichen Code als HEX zurück (sitze gerade an einem anderen Rechner weshalb ich den nicht habe). Welcher aber wirklich gesendet wird und welcher auch berechnet sein kann weiß ich nicht.
In einem anderen Programm "Hercules" für Windows gibt er mir zum Beispiel nur !' zurück :hmmm: . Was vermutlich an den nicht sichtbaren Zeichen liegt was du geschrieben hast.
Dieses Format kann ich mir schon erklären. Alle ASCII Zeichen, die darstellbar sind, werden als solche auch angezeigt (! und ' und als Ausnahme \r), alle anderen zeigt er in Hex-Notation an.

Also wenn man sich nun die Antwort "!\01\r\00\01'\r" ansieht, so werden folgende Bytes (in Hex) empfangen: "\x21\x01\x0d\x00\x01\x27\x0d" Und da hast Du als vorletztes Zeichen (') bzw \x27 deine 39 dB.

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Dienstag 3. Oktober 2017, 08:53
von flinke flasche
Komisch bei der Sache ist, dass ich bei Packet Sender den Code so empfange !\01\r\00\01'\r
Ich diesen aber so nicht in Demopad abfragen kann :hmmm: .
Bei anderen Codes ohne das r funktioniert es auch.
Bildschirmfoto 2017-10-03 um 08.41.29.jpg
Eine schlechte Lösung die ich im Moment mal getestet habe ist, einfach nur einen Teil des Codes auszulesen, also z.B. \00\01'.
Das funktioniert vorerst, allerdings schickt der Arcam jedes mal wenn ich eine Taste drücke sehr viele Feedbacks, wo natürlich auch andere
Codes zurück kommen und somit meine Lautstärkeanzeige stören :hit: .
Wenn ich nun bei jedem Tastendruck als letztes eine Lautstärkeabfrage mache bekomme ich diese angezeigt.

Re: FHEM for Dummies - ähh Anfänger (Demopad)

Verfasst: Dienstag 3. Oktober 2017, 15:23
von gusi
flinke flasche hat geschrieben:Komisch bei der Sache ist, dass ich bei Packet Sender den Code so empfange !\01\r\00\01'\r
Ich diesen aber so nicht in Demopad abfragen kann :hmmm: .
Bei anderen Codes ohne das r funktioniert es auch.
Du darfst das r nicht für sich alleine betrachten, da gehört das \ davor auch dazu :) . Also es kommt ein \r mitten in der Antwort zurück. Ich denke, das ist auch richtig so. Ich hab mir das Protokoll, das Du mal verlinkt hast, zwar nicht angesehen, aber aufgrund des Screenshots schaut das für mich schon richtig aus (da steht ein 0D mitten in der Antwort und auch am Ende).

Dein Problem wird jetzt sein, dass Du im DemoPad wahrscheinlich \r als Terminierung eines Befehls/einer Antwort konfiguriert hast. Und damit denkt das DemoPad jetzt auch, dass die Antwort !\01\r\00\01'\r nach dem ersten \r zu Ende ist. Dumm gelaufen :blush: . Schau mal, vielleicht kannst im DemoPad da was diesbezüglich "drehen"?