Commit Graph
37 Commits
Author SHA1 Message Date
px4dev b4029dd824 Pull v2 pieces up to build with the merge 2013-07-07 17:53:55 -07: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 a65a1237f0 Optimise the RC input fetch for <= 9ch transmitters; this eliminates one read per cycle from IO in the common case. 2013-07-06 12:29:14 -07:00
px4dev 17f9c7d15c Crank up the test speed for 'px4io iftest 1' 2013-07-06 12:28:01 -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 0589346ce6 Abort the px4io worker task if subscribing to the required ORB topics fails. 2013-07-06 00:00:10 -07:00
px4dev a4b0e3ecbe Add retry-on-error for non-protocol errors.
Add more performance counters; run test #1 faster.
2013-07-05 22:54: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 87c3d1a8c1 More link performance counters. 2013-07-05 19:03:08 -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
px4dev 6c5a15da9b Eliminate the TD DMA callback; we don't need to know that it's completed.
Fix abort behaviour on timeouts, now we don't wedge after the first one.
2013-07-05 17:39:28 -07: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 d83323d4a2 Use the NuttX built-in crc32, it works fine. 2013-07-05 16:18:55 -07:00
px4dev 52096f017f Switch to the 'normal' way of doing register accessors.
Be more aggressive en/disabling DMA in the UART, since ST say you should.
2013-07-04 23:17:16 -07:00
px4dev 2e001aad04 Add PX4IOv2 support to the uploader. 2013-07-04 12:50:59 -07:00
px4dev f2079ae7ff Add DMA error handling.
Add serial error handling.
Add short-packet-reception handling (this may allow us to send/receive shorter packets… needs testing).
2013-07-04 11:21:25 -07:00
px4dev 7255c02c20 Add a test hook for the PX4IO interface. Wire up some simple tests for the serial interface.
Signal quality looks good at 1.5Mbps. Transmit timing is ~450µs per packet, ~20µs packet-to-packet delay spinning in a loop transmitting.
2013-07-03 23:41:40 -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 4e3f4b57e3 Hotfix: Allow the IO mixer loading to load larger mixers, fix up the px4io test command to allow a clean exit 2013-06-07 10:36:56 +02:00
Lorenz Meier 45fe45fefa Better error handling for too large arguments 2013-06-04 13:32:57 +02:00
Lorenz Meier 5f2571dd01 Set unknown channels to zero, since centering them is a slightly dangerous guess 2013-05-29 18:29:41 +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
Lorenz Meier 58084685b2 Hotfix: Changed alarms back to what they originally were designed for: Traps to later see if condition was once violated. Currente status can be read through the status flags 2013-05-16 09:12:13 +02:00
Andrew Tridgell fa816d0fd6 arming: added PWM_SERVO_SET_ARM_OK and PWM_SERVO_CLEAR_ARM_OK
these new ioctls allow for the flight code to tell the IO board that
arming can proceed
2013-05-16 08:39:24 +02:00
Lorenz Meier 79f9b61aff Fixed led patterns to be up to the latest specs 2013-05-12 20:05:20 +02:00
Lorenz Meier 26efba2ff3 New blink patterns for safety switch, removed GPS lock indicator 2013-05-09 17:38:12 +02:00
Andrew Tridgell d7e04a3619 px4io: fixed voltage/current output and add discharged_mah calculation
this integrates the current over time to calculate discharged_mah, and
allows the scaling of the current and the bias to be set with the
px4io command
2013-05-04 19:18:55 +10:00
Andrew Tridgell fc572906b7 px4io: ensure upload device is closed after use
this should release it for PWM use
2013-05-04 19:18:11 +10:00
Andrew Tridgell 421253e6db px4io: allow set of output rates above 400 and below 50
let the IO board decide if the rate is reasonable, and limit it there

this fixes the rates on ArduCopter, which try for 490
2013-05-04 19:17:54 +10:00
Lorenz Meier f57439b90e Moved all drivers to new world, PX4IO completely in new world 2013-04-28 01:30:14 +02:00
Lorenz Meier e6ed8268ee Moved position_estimator_mc, px4io driver and sdlog app to new style build 2013-04-27 12:59:47 +02:00