Avkoda digital kommunikation
Postat: 20 mars 2014, 19:58:30
Jag har en ganska ny amatörradio-transceiver, en Yaesu FTM-400DE, som har en basenhet med radiofunktionerna, högtalare och uttag för mikrofon, samt en kontrollenhet med fyra rattar, fem knappar och en resistiv pekskärm.
Kontrollenheten kopplas till basenheten med en fyrtrådig kabel med RJ12-kontakter. Självklart måste man ta reda på hur kommunikationen går till, ett roligt mål vore att kunna styra basenheten med motsvarande kommunikation via en µC kopplad till en dator.
En tråd är jord, såklart, och en är spänningsmatning (oreglerad inspänning till basenheten minus spänningsfallet i kabeln, kan alltså gå upp mot 13,8V och mer). De andra två torde sköta kommunikationen mellan kontrollenhet och basenhet. Utöver den hemsnickrade kabeln med anpassad längd gjorde jag alltså en kabel som underlättar mätning och inkoppling till logikanalysator (Logic, första versionen).
Det är inte en klocksignal på en tråd och data på andra, utan det verkar snarare som att det är en tråd för kommunikation i var riktning, och paketen överlappar varandra delvis. Det är hög nivå mellan paketen, det ser ut att vara knappt 10 kHz grundfrekvens med en grundrytm på 94 µs lågt och 10 µs högt, och ibland tätare pulser med 10, 20 eller 30 µs lågt mellan de höga pulserna på 10 µs. Grundrytmen för de höga pulserna kvarstår. Ibland kommer det höga pulser på 20, 30 eller 40 µs.
Jag tolkar det som att det är en klockpuls som grund och extra pulser av varierande längd och avstånd som förmedlar data. På kanal 0 kommer paket om drygt 20 ms med 5 ms mellanrum, kanal 1 paket om drygt 7 ms med knappt 18 ms mellanrum, alltså omkring 25 ms period från paketstart till paketstart, där paketen på kanal 1 kommer omkring 1,6 ms före de på kanal 0.
Det känns som att det borde gå mer data från kontrollenheten till basenheten, och mer komma bekräftelse och information om aktuella inställningar och styrka på mottagen signal etc från basenhet till kontrollenhet, så jag tippar att kanal 0 är från kontroll till bas, kanal 1 tvärtom.
Har någon några tankar om var jag skall börja för att avkoda kommunikationen? Jag har inte öppnat kontrollenhet eller basenhet än så jag vet inte vad det är för µC i någon av dem.
Jag har en sparad kort session både i logic-format och som csv.
Kontrollenheten kopplas till basenheten med en fyrtrådig kabel med RJ12-kontakter. Självklart måste man ta reda på hur kommunikationen går till, ett roligt mål vore att kunna styra basenheten med motsvarande kommunikation via en µC kopplad till en dator.
En tråd är jord, såklart, och en är spänningsmatning (oreglerad inspänning till basenheten minus spänningsfallet i kabeln, kan alltså gå upp mot 13,8V och mer). De andra två torde sköta kommunikationen mellan kontrollenhet och basenhet. Utöver den hemsnickrade kabeln med anpassad längd gjorde jag alltså en kabel som underlättar mätning och inkoppling till logikanalysator (Logic, första versionen).
Det är inte en klocksignal på en tråd och data på andra, utan det verkar snarare som att det är en tråd för kommunikation i var riktning, och paketen överlappar varandra delvis. Det är hög nivå mellan paketen, det ser ut att vara knappt 10 kHz grundfrekvens med en grundrytm på 94 µs lågt och 10 µs högt, och ibland tätare pulser med 10, 20 eller 30 µs lågt mellan de höga pulserna på 10 µs. Grundrytmen för de höga pulserna kvarstår. Ibland kommer det höga pulser på 20, 30 eller 40 µs.
Jag tolkar det som att det är en klockpuls som grund och extra pulser av varierande längd och avstånd som förmedlar data. På kanal 0 kommer paket om drygt 20 ms med 5 ms mellanrum, kanal 1 paket om drygt 7 ms med knappt 18 ms mellanrum, alltså omkring 25 ms period från paketstart till paketstart, där paketen på kanal 1 kommer omkring 1,6 ms före de på kanal 0.
Det känns som att det borde gå mer data från kontrollenheten till basenheten, och mer komma bekräftelse och information om aktuella inställningar och styrka på mottagen signal etc från basenhet till kontrollenhet, så jag tippar att kanal 0 är från kontroll till bas, kanal 1 tvärtom.
Har någon några tankar om var jag skall börja för att avkoda kommunikationen? Jag har inte öppnat kontrollenhet eller basenhet än så jag vet inte vad det är för µC i någon av dem.
Jag har en sparad kort session både i logic-format och som csv.