RC channel to control relay for powering on-board ODroid


I have an ODroid on my fixed wing (PX4FMU/PX4IO). The ODRoid is running off a small 2 cell battery. Power regulation is done with a DC/DC converter that has a 5V enable pin.

Since the endurance of the ODroid is lower than the flight endurance, I would like to have the ability to boot the ODroid in air. To do this, I wanted to use an RC channel (a two-way switch) to toggle AAC2 supply on the PX4IO. Is there a way to do this? There’s lots around camera triggering, but that won’t work in this case.


Hi, did you come across a solution for this yet? I am in a similar situation

Yes and no. I can control the relay with MAVlink commands. If you configure the relay in mavlink parameters, you can toggle it with a command like ‘relay set 0 1’ (I use mavproxy, which is where this common lives). However, as I intend to let the ODroid eventually control some aspects of flight, I need a kill switch on the RC remote. I have yet to figure that out, although I’m close to hacking something together. It’s far from quality code though. I’ll post it here when I’ve tested it.

Hi Chris,
I’m doing exactly this on my Porter. I have a 5V relay connected to AUX6 and am powering my Odroid using the following in my $HOME/.mavinit.scr:
@alias add odroidpower relay set 0
I can then do “odroidpower 0” to power off, and “odroidpower 1” to power on.
I have RELAY_PIN set to 55, and BRD_PWM_COUNT set to 4. I also have RELAY_DEFAULT set to 1, so that the relay starts in the on position (which means if I reboot the Pixhawk the Odroid doesn’t power cycle).
There is no neat way to also control this from a transmitter switch, but you could certainly add one. Probably best to add a new RCn_FUNCTION operation called k_relay, allowing any RC input channel to control the first relay.
Cheers, Tridge