HK310 protocol (RX HK-3000, HK3100 and XY3000)

More
20 Jan 2016 14:48 #41984 by planger
Hi,

I would like to propose a new protocol not available yet on deviation based on the nrf24l01 module.
It's used by car radio HK300, HK310 and TL-3C to control these RX HK-3000, HK3100 and XY3000.
The working code is posted here github.com/pascallanger/DIY-Multiprotoco...l/Hisky_nrf24l01.ino .
The main protocol is Hisky and sub protocol HK310.
Channels assignment are:
CH1 CH2 CH3 CH4 CH5 CH6 CH7 CH8
- - T R AUX T_FSAFE R_FSAFE AUX_FSAFE
It should be quick and easy to integrate.

Regards, Pascal

Please Log in or Create an account to join the conversation.

More
20 Jan 2016 18:17 - 21 Jan 2016 16:18 #41995 by goebish
Thanks planger, I was going to implement it but sometimes the RX had a few synch issues at startup.

Looking at your code I think I understand why now :)
Last edit: 21 Jan 2016 16:18 by goebish.

Please Log in or Create an account to join the conversation.

More
22 Jan 2016 11:38 - 22 Jan 2016 12:11 #42067 by goebish
Ok, it's working, I only have to manage failsafe then it should be ready for a pull request.

I confirmed what was wrong with my first implementation, that's because I did not thoroughtly understood the protocol description at first ( github.com/laneboysrc/nrf24l01-rc/blob/m.../doc/hkr3000-info.md ) ,and my generated list of channels for hopping was wrong.
Also, I modified your frequency hops generation, so it uses an arbitrary first channel instead of always using 0~19, as explained in the description:
// for HiSky surface protocol, the transmitter always generates hop channels in sequencial order. 
// The transmitter only generates the first hop channel between 0 and 49. So the channel range is from 0 to 69.
static void calc_surface_fh_channels(u32 seed)
{
    u8 idx = 0;
    u8 chan = seed % 50;
    while(idx < FREQUENCE_NUM) {
        hopping_frequency[idx++] = chan++;
    }
}
As stated, this is poor for resilience against interferences, but this is required for the RXs to work ...

Seems rock solid with my test RX now :) (HiSky XY3100)
Last edit: 22 Jan 2016 12:11 by goebish.

Please Log in or Create an account to join the conversation.

More
22 Jan 2016 12:10 #42068 by planger
Thanks for the feedback. I'll update my version as well.

- Pascal

Please Log in or Create an account to join the conversation.

More
22 Jan 2016 17:45 - 22 Jan 2016 17:46 #42086 by goebish
Here's a test build with a new HiSky protocol option: Format (Air / Surface)

Devo 7e
Devo 10
source

Scaling works (-/+ 125% = 1000-2000us)
Failsafe works

Note that the surface protocol will only work with nRF24L01+ as it operates at 250Kbps.
Last edit: 22 Jan 2016 17:46 by goebish.

Please Log in or Create an account to join the conversation.

More
22 Jan 2016 18:16 #42087 by SeByDocKy
Replied by SeByDocKy on topic HK310 protocol (RX HK-3000, HK3100 and XY3000)

goebish wrote: Here's a test build with a new HiSky protocol option: Format (Air / Surface)

Devo 7e
Devo 10
source

Scaling works (-/+ 125% = 1000-2000us)
Failsafe works

Note that the surface protocol will only work with nRF24L01+ as it operates at 250Kbps.


Anyone knows if the protocol is used for the HiSky HMX280 ?

Please Log in or Create an account to join the conversation.

More
22 Jan 2016 18:17 - 22 Jan 2016 18:18 #42088 by goebish
No way, this is a 3 channel protocol ;)
For cars basically ...

But maybe it's using the same "Air" protocol that's already implemented ?
Last edit: 22 Jan 2016 18:18 by goebish.

Please Log in or Create an account to join the conversation.

More
22 Jan 2016 21:21 #42095 by SeByDocKy
Replied by SeByDocKy on topic HK310 protocol (RX HK-3000, HK3100 and XY3000)

goebish wrote: No way, this is a 3 channel protocol ;)
For cars basically ...

But maybe it's using the same "Air" protocol that's already implemented ?


Ho I should try this variant ...

btw the range control with this 3CH receiver @250Kbits should be amazing ?

Please Log in or Create an account to join the conversation.

More
24 Jan 2016 12:30 - 24 Jan 2016 12:32 #42168 by goebish
I made another small patch so the payload is transmitted twice per rf channel, as stock transmitters.
bitbucket.org/goebish/deviationtx/commit...d89c977cc?at=default

I think it's ready to be merged with default...
bitbucket.org/deviationtx/deviation/pull.../protocol_hk310/diff
Last edit: 24 Jan 2016 12:32 by goebish.

Please Log in or Create an account to join the conversation.

Time to create page: 0.040 seconds
Powered by Kunena Forum