- Posts: 2633
The New Hubsans
- goebish
-
- Offline
- NRF Weirdo
Less
More
13 Jan 2016 21:54 #41729
by goebish
Replied by goebish on topic The New Hubsans
The H107P should work with H107 option (with the newer firmware), there's nothing special to do, it will auto detect "normal" or "plus" aircraft
- Nuggetz
-
Topic Author
- Offline
Less
More
- Posts: 33
13 Jan 2016 22:00 #41730
by Nuggetz
Replied by Nuggetz on topic The New Hubsans
There must be a certain bind procedure. Seems like I had to power the quad on and off and then it bound. Is this officially part of the protocol now? Need the channel list etc so I can map the function.
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
13 Jan 2016 22:04 #41731
by goebish
Replied by goebish on topic The New Hubsans
This can happen sometime, bind rate is not 100%, but this has always been the case.
CHANNEL6 = Flip
CHANNEL9 = Headless
I haven't implemented leds because they're not available on H107C+/D+, can they be switched off on the H107P ?
CHANNEL6 = Flip
CHANNEL9 = Headless
I haven't implemented leds because they're not available on H107C+/D+, can they be switched off on the H107P ?
- Nuggetz
-
Topic Author
- Offline
Less
More
- Posts: 33
13 Jan 2016 22:43 - 13 Jan 2016 22:44 #41732
by Nuggetz
I don't see any mention in the manual about turning off LEDs so I would guess no for the 107P as well. What about this Rotor Guard feature? It says that you power on while holding right aileron trim and disable by powering on and holding left rudder trim. Still not sure what it does.
The text reads: "The X4 plus need enter into the rotor guard mode when you add the rotor guard on it"
Replied by Nuggetz on topic The New Hubsans
goebish wrote: This can happen sometime, bind rate is not 100%, but this has always been the case.
CHANNEL6 = Flip
CHANNEL9 = Headless
I haven't implemented leds because they're not available on H107C+/D+, can they be switched off on the H107P ?
I don't see any mention in the manual about turning off LEDs so I would guess no for the 107P as well. What about this Rotor Guard feature? It says that you power on while holding right aileron trim and disable by powering on and holding left rudder trim. Still not sure what it does.
The text reads: "The X4 plus need enter into the rotor guard mode when you add the rotor guard on it"
Last edit: 13 Jan 2016 22:44 by Nuggetz.
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
13 Jan 2016 22:45 #41733
by goebish
Replied by goebish on topic The New Hubsans
I never heard of this feature before, I'd need a spi dump of the stock TX to implement it ...
- delta75
-
- Offline
Less
More
- Posts: 51
14 Jan 2016 01:54 #41737
by delta75
Replied by delta75 on topic The New Hubsans
if you need more H501s dump, i will support more dump
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
14 Jan 2016 09:56 #41744
by goebish
Replied by goebish on topic The New Hubsans
I have not finished to analyze your previous dumps, I'll ask if I need more
- delta75
-
- Offline
Less
More
- Posts: 51
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
15 Jan 2016 13:29 - 15 Jan 2016 13:36 #41776
by goebish
Replied by goebish on topic The New Hubsans
I don't forget you, I just didn't have the time to analyze all your files yet (TBH I only have found the LEDs flag right now
), and I promised someone that I would have a look at another protocol this week-end 
Meanwhile here's some HEX pr0n if someone wants to check it out:
drive.google.com/folderview?id=0B9Xtm43h...tSGtjbWs&usp=sharing
Meanwhile here's some HEX pr0n if someone wants to check it out:
drive.google.com/folderview?id=0B9Xtm43h...tSGtjbWs&usp=sharing
Last edit: 15 Jan 2016 13:36 by goebish.
- delta75
-
- Offline
Less
More
- Posts: 51
15 Jan 2016 15:12 #41779
by delta75
Replied by delta75 on topic The New Hubsans
how to make this file?
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
15 Jan 2016 16:15 - 15 Jan 2016 16:19 #41781
by goebish
Replied by goebish on topic The New Hubsans
You mean those "decoded" packet files ?
I use this python script:
gist.github.com/goebish/e6a486a87fba5a233c56
(you may want to add an if before line 88 to filter the output ...)
It takes Salae's logic SPI protocol analyzer as input:
- setup the analyzer to display in HEX
- click export as text/csv file
then in a command prompt (you need to have python 2.x installed ...)
I use this python script:
gist.github.com/goebish/e6a486a87fba5a233c56
(you may want to add an if before line 88 to filter the output ...)
It takes Salae's logic SPI protocol analyzer as input:
- setup the analyzer to display in HEX
- click export as text/csv file
then in a command prompt (you need to have python 2.x installed ...)
a7105_decode.py untitled.txt > decoded.txt
Last edit: 15 Jan 2016 16:19 by goebish.
- delta75
-
- Offline
Less
More
- Posts: 51
15 Jan 2016 16:54 - 16 Jan 2016 04:16 #41782
by delta75
Replied by delta75 on topic The New Hubsans
i tried to analyze
LED ON
13847 W_REGISTER(05_FIFO_DATA) 20 00 7F 00 82 00 81 00 82 06 1A 00 00 01 00 BB
LED OFF
14357 W_REGISTER(05_FIFO_DATA) 20 00 7F 00 82 00 81 00 82 02 1A 00 00 01 00 BF
data[9] 0x06 -> 0x02 (when button pressed)
data[9] 0x02 -> 0x06 (when button unpressed)
headless off
17831 W_REGISTER(05_FIFO_DATA) 20 00 80 00 82 00 81 00 82 26 1A 00 FF 00 00 9C
headless on
17914 W_REGISTER(05_FIFO_DATA) 20 00 80 00 82 00 81 00 82 66 1A 00 FF 02 00 5A
data[9] 0x26 -> 0x66
data[13] 0x00 -> 0x02
other case
data[9] 0x06 -> 0x46
data[13] 0x00 -> 0x02
ALTI HOLD -> GPS HOLD toggle key
17843 W_REGISTER(05_FIFO_DATA) 20 00 80 00 82 00 81 00 82 26 1A 00 FF 00 00 9C
17926 W_REGISTER(05_FIFO_DATA) 20 00 80 00 82 00 81 00 82 A6 1A 00 FF 00 80 9C
18096 W_REGISTER(05_FIFO_DATA) 20 00 80 00 82 00 81 00 82 A6 1A 00 FF 00 FF 1D
this case
data[9] 0x26 -> 0xA6
data[14] 0x08 -> 0x80 -> 0xFF
more case
data[9] 0x06 -> 0x86
data[14] 0x08 -> 0x80 -> 0xFF
altitude hold function on
16634 W_REGISTER(05_FIFO_DATA) 20 00 7F 00 80 00 88 00 80 86 19 00 00 00 FF 3B
manual mode (altitude hold function off)
19305 W_REGISTER(05_FIFO_DATA) 20 00 7F 00 80 00 88 00 80 86 19 00 00 08 FF 33
data[13] 0x00 -> 0x08
rth toggle switch
W_REGISTER(05_FIFO_DATA) 20 00 7F 00 80 00 88 00 80 06 19 00 00 08 00 B2
W_REGISTER(05_FIFO_DATA) 20 00 7F 00 80 00 88 00 80 26 19 00 80 08 00 12
W_REGISTER(05_FIFO_DATA) 20 00 7F 00 80 00 88 00 80 26 19 00 FF 08 00 93
data[9] 0x06 -> 0x26
data[12] 0x00 -> 0x80 -> 0xFF
other case
29244 W_REGISTER(05_FIFO_DATA) 20 0 7F 0 80 0 88 0 80 86 19 0 0 0 FF 3B
29326 W_REGISTER(05_FIFO_DATA) 20 0 7F 0 80 0 88 0 80 A6 19 0 FF 0 FF 1C
data[9] 0x86 -> 0xA6
data[12] 0x00 -> 0xFF
telemetry heading
327123 R_REGISTER(05_FIFO_DATA) E7 0B 10 FF F7 0 1B 0 0 0 0 0 9 4F 0 95
data[1~2] 0x0B10 = 2832 / 10 = 283.2
1 R_REGISTER(05_FIFO_DATA) E7 4 7 FF E9 0 1F 0 0 0 0 0 7 4F 0 B1
data[1~2] 0x0407 = 1031 / 10 = 103.1
roll
5850 R_REGISTER(05_FIFO_DATA) E7 3 F6 0 0 0 1B 0 0 0 0 0 4 4E 0 B3
data[3~4] 0x0000 = 0
16373 R_REGISTER(05_FIFO_DATA) E7 3 67 FB E2 0 34 0 0 0 0 0 6 4E 0 4A
data[3~4] 0xFBE2 = FFFF - FBE2 = 4D1 -> 1053 / 10 -> - 105.3
24522 R_REGISTER(05_FIFO_DATA) E7 1 ED 6 72 0 66 0 0 0 0 0 6 4E 0 F9
data[3~4] 0x0672 = 1650 / 10 = 165.0
pitch
24522 R_REGISTER(05_FIFO_DATA) E7 1 ED 6 72 0 66 0 0 0 0 0 6 4E 0 F9
data[5~6] 0x0066 (same roll)
height
27139 R_REGISTER(05_FIFO_DATA) E7 4 A6 0 9 FF BC 0 0 0 0 0 0A 4E 0 53
data[12] 0x0A = 10 = 1.0m
35627 R_REGISTER(05_FIFO_DATA) E7 4 97 0 0 FF D9 0 0 0 0 0 0C 4E 0 4C
data[12] 0x0C = 12 = 1.2m
GPS Coord
335 R_REGISTER(05_FIFO_DATA) E8 15 AD C2 91 4B EE C2 27 0 3 0 0 0 64 7A
data[1~4] 0x15ADC291 = 363709073 => N36.3709073
data[5~8] 0x4BEEC227 = 1273938471 => E127.3938471
distance
30951 R_REGISTER(05_FIFO_DATA) E7 7 F1 FF A7 FF FD 0 0 0 14 0 14 4C 0 0B
data[12] = 0x14 -> 2.0 m
72885 R_REGISTER(05_FIFO_DATA) E7 3 8C 0 6 FF E5 0 2 0 1E 0 0C 48 0C 20
data[12] = 0x1E -> 3.0 m
accel
19107 R_REGISTER(05_FIFO_DATA) E7 3 F1 FF BC 0 29 0 0A 0 0 0 13 4C 0C CC
data[8] = 0x0A = 1.0 m/s
21689 R_REGISTER(05_FIFO_DATA) E7 5 39 0 15 FF C8 0 0F 0 0A 0 14 4C 0 86
data[8] = 0x0F = 1.5 m/s
photo button
17765 W_REGISTER(05_FIFO_DATA) 20 0 7F 0 80 0 88 0 80 6 19 0 0 1 0 B9
data[13] 0x00 -> 0x01
record button
11895 W_REGISTER(05_FIFO_DATA) 20 0 7F 0 80 0 88 0 80 7 19 0 0 0 0 B9
data[9] 0x06 -> 0x07
LED ON
13847 W_REGISTER(05_FIFO_DATA) 20 00 7F 00 82 00 81 00 82 06 1A 00 00 01 00 BB
LED OFF
14357 W_REGISTER(05_FIFO_DATA) 20 00 7F 00 82 00 81 00 82 02 1A 00 00 01 00 BF
data[9] 0x06 -> 0x02 (when button pressed)
data[9] 0x02 -> 0x06 (when button unpressed)
headless off
17831 W_REGISTER(05_FIFO_DATA) 20 00 80 00 82 00 81 00 82 26 1A 00 FF 00 00 9C
headless on
17914 W_REGISTER(05_FIFO_DATA) 20 00 80 00 82 00 81 00 82 66 1A 00 FF 02 00 5A
data[9] 0x26 -> 0x66
data[13] 0x00 -> 0x02
other case
data[9] 0x06 -> 0x46
data[13] 0x00 -> 0x02
ALTI HOLD -> GPS HOLD toggle key
17843 W_REGISTER(05_FIFO_DATA) 20 00 80 00 82 00 81 00 82 26 1A 00 FF 00 00 9C
17926 W_REGISTER(05_FIFO_DATA) 20 00 80 00 82 00 81 00 82 A6 1A 00 FF 00 80 9C
18096 W_REGISTER(05_FIFO_DATA) 20 00 80 00 82 00 81 00 82 A6 1A 00 FF 00 FF 1D
this case
data[9] 0x26 -> 0xA6
data[14] 0x08 -> 0x80 -> 0xFF
more case
data[9] 0x06 -> 0x86
data[14] 0x08 -> 0x80 -> 0xFF
altitude hold function on
16634 W_REGISTER(05_FIFO_DATA) 20 00 7F 00 80 00 88 00 80 86 19 00 00 00 FF 3B
manual mode (altitude hold function off)
19305 W_REGISTER(05_FIFO_DATA) 20 00 7F 00 80 00 88 00 80 86 19 00 00 08 FF 33
data[13] 0x00 -> 0x08
rth toggle switch
W_REGISTER(05_FIFO_DATA) 20 00 7F 00 80 00 88 00 80 06 19 00 00 08 00 B2
W_REGISTER(05_FIFO_DATA) 20 00 7F 00 80 00 88 00 80 26 19 00 80 08 00 12
W_REGISTER(05_FIFO_DATA) 20 00 7F 00 80 00 88 00 80 26 19 00 FF 08 00 93
data[9] 0x06 -> 0x26
data[12] 0x00 -> 0x80 -> 0xFF
other case
29244 W_REGISTER(05_FIFO_DATA) 20 0 7F 0 80 0 88 0 80 86 19 0 0 0 FF 3B
29326 W_REGISTER(05_FIFO_DATA) 20 0 7F 0 80 0 88 0 80 A6 19 0 FF 0 FF 1C
data[9] 0x86 -> 0xA6
data[12] 0x00 -> 0xFF
telemetry heading
327123 R_REGISTER(05_FIFO_DATA) E7 0B 10 FF F7 0 1B 0 0 0 0 0 9 4F 0 95
data[1~2] 0x0B10 = 2832 / 10 = 283.2
1 R_REGISTER(05_FIFO_DATA) E7 4 7 FF E9 0 1F 0 0 0 0 0 7 4F 0 B1
data[1~2] 0x0407 = 1031 / 10 = 103.1
roll
5850 R_REGISTER(05_FIFO_DATA) E7 3 F6 0 0 0 1B 0 0 0 0 0 4 4E 0 B3
data[3~4] 0x0000 = 0
16373 R_REGISTER(05_FIFO_DATA) E7 3 67 FB E2 0 34 0 0 0 0 0 6 4E 0 4A
data[3~4] 0xFBE2 = FFFF - FBE2 = 4D1 -> 1053 / 10 -> - 105.3
24522 R_REGISTER(05_FIFO_DATA) E7 1 ED 6 72 0 66 0 0 0 0 0 6 4E 0 F9
data[3~4] 0x0672 = 1650 / 10 = 165.0
pitch
24522 R_REGISTER(05_FIFO_DATA) E7 1 ED 6 72 0 66 0 0 0 0 0 6 4E 0 F9
data[5~6] 0x0066 (same roll)
height
27139 R_REGISTER(05_FIFO_DATA) E7 4 A6 0 9 FF BC 0 0 0 0 0 0A 4E 0 53
data[12] 0x0A = 10 = 1.0m
35627 R_REGISTER(05_FIFO_DATA) E7 4 97 0 0 FF D9 0 0 0 0 0 0C 4E 0 4C
data[12] 0x0C = 12 = 1.2m
GPS Coord
335 R_REGISTER(05_FIFO_DATA) E8 15 AD C2 91 4B EE C2 27 0 3 0 0 0 64 7A
data[1~4] 0x15ADC291 = 363709073 => N36.3709073
data[5~8] 0x4BEEC227 = 1273938471 => E127.3938471
distance
30951 R_REGISTER(05_FIFO_DATA) E7 7 F1 FF A7 FF FD 0 0 0 14 0 14 4C 0 0B
data[12] = 0x14 -> 2.0 m
72885 R_REGISTER(05_FIFO_DATA) E7 3 8C 0 6 FF E5 0 2 0 1E 0 0C 48 0C 20
data[12] = 0x1E -> 3.0 m
accel
19107 R_REGISTER(05_FIFO_DATA) E7 3 F1 FF BC 0 29 0 0A 0 0 0 13 4C 0C CC
data[8] = 0x0A = 1.0 m/s
21689 R_REGISTER(05_FIFO_DATA) E7 5 39 0 15 FF C8 0 0F 0 0A 0 14 4C 0 86
data[8] = 0x0F = 1.5 m/s
photo button
17765 W_REGISTER(05_FIFO_DATA) 20 0 7F 0 80 0 88 0 80 6 19 0 0 1 0 B9
data[13] 0x00 -> 0x01
record button
11895 W_REGISTER(05_FIFO_DATA) 20 0 7F 0 80 0 88 0 80 7 19 0 0 0 0 B9
data[9] 0x06 -> 0x07
Last edit: 16 Jan 2016 04:16 by delta75.
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
15 Jan 2016 16:55 - 15 Jan 2016 16:58 #41783
by goebish
Replied by goebish on topic The New Hubsans
Thanks for your help, that will make things faster 
Byte 15 can be ignored, it's the checksum.
I think the most important bytes to look at are [9] and [13]
Byte 15 can be ignored, it's the checksum.
I think the most important bytes to look at are [9] and [13]
Last edit: 15 Jan 2016 16:58 by goebish.
- delta75
-
- Offline
Less
More
- Posts: 51
15 Jan 2016 17:02 #41784
by delta75
Replied by delta75 on topic The New Hubsans
ok i see,
I have experienced reverse engineering few times about car CAN protocol
I have experienced reverse engineering few times about car CAN protocol
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
15 Jan 2016 17:03 - 15 Jan 2016 17:04 #41785
by goebish
Replied by goebish on topic The New Hubsans
Also, if you can build the firmware and do some code yourself, here are my latest sources,
leds for H501
are already implemented, shouldn't be hard to add the extra flags 
bitbucket.org/goebish/deviationtx/branch/protocol_h501s#diff
bitbucket.org/goebish/deviationtx/branch/protocol_h501s#diff
Last edit: 15 Jan 2016 17:04 by goebish.
- delta75
-
- Offline
Less
More
- Posts: 51
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
15 Jan 2016 18:54 #41791
by goebish
Replied by goebish on topic The New Hubsans
Wow thank you 
I almost finished working on the other protocol (a surface protocol, not for deviation ...) so I think I'll be able to add your data during the week-end
I almost finished working on the other protocol (a surface protocol, not for deviation ...) so I think I'll be able to add your data during the week-end
- FDR
-
- Offline
15 Jan 2016 19:37 #41793
by FDR
Replied by FDR on topic The New Hubsans
Actually I miss the surface protocols from deviation...
- goebish
-
- Offline
- NRF Weirdo
Less
More
- Posts: 2633
15 Jan 2016 20:20 - 15 Jan 2016 20:21 #41795
by goebish
Replied by goebish on topic The New Hubsans
Ah Ok, I just implemented the protocol for this RX in my multi-protocol PPM to nrf24L01 converter 
www.hobbyking.com/hobbyking/store/RC_PRO....asp?strSearch=hk310
Do you think I should add it to Deviation too ?
www.hobbyking.com/hobbyking/store/RC_PRO....asp?strSearch=hk310
Do you think I should add it to Deviation too ?
Last edit: 15 Jan 2016 20:21 by goebish.
- Fernandez
-
- Offline
Less
More
- Posts: 983
15 Jan 2016 21:03 - 15 Jan 2016 21:10 #41796
by Fernandez
Replied by Fernandez on topic The New Hubsans
Certainly if you have figured out the protocol, lets add it, thats the full power of deviation one tx for anything !!!
HK310 TX and Robitronic TL-3C
HK310 TX and Robitronic TL-3C
Last edit: 15 Jan 2016 21:10 by Fernandez.
Time to create page: 0.490 seconds
-
Home
-
Forum
-
Development
-
Protocol Development
- The New Hubsans