- Posts: 776
Support for walkera telemetry.
- aMax
- Offline
www.min.at/prinz/?x=entry:entry140107-181200
Edit: UP02 inside..
walkera-fans.de/faq/kann-ich-den-up02-ad...en-adapter-ersetzen/
Devo7e, TaranisQ X7, R9M , 4in1 MM, Futaba FC18plusV3.2 & DFT/FLD-02
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
www.ebay.com/itm/USB-2-0-to-UART-TTL-6PI...&hash=item339aeeb9e8
I'll just use a file to capture logs. I think we're still waiting on Indigo for a new build with his latest fix? After that, I'll add in some additional logging info.
Please Log in or Create an account to join the conversation.
- Indigo
- Offline
- Posts: 230
PhracturedBlue wrote: I think we're still waiting on Indigo for a new build with his latest fix?
My latest code is available here .
I'm trying to work out how to gracefully end receive mode and force when required.
Please feel free to make any coding suggestions.
Please Log in or Create an account to join the conversation.
- vlad_vy
- Offline
- Posts: 3333
/*
* 1 - Tx else Rx
*/
void CYRF_SetTxRxMode(enum TXRX_State mode)
{
//Set the post tx/rx state
CYRF_WriteRegister(0x0F, mode == TX_EN ? 0x2C : 0x28);
#if HAS_MULTIMOD_SUPPORT
if (MODULE_ENABLE[CYRF6936].port == 0xFFFFFFFF) {
if ((MODULE_ENABLE[CYRF6936].pin >> 8) == 0x01) {
AWA24S_SetTxRxMode(mode);
return;
}
if ((MODULE_ENABLE[CYRF6936].pin >> 8) == 0x02) {
BUYCHINA_SetTxRxMode(mode);
return;
}
}
#endif
if(mode == TX_EN) {
CYRF_WriteRegister(0x0E,0x80);
} else {
CYRF_WriteRegister(0x0E,0x20);
}
}
I don't understand how it possible:
CYRF_WriteRegister(0x0F, mode == TX_EN ? 0x2C : 0x28);
I reviewed several implementations of DSM2/X protocols and as I can see they use:
CYRF_WriteRegister(0x0F, mode == TX_EN ? 0x28 : 0x2C);
CYRF_MODE_SYNTH_TX = (0x2 <<2),
CYRF_MODE_SYNTH_RX = (0x3 <<2),
How it can work with exchanged TX and RX in Deviation???
Probably I incorrectly understand how work code "mode == TX_EN ? 0x2C : 0x28".
But, very old code do the same thing:
/*
* 1 - Tx else Rx
*/
void CYRF_ConfigRxTx(u32 TxRx)
{
if(TxRx)
{
CYRF_WriteRegister(0x0E,0x80);
CYRF_WriteRegister(0x0F,0x2C);
}
else
{
CYRF_WriteRegister(0x0E,0x20);
CYRF_WriteRegister(0x0F,0x28);
}
}
Please Log in or Create an account to join the conversation.
- vlad_vy
- Offline
- Posts: 3333
Nothing changed, at least for Devo protocol. All work fine.
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
I checked my dsm2/x logs and it is a mixed bag. Some radios use 2c for Tx, others don't' use 0x0f for forcing mode, and only use mode 0x24 (idle mode). I wouldn't be surprised if we could get rid of the mode 0x0f setting altogether.
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
Please Log in or Create an account to join the conversation.
- vlad_vy
- Offline
- Posts: 3333
In Synth Mode (TX), the synthesizer is settled to the channel frequency and the time for which it will remain in this state the synthesizer will remain tuned to this frequency. If we switch to the sleep state then the synthesizer will be switched OFF and it needs to be settled down again before transmitting.
Synth Mode (RX) is used when we are using the different frequency for transmission and reception. Before switching to the Receive mode device will switch to the Synth Mode (RX). In this the synthesizer will tune to the frequency required. Once the frequency is tuned to the Receive Frequency then the device will switch to Receive mode for reception of data, whenever required. Thus, eliminating the delay required to switch the frequency from transmit to receive.
What is the difference between "idle mode" and "RX mode" of CYRF6936?
In Idle mode the oscillator, SPI and PMU are running and it won't be receiving or transmitting. But in RX mode the oscillator, SPI, and PMU are running along with the synthesizer In this mode the device will be in the reception state. The power consumption in this mode will be more than the Idle mode.
Please Log in or Create an account to join the conversation.
- linux-user
- Offline
- Posts: 271
Thank you for your effort.PhracturedBlue wrote: FYI, I hooked up my logic analyzer to my UP02 and I can't get it to wiggle at all in linux using a term.
I've ordered a "CP2102 USB 2.0 zu TTL UART Module 6 pin converter".
Together with UP02_adapter and a standard 3,5mm audio cable this should give us a "plug and play" solution for logging.
Please Log in or Create an account to join the conversation.
- vlad_vy
- Offline
- Posts: 3333
"Telemetry data is transmitted as 2 16 byte packets. Packets are sent every 2.4msec. They are processed between data packets."
What does it mean? Two telemetry packets can be received in 2.4msec, after data packet?
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
data packets are also received every 2.4msec from the rx to the tx
After sending the transmit command for a data packet, the transmitter waits 700us, then starts checking for tx completeion (Reg04). It will poll Reg04 every 10us until tx completes, then switches to Rx mode. this usually happens about 950us after a packet is transmitted. Then the transmitter will look for data received. It polls Reg07 every 200us until a packets is available, at which point it is read.
Please Log in or Create an account to join the conversation.
- vlad_vy
- Offline
- Posts: 3333
Please Log in or Create an account to join the conversation.
- vlad_vy
- Offline
- Posts: 3333
vlad_vy wrote: Tested build with CYRF_WriteRegister(0x0F, mode == TX_EN ? 0x28 : 0x2C);
Nothing changed, at least for Devo protocol. All work fine.
DSM2/X protocol also work fine.
Please Log in or Create an account to join the conversation.
- Indigo
- Offline
- Posts: 230
vlad_vy wrote: Latest Indigo build 36cce5c - Devo telemetry is ON, I can see Rx voltage on Main screen, but Telemetry Monitor screen says 'Telemetry is off' (Devo 8s).
Try build 5c8744e
Please Log in or Create an account to join the conversation.
- linux-user
- Offline
- Posts: 271
Got disconnected with Devo10 and telemetry ONIndigo wrote: Try build 5c8744e
Please Log in or Create an account to join the conversation.
- vlad_vy
- Offline
- Posts: 3333
Please Log in or Create an account to join the conversation.
- vlad_vy
- Offline
- Posts: 3333
Please Log in or Create an account to join the conversation.
- Indigo
- Offline
- Posts: 230
vlad_vy wrote: Examples:
read.pudn.com/downloads139/doc/597220/CY...orial_1/main.c__.htm
Excellent
Great find, thank you.
Please Log in or Create an account to join the conversation.
- vlad_vy
- Offline
- Posts: 3333
MyRadioAbort(RxState); // Stop the receive operation
before transmit, just in case.
Please Log in or Create an account to join the conversation.
- Indigo
- Offline
- Posts: 230
It's getting late here, so I won't start work on this until tomorrow.
I should have a new version within 24hrs.
Please Log in or Create an account to join the conversation.
- Home
- Forum
- Development
- Protocol Development
- Support for walkera telemetry.