Prepojenie tohoto vysielača s PC je jednou z podmienok jeho univerzálneho využitia. Tento typ totižto nemá možnosť bez použitia PC (alebo iného zariadenia, ako uvediem neskôr) čokoľvek nastaviť. Takže ak doma pozabudneme pribaliť na lietanie aj notebook, na kopci len môžeme dúfať, že máme nastavenie na daný model, s ktorým sa práve chystáme vzlietnuť.
autor: Vladimír Perešíni
pridal: mior
Horšie je to v opačnom prípade... (Však, Pavel...)
Čo teda s tým?
Vieme, že na zadnej strane vysielača sa nachádza konektor s označením Trainer. Do neho sa zasúva druhý koniec programovacieho kábla pre prepojenie s PC. Ten kábel - je to vlastne prevodník USB/RS232 TTL (už som použil napríklad na pripojenie nabíjačky Eco Six k PC :
http://rcmodely.cevaro.sk/index.php?id=170&n=pripojenie-nabijacky-eco-six-z-hk-k-pc).
Vďaka tomuto prevodníku sa program t6config potom môže "prehrabávať" v nastaveniach vysielača.
Ako však spolu komunikujú?
Nuž našiel som podrobný popis tejto komunikácie:
-------------------------------------------------------------------------------------------------------
Interface pinning and signals
Chassis connector pinning as seen at the back of the transmitter
----------------------------------------------------------------
------
/ \
| [ ] |
| |
| o 1 2 o |
| |
| o 4 3 o |
| |
\ _ _ /
\ _! !__/
Pin 1 : PMM signal
Pin 2 : +5 Volt
Pin 3 : RX RS232 Serial data input ( TTL levels(0..5Volt) , ATTENTION !!! NOT
RS232 levels(+15..-15Volt)
Pin 4 : TX RS232 Serial data output ( TTL levels(0..5Volt) , ATTENTION !!! NOT
RS232 levels(+15..-15Volt)
Shield : Ground
RS232 Serial Data specification
-------------------------------
115kilobaud , 8 bit , 1 stopbit , noparity , nohandshake
A string of 18 bytes is send every 20mSec by transmitter.
Data burst duration (86.4uSec * 18 Bytes) is approx 1.5552mSec
(e.g. 0x55 0xFC 0x05)
s 0 1 2 3 4 5 6 7 s s 0 1 2 3 4 5 6 7 s s 0 1 2 3 4 5 6 7 s s -> etc.
+5 ___ _ _ _ _ _ _____________ _ _ _
| | | | | | | | | | | | | | | | | | |
Gnd |_| |_| |_| |_| |_| |_____| |_| |_| |_________| |_.............
PMM signal specifations
-----------------------
A burst of 7 falling (H->L) edges is send every 20mSec.
Pulse time is time between 2 falling edges
Low part of pulse time is always 0.4mSec.
ch1 ch2 ch3 ch4 ch5 ch6 pause ( (20 - (6pulsetimes + 0.4))mSec to next
falling edge)
+5 ___ __ __ __ __ __ __ ___________________________________............
| | | | | | | | | | | | | |
Gnd |_| |_| |_| |_| |_| |_| |_|
HK6 2.4Ghz Programmable Radio Gear Channel Data/Settings array's
------------------------------------------------------------------------------------------------------------------
Channel data array ( 18 bytes )
------------------------------------------------------------------------------------------------------------------
index | description | Values
------------------------------------------------------------------------------------------------------------------
0 : header0 = 85 (0x55)
1 : header1 = 252(0xFC)
2 : high_byte of (ch1+1000)
3 : low_byte of (ch1+1000)
4 : high_byte of (ch2+1000)
5 : low_byte of (ch2+1000)
6 : high_byte of (ch3+1000)
7 : low_byte of (ch3+1000)
8 : high_byte of (ch4+1000)
9 : low_byte of (ch4+1000)
10: high_byte of (ch5+1000)
11: low_byte of (ch5+1000)
12: high_byte of (ch6+1000)
13: low_byte of (ch6+1000)
14: high_byte of 2044-(ch3+1000) !
15: low_byte of 2044-(ch3+1000) !
16: high_byte of checksum
17: low_byte of checksum
high_byte -> (Channelvalue + 1000) / 256
low_byte -> (Channelvalue + 1000) mod 256
checksum -> sum of bytes 2 to 15
------------------------------------------------------------------------------------------------------------------
HK6 2.4Ghz Programmable Radio Gear Settings Data array ( 69 bytes )
------------------------------------------------------------------------------------------------------------------
Settings 10,11,12 and 25 to 44 are only for helicopter
------------------------------------------------------------------------------------------------------------------
description possible values
------------------------------------------------------------------------------------------------------------------
0 HeaderByte 1 -> always 85
1 HeaderByte 2 -> 253 in case of receiving settings from device ( query =
85,250,0 )
-> 255 in case of sending settings to device
------------------------------------------------------------------------------------------------------------------
2 Model stick configuration -> high_nib(4..7) : Model > 1=0x0* 2=0x1* 3=0x2*
4=0x3*
-> low_nib (0..3) : Type > ACRO=0x*0 H-120=0x*1 H-90=0x*2 H-140=0x*3
-----------------------------------------------------------------------------------------------------------------
3 CH1 - CH6 reverse bits -> b0..b5 <> Ch1..Ch6 normal=0 reverse=1
------------------------------------------------------------------------------------------------------------------
4 CH1 DualRate OFF value -> 0..100%
5 CH1 DualRate ON value -> 0..100%
6 CH2 DualRate OFF value -> 0..100%
7 CH2 DualRate ON value -> 0..100%
8 CH4 DualRate OFF value -> 0..100%
9 CH4 DualRate ON value -> 0..100%
------------------------------------------------------------------------------------------------------------------
helicopter (10,11,12)
------------------------------------------------------------------------------------------------------------------
10 Swash AFR CH1 -> -100..+100 (two's complement format > 0x9c..0x64)
11 Swash AFR CH2 -> -100..+100 (two's complement format > 0x9c..0x64)
12 Swash AFR CH6 -> -100..+100 (two's complement format > 0x9c..0x64)
------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------
13 CH1 Endpoint 1 -> 0..120%
14 CH1 Endpoint 2 -> 0..120%
15 CH2 Endpoint 1 -> 0..120%
16 CH2 Endpoint 2 -> 0..120%
17 CH3 Endpoint 1 -> 0..120%
18 CH3 Endpoint 2 -> 0..120%
19 CH4 Endpoint 1 -> 0..120%
20 CH4 Endpoint 2 -> 0..120%
21 CH5 Endpoint 1 -> 0..120%
22 CH5 Endpoint 2 -> 0..120%
23 CH6 Endpoint 1 -> 0..120%
24 CH6 Endpoint 2 -> 0..120%
------------------------------------------------------------------------------------------------------------------
helicopter (24..44)
------------------------------------------------------------------------------------------------------------------
25 Throttle Curve EP0 NORMAL -> 0..100%
26 Throttle Curve EP0 ID -> 0..100%
27 Throttle Curve EP1 NORMAL -> 0..100%
28 Throttle Curve EP1 ID -> 0..100%
29 Throttle Curve EP2 NORMAL -> 0..100%
30 Throttle Curve EP2 ID -> 0..100%
31 Throttle Curve EP3 NORMAL -> 0..100%
32 Throttle Curve EP3 ID -> 0..100%
33 Throttle Curve EP4 NORMAL -> 0..100%
34 Throttle Curve EP4 ID -> 0..100%
------------------------------------------------------------------------------------------------------------------
35 Pitch Curve EP0 NORMAL -> 0..100%
36 Pitch Curve EP0 ID -> 0..100%
37 Pitch Curve EP1 NORMAL -> 0..100%
38 Pitch Curve EP1 ID -> 0..100%
39 Pitch Curve EP2 NORMAL -> 0..100%
40 Pitch Curve EP2 ID -> 0..100%
41 Pitch Curve EP3 NORMAL -> 0..100%
42 Pitch Curve EP3 ID -> 0..100%
43 Pitch Curve EP4 NORMAL -> 0..100%
44 Pitch Curve EP4 ID -> 0..100%
------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------
45 CH1 SubTrim -> -120..+120 (two's complement format > 0x88 - 0x78 )
46 CH2 SubTrim -> -120..+120 (two's complement format > 0x88 - 0x78 )
47 CH3 SubTrim -> -120..+120 (two's complement format > 0x88 - 0x78 )
48 CH4 SubTrim -> -120..+120 (two's complement format > 0x88 - 0x78 )
49 CH5 SubTrim -> -120..+120 (two's complement format > 0x88 - 0x78 )
50 CH6 SubTrim -> -120..+120 (two's complement format > 0x88 - 0x78 )
------------------------------------------------------------------------------------------------------------------
51 Mixer 1 source/destination -> low_nib=dest. high_nib=src. Value : 0..5=ch1..ch6
(6..7=VRA..VRB >source only)
52 Mixer 1 Up Rate -> -100..+100 (two's complement format > 0x9c..0x64)
53 Mixer 1 Down Rate -> -100..+100 (two's complement format > 0x9c..0x64)
54 Mixer 1 switch -> 0=SWA 1=SWB 2=ON 3=OFF
55 Mixer 2 source/destination -> low_nib=dest. high_nib=src. Value : 0..5=ch1..ch6
(6..7=VRA..VRB >source only)
56 Mixer 2 Up Rate -> -100..+100 (two's complement format > 0x9c..0x64)
57 Mixer 2 Down Rate -> -100..+100 (two's complement format > 0x9c..0x64)
58 Mixer 2 switch -> 0=SWA 1=SWB 2=ON 3=OFF
59 Mixer 3 source/destination -> low_nib=dest. high_nib=src. Value : 0..5=ch1..ch6
(6..7=VRA..VRB >source only)
60 Mixer 3 Up Rate -> -100..+100 (two's complement format > 0x9c..0x64)
61 Mixer 3 Down Rate -> -100..+100 (two's complement format > 0x9c..0x64)
62 Mixer 3 switch -> 0=SWA 1=SWB 2=ON 3=OFF
------------------------------------------------------------------------------------------------------------------
63 Switch A function select -> 0=NULL 1=DualRate 2=throttlecutoff 3=NORMAL/ID
64 Switch B function select -> 0=NULL 1=DualRate 2=throttlecutoff 3=NORMAL/ID
------------------------------------------------------------------------------------------------------------------
65 Variable A function select -> 0=NULL 1=pitajdust
66 Variable B function select -> 0=NULL 1=pitajdust
------------------------------------------------------------------------------------------------------------------
67 Checksum High Byte -> sum(byte2..byte66) / 256
68 Checksum Low Byte -> sum(byte2..byte66) mod 256
------------------------------------------------------------------------------------------------------------------
Nuž a keď poznáme toto, stačí nám nahradiť program t6config jeho analógiou fungujúcou na malom mikroprocesore s pripojeným LCD displejom a máme to vyriešené.
Ešte jednoduchšie riešenie je jednoducho naprogramovať mikroprocesor nami používanými nastaveniami uloženými programom t6config (to je tych 67-69 bytov) a napríklad počtom bliknutí LED alebo zapípaní vybrať konkrétne nastavenie a poslať ho do vysielača... Tu s výhodou môžeme využiť napájanie 5V z vysielača a úroveň TTL na RS232 jeho rozhraní a tak naše zariadenie môže byť v podstate jedna súčiastka s jedným či dvoma tlačidlami... Co sa tyka protikusu konektora, je to S-Video konektor, ale dá sa použiť aj PS2 konektor, z ktorého sa odstráni vodiaca lišta.
Že to ide, môžete sa presvedčiť okrem mnohých iných napr. na stránke
Vo fóre rcgroups je popis pripojenia vysielača napr. k PDA...
Vpershing