JRL

Picooz

=PicooZ=
”’Data bits:”’
{|
! Bit || LED
|-
| 0-Bit || 0,57 ms high
0,57 ms low
|-
| 1-Bit || 1,14 ms high
1,14 ms low
|}

A control signal consists of header, ID, 13 data bits and one stop bit:

==Header==
{|
| 1,90 ms || high
|-
| 0,65 ms || low
|}

==ID==
The ID seems to exist just to differ between the PicooZ signals and signals from other products by Silverlit, but is not used anymore in the challenger set.
It is send as the bit string “0011”, but distinguishes from the data bits in the signal length:

{|
| 0,65 ms || high
|-
| 0,65 ms || low
|-
| 0,65 ms || high
|-
| 0,65 ms || low
|-
| 1,15 ms || high
|-
| 0,65 ms || low
|-
| 1,15 ms || high
|-
| 0,65 ms || low
|}

==Channel (2 Bits)==
{|
! Channel || Bits (decimal)
|-
| A || 00 (0)
|-
| B || 01 (1)
|-
| C || 10 (2)
|}

==Throttle (4 Bits)==
The main rotor has 15 different speed settings. 0 means stop, 14 is the maximum. It exists a 16th stage, but in this stage the tail rotor stops spinning and makes the helicopter uncontrollable. Therefore this setting is currently set to the last working value by the AVR firmware.

==Yaw trim (4 Bits)==
Like on other remote controls there is also a function to adjust the steering behavior, unlike on other remote controls this is not saved in the remote control, but in the helicopter itself. It is possible to trim left and right. To adjust the steering behavior about more than one pitch, there has to be a null trim signal between two trim signals. But be aware of using this function too often, it looks like there happens an overflow in the internal cache of the helicopter which will result in a very strong adjustment to the other side. The trim adjustment is lost when power of the helicopter is switched off.

{|
! Adjustment || Bits (decimal)
|-
| none || 0000 (0)
|-
| right || 0001 (1)
|-
| left || 1111 (-1)
|}

==Yaw control (3 Bits)==
{|
! Stage || Bits (decimal)
|-
| center || 000 (0)
|-
| left 1 || 001 (1)
|-
| left 2 || 010 (2)
|-
| left 3 || 011 (3)
|-
| right 1 || 111 (-1)
|-
| right 2 || 110 (-2)
|-
| right 3 || 101 (-3)
|}
Be aware of the fact that the steering is inverted for the helicopters from the challenger set. Note: The AVR firmware uses the challenger way to control the steering behavior, for the PiccoZ helicopters the values are inverted before they get sent to the AVR board.

==Check sum (2 Bits)==
The last 2 bits of the protocol are used for two check sum bits. Signals with a wrong check sum corresponding to those bits are ignored by the helicopter.

The check sum itself is generated over the 13 data bits, by adding 2 for each 1-bit at an even position and 3 for each 1-bit at an odd position (position counter starts at 0). Only the 2 least significant bits are relevant to the check sum (all other bits are truncated), however in contrast to data bits, the least significant bits of the check sum is transmitted first.

The check sum is calculated by the microcontroller.

==Stop bit==
{|
| 0,65 ms || high
|-
| 0,65 ms || low
|}


top