Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IOMCU: io firmware enhancements #9661

Closed
wants to merge 65 commits into from
Closed

Conversation

tridge
Copy link
Contributor

@tridge tridge commented Oct 31, 2018

This adds support for IO failsafe mixing with ChibiOS IO firmware, and adds DSM RC input support

@WickedShell please test

@tridge tridge force-pushed the pr-io-mixer branch 4 times, most recently from 6252c4b to 274a1b7 Compare October 31, 2018 05:42
@WickedShell
Copy link
Contributor

Initial testing results:

  • Attempts to break servos during initial boot after uploading new firmware (moves to extreme limits and is bound mechanically) possibly associated with doing IO firmware update? Haven't seen it on subsequent runs.
  • Cube has green internal LED's illuminated which are not normally lit with a PX4 build
  • Safety button LED is always illuminated, but can blink stronger (Please see video here: https://drive.google.com/file/d/1oyioIoYkDDC5YEzXXKGknovXamyM7OYT/view?usp=sharing) Most likely a difference in pull down/up settings?
  • Servos are slack as if no pulses were received after power cycling (I should be seeing overrides active with manual control of the rudder/elevator regardless of safety switch state)

Will move to a logic analyzer before proceeding further with testing.

@tridge tridge force-pushed the pr-io-mixer branch 2 times, most recently from a2a74c0 to 69a3285 Compare November 1, 2018 03:40
@tridge tridge changed the title IOMCU: added failsafe mixer IOMCU: io firmware enhancements Nov 1, 2018
@WickedShell
Copy link
Contributor

IMU heater does not appear to be working (was tested with #9674 so the changes in this PR are not present).

@tridge tridge force-pushed the pr-io-mixer branch 2 times, most recently from 7ec4e00 to f0d32e4 Compare November 1, 2018 07:28
@tridge
Copy link
Contributor Author

tridge commented Nov 1, 2018

@WickedShell I've fixed the heater

@WickedShell
Copy link
Contributor

Comments from 7c11cf498f7ec4:

  • DSM Input works (have not attempted binding yet)
  • Still see an attempt to break servos, I need to check if there is a servo side failsafe configured on one servo by accident as the logic analzer isn't showing any pulses that explain it.
  • Safety switch was required to change the IO firmware back to px4-v3
  • BRD_SAFETY_MASK does not function resulting in no outputs while safety has not been pressed

I still need to verify overrides with this setup.

@tridge tridge force-pushed the pr-io-mixer branch 5 times, most recently from fe3c6a3 to 4f86fc3 Compare November 3, 2018 06:32
@tridge
Copy link
Contributor Author

tridge commented Nov 3, 2018

@WickedShell I believe I have fixed the issues you found

@rmackay9
Copy link
Contributor

rmackay9 commented Nov 3, 2018

I flew this in my venerable IRIS and it seems a-ok.

@tridge tridge force-pushed the pr-io-mixer branch 2 times, most recently from d3900ed to b84dfd0 Compare November 5, 2018 05:46
this gives a more efficient way of accessing an ObjectBuffer, which
reduces interrupt latency in SoftSigReader
this reduces interrupt latency on the F100, which allows us to use all
RC input protocols on the pulse based decoder, allowing for more
flexibility in RC input protocols
this provides more efficient processing of RC pulses
for SRXL and DSM we should judge a frame timeout from the pulses,
otherwise lag in the DMA capture can cause a false frame drop
useful for receivers where DSM uses a normal servo plug
This saves 8k of flash, and allows the plane stable release for older
Pixhawk1 boards to build
this allows searching for uart protocols after losing a pulse based
protocol
removed delay in main loop to reduce latency of RC input. This works
as we only have one thread
base detection on framing, not including failsafe
@tridge
Copy link
Contributor Author

tridge commented Nov 6, 2018

this has been merged

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants