Lorenz Meier
5fbee23945
Added flag to disable RC evaluation onboard of IO (raw values still forwarded)
2013-08-21 11:17:29 +02:00
Lorenz Meier
061be7f7fe
Merged master
2013-08-17 20:30:52 +02:00
Jean Cyr
bafc5ea8a1
Remoce C++ style Doxygen comments
...
Replace C++ style comments with C comments
2013-08-16 18:35:52 -04:00
Lorenz Meier
52d15ac7b1
Merged public master
2013-08-16 16:22:38 +02:00
Jean Cyr
ab80b0e273
Doxygenate and style dsm.c
...
One file a day... this'll take a while!
2013-08-15 19:51:36 -04:00
Lorenz Meier
d2f19c7d84
Merge pull request #354 from jean-m-cyr/master
...
Support initiating DSM bind via QGroundControl
2013-08-14 12:43:59 -07:00
Julian Oes
3a21cacdbb
Fix bug where IO was in override mode for copter (workaround was to disconnect and reconnect Rx
2013-08-14 16:00:35 +02:00
Jean Cyr
36679fbb39
Some DSM satellites are fussier about bind pulse timing
...
These values work better
2013-08-10 11:22:08 -04:00
px4dev
9d6ec6b365
Restructure things so that the PX4 configs move out of the NuttX tree, and most of the PX4-specific board configuration data moves out of the config and into the board driver.
...
Rename some directories that got left behind in the great board renaming.
2013-08-02 22:34:55 -07:00
Lorenz Meier
dd3033fa6f
Symbol cleanup for servo vs. battery voltage
2013-07-26 15:16:48 +02:00
Lorenz Meier
2f76c81147
More compile fixes
2013-07-16 09:08:05 +02:00
px4dev
dca9019f75
Merge branch 'master' of https://github.com/PX4/Firmware into fmuv2_bringup
2013-07-14 13:04:44 -07:00
Jean Cyr
897b541b12
General cleanup of /dev/px4io and /dev/px4fmu
...
- Use distinct common symbols for px4io and px4fmu device files, and use
instead of hardcoded filenames
- Use common symbols defining px4io bits consistently between px4fmu and
px4io builds.
2013-07-09 20:37:00 -04:00
px4dev
e2458677c9
Tweak IO serial packet error handling slightly; on reception of a serial error send a line break back to FMU. This should cause FMU to stop sending immediately.
...
Flag these cases and discard the packet rather than processing it, rather than simply dropping the received packet and letting FMU time out.
2013-07-07 20:42:03 -07:00
px4dev
b4029dd824
Pull v2 pieces up to build with the merge
2013-07-07 17:53:55 -07:00
Jean Cyr
dab652faf6
Prevent RELAY1 control via IOCTL if DSM bind feature is enabled
2013-07-07 19:04:30 -04:00
px4dev
43f1843cc7
Merge branch 'master' of https://github.com/PX4/Firmware into fmuv2_bringup
2013-07-07 12:22:56 -07:00
Jean Cyr
35711280df
Merge remote-tracking branch 'upstream/master'
2013-07-07 14:29:30 -04:00
px4dev
8fa226c909
Tweak protocol register assignments and add new registers to accommodate differences in IOv2.
2013-07-06 23:59:35 -07:00
px4dev
4d400aa7e7
Enable UART error handling on PX4IO.
2013-07-06 12:27:37 -07:00
px4dev
87a4f1507a
Move the common definitions for the PX4IO serial protocol into the shared header.
2013-07-06 00:16:37 -07:00
px4dev
19b2e1de85
Copy the correct number of bytes back for register read operations. Basic PX4IO comms are working now.
2013-07-06 00:00:44 -07:00
px4dev
3c8c596ac7
Enable handling for short-packet reception on FMU using the line-idle interrupt from the UART. Enable short packets at both ends.
2013-07-05 20:37:05 -07:00
px4dev
bcfb713fe9
Enable handling for short-packet reception on IO using the line-idle interrupt from the UART.
2013-07-05 20:35:55 -07:00
px4dev
f9a85ac7e6
Remove the TX completion callback on the IO side.
...
Report CRC, read and protocol errors.
2013-07-05 19:16:25 -07:00
px4dev
10e673aa4b
Send error response if register write fails.
2013-07-05 19:02:42 -07:00
px4dev
46a4a44321
Be more consistent with the packet format definition.
...
Free perf counters in ~PX4IO_serial
2013-07-05 18:36:00 -07:00
Jean Cyr
3f9f2018e2
Support binding DSM2 and DSMX satellite receivers
...
The px4io bind command allows you to put a DSM satellite receiver into
bind mode. Since this feature requires that
the dsm VCC line (red wire) be cut and routed through relay one, it is
not enabled by default in order not to
affect those not using a DSM satellite receiver or wising to use relay
one for other purposes.
NOTE: Binding DSM2 satellites in 11-bit mode is not supported due to
potential bug in some DSM2 receiver streams
when in 11-bit mode. Furthermore the px4io software folds 11 bit data
down to 10 bits so there is no resolution
advantage to to 11-bit mode.
To enable the feature the RC_RL1_DSM_VCC parameter must be set to a non
zero value from the console, or using
QGroundControl:
param set RC_RL1_DSM_VCC 1
From the console you can initiate DSM bind mode with:
uorb start
param set RC_RL1_DSM_VCC 1
px4io start
px4io bind dsm2
For binding a DSMX satellite to a DSMX transmitter you would instead
use:
px4io bind dsmx
Your receiver module should start a rapid flash and you can follow the
normal binding sequence of your
transmitter.
Note: The value of parameter RC_RL1_DSM_VCC defaults to 0, so none of
this will have any effect on an unmodified
DSM receiver connection. For this feature to work, the power wire (red)
must be cut and each side connected to a
terminal on relay1 of the px4io board.
This has been tested using Spektrum as well as Hobby King 'Orange' DSM
satellite receivers.
Both px4fmu and px4io images are updated.
2013-07-05 20:51:29 -04:00
px4dev
50cae347b4
Check packet CRCs and count errors; don't reject packets yet.
2013-07-05 17:13:54 -07:00
px4dev
5a8f874166
Add an 8-bit CRC to each transmitted packet.
2013-07-05 16:56:47 -07:00
px4dev
313231566c
Encode the packet type and result in the unused high bits of the word count.
2013-07-05 16:41:27 -07:00
px4dev
e55a37697d
Always send and expect a reply for every message.
2013-07-05 16:34:44 -07:00
px4dev
83213c66df
Reset the PX4IO rx DMA if we haven't seen any traffic in a while; this gets us back into sync.
2013-07-04 23:22:59 -07:00
px4dev
94b638d848
One more piece of paranoia when resetting DMA
2013-07-04 23:19:24 -07:00
px4dev
43210413a9
More test work on the px4io side of the serial interface.
2013-07-04 23:17:55 -07:00
px4dev
c21237667b
iov2 pin definition cleanup sweep
2013-07-04 23:16:13 -07:00
px4dev
be6ad7af3b
Rework the FMU<->IO connection to use a simple fixed-size DMA packet; this should let us reduce overall latency and bump the bitrate up.
...
Will still require some tuning.
2013-07-03 00:08:12 -07:00
px4dev
d1562f926f
More implementation for the serial side on IO; fix a couple of bugs on the FMU side.
...
Still needs serial init and some more testing/config on the FMU side, but closer to being ready to test.
2013-06-28 23:39:35 -07:00
px4dev
90c458cb61
Checkpoint: interface abstraction for px4io driver
2013-06-25 23:08:34 -07:00
Lorenz Meier
9444def5f8
Merge branch 'master' into fmuv2_bringup
2013-06-10 15:01:44 +02:00
Lorenz Meier
ebc12eebd0
Merged
2013-06-07 13:04:49 +02:00
Lorenz Meier
6c7c130de7
Hotfix: Make IOs mixer loading pedantic to make sure the full mixer loads
2013-06-07 10:34:55 +02:00
Lorenz Meier
8ad3aa315f
Merged master
2013-06-06 07:57:31 +02:00
Lorenz Meier
4db739b5e1
Integration WIP with current NuttX version
2013-06-01 01:48:42 +02:00
Lorenz Meier
abb024c724
More safety added by disabling pulses
2013-05-29 18:32:23 +02:00
Lorenz Meier
f6570172da
Set default failsafe value to 0 of mixer
2013-05-29 17:07:26 +02:00
Lorenz Meier
2876bc72f9
Slightly reworked IO internal failsafe, added command to activate it (px4io failsafe), does not parse commandline arguments yet
2013-05-28 17:46:24 +02:00
px4dev
308ec6001a
Add serial read-length handling.
2013-05-22 22:09:00 +02:00
px4dev
437d9e4180
Merge branch 'fmuv2_bringup' into fmuv2_bringup_io2
2013-05-22 21:39:30 +02:00
Lorenz Meier
88ba97816d
Better preflight check, catches wrong RC configs. Needs rework of mavlink text message API to VARARGs
2013-05-21 09:14:22 +02:00