Läsa HEX från TCP port.

Post Reply
Bananen79
Ny medlem
Posts: 14
Joined: 19 May 2016, 20:56
8

Har en automower som jag installerat en seriell wifi adapter på. Kan använda den till att skicka ut klipparen samt att säga åt den att återvända hem med hjälp av ett hex-kommando.
Klipparen svarar alltid med ett status hex-kommando som jag skulle vilja kunna ta in i fibaro och översätta. Vad koderna betyder vet jag, men hur skulle luan kunna se ut för att ta emot statusen?

Hjälp! :)
User avatar
Bamsefar
Z-Wave Kung
Posts: 1268
Joined: 25 Nov 2013, 15:06
10
Location: Stockholm

HEX-adecimalt är talbas 16, vårat vanliga numeriska system har talbas 10. Således kan du alltid översätta fram och tillbaka:

http://www.rapidtables.com/convert/numb ... ecimal.htm
Kör Home Assistant efter totalt nederlag för HomeSeer :twisted: :twisted: :mrgreen:
Bananen79
Ny medlem
Posts: 14
Joined: 19 May 2016, 20:56
8

Bamsefar wrote:HEX-adecimalt är talbas 16, vårat vanliga numeriska system har talbas 10. Således kan du alltid översätta fram och tillbaka:

http://www.rapidtables.com/convert/numb ... ecimal.htm
Lysande!
Frågan är nu bara hur jag får till scenen som läser av statusen som klipparen skickar? Alltså, jag skickar ett kommando som genast ger ett svar tillbaka som skall läsas och översättas.
Tips?
User avatar
Bamsefar
Z-Wave Kung
Posts: 1268
Joined: 25 Nov 2013, 15:06
10
Location: Stockholm

Men hur skickar du kommandot? Lite LUA kod så jag vet vad det är du gör - troligen har du svaret redan (men kanske inte vet om det)?
Kör Home Assistant efter totalt nederlag för HomeSeer :twisted: :twisted: :mrgreen:
Bananen79
Ny medlem
Posts: 14
Joined: 19 May 2016, 20:56
8

Bamsefar wrote:Men hur skickar du kommandot? Lite LUA kod så jag vet vad det är du gör - troligen har du svaret redan (men kanske inte vet om det)?
Jag skickar det som en string.
Jag har gjort två knappar, en för Auto och en för Hem. Hem ser ex. ut: 0x0F0x810x2C0x000x03.
Jag har bockat i "vänta på svar från enhet". Jag ser i terminalen att den svarar men jag vet inte hur jag ska ta emot det i fibaro.
Jag är urkass på LUA men det är förmodligen väldigt kompetent och klarar säkert att skicka och ta emot... men hur? :?
User avatar
Bamsefar
Z-Wave Kung
Posts: 1268
Joined: 25 Nov 2013, 15:06
10
Location: Stockholm

I min fjärde del om LUA, på slutet, så behandlar jag liknande scenarie när jag hanterar min Marantz:
http://www.zwaveforum.se/viewtopic.php?f=33&t=5013
Kör Home Assistant efter totalt nederlag för HomeSeer :twisted: :twisted: :mrgreen:
Bananen79
Ny medlem
Posts: 14
Joined: 19 May 2016, 20:56
8

Bamsefar wrote:I min fjärde del om LUA, på slutet, så behandlar jag liknande scenarie när jag hanterar min Marantz:
http://www.zwaveforum.se/viewtopic.php?f=33&t=5013
Bra skrivet!

Har fått till det så att den svarar i debug men får endast ett frågetecken där.. Måste konverteras till hex antar jag?
Hex-koden där är en statusfråga som returnerar ett svar beroende på status. Denna vill jag försöka få in på en label efter att jag översatt den.

Code: Select all

-- find the number of this virtual device
local thisdevice = fibaro:getSelfId()
-- use the virtual device number to find the IP address and
-- port specified on the device's configuration page
local ip = fibaro:getValue(thisdevice, 'IPAddress')
local port = fibaro:getValue(thisdevice, 'TCPPort')
 
-- open up a connection to that port and write a message there.
    tcpSocket = Net.FTcpSocket(ip, port);
    tcpSocket:setReadTimeout(10000);
    tcpSocket:write(string.char(0x0F, 0x01, 0xF1, 0x00, 0x00));
    result = tcpSocket:read();
    tcpSocket:disconnect();
    fibaro:sleep(2000);
    fibaro:debug(result)

User avatar
Bamsefar
Z-Wave Kung
Posts: 1268
Joined: 25 Nov 2013, 15:06
10
Location: Stockholm

Borde du inte fånga returkoden från anropet och verifiera att allt gick bra?
Kör Home Assistant efter totalt nederlag för HomeSeer :twisted: :twisted: :mrgreen:
Bananen79
Ny medlem
Posts: 14
Joined: 19 May 2016, 20:56
8

Bamsefar wrote:Borde du inte fånga returkoden från anropet och verifiera att allt gick bra?
Jo, svaret kommer men i konstigt format. Blir två frågetecken i debugloggen. Om jag skickar samma fråga via terminal får jag svaret tillbaka i hexformat. :?
Post Reply