Solex default flight mode Issue

When using the SolexTX app on the herelink there is an issue where upon powering up the craft and Solex as the GS, it always defaults to the “stabilized” flight mode. This may seem like a small problem but when building commercial systems the LAST thing I want is one of my customers to assume Ive done the setup, arm the craft and try to hover it in stabilized mode with a self-centering throttle stick. I even worry about myself operating the system because when testing and tuning we power cycle the craft all the time and all it takes is for me to forget to change it one time, arm the craft, and goodbye several thousand dollars. Is is possibe to change this default flight mode anywhere in the herelink or the solex settings?
I have my A button set to switch between Loiter and Alt Hold, and ive set all the flight mode params so that it shouldnt even be possible to select stabilize but still it continues to default to that flight mode on startup. Hoping this is an easy fix but I cant seem to find any info on it.

I’ve been chatting with @kellyschrock about the exact same thing. He said a Solex CC worker could make the vehicle boot into whatever flight mode you prefer.

1 Like

Exscuse my ignorance but does that mean getting in touch with the solex dev team and having them compile a custom version of the firmware just to change the default flight mode?

I think this is as much as Ardu issue as Herelink as I think it’s the default mode with no input. I’m having a look into this my self too. Wait to see what Kelly says as some options.



This isn’t really an “issue”, it’s more of a feature Solex doesn’t have. Solex has always left the vehicle’s flight mode up to the user and to the vehicle, changing it only when the user request that it be changed.

I could add something to have Solex put the vehicle in a specific flight mode, but the question of “when should it do that” seems like a valid one. When the flight screen is opened? When the connection is made? And once that’s done, the user could still go into the flight screen and select whatever mode appears in the drop-down list and pick the mode.

The comment about Solex CC is true, but likely doesn’t apply here. To use SolexCC to set a default flight mode, you’d first have to have a vehicle running SolexCC, and it doesn’t sound as though you have that in place.


Beside the problem of the initial flight mode into stabilise, I realize today that also the simple mode is not working. After I have change flight channel to 0, any mode I choose is not in simple mode. Do anyone else face the same problem? At mission planner the simple mode is checked.

@kellyschrock No, I am very new to Solex and I definitely do not have a craft running SolexCC. If you were going to add a default flight mode feature I would think it would be easiest to just have a settings option for “default flight mode on launch” so when that app is opened it will start in that flight mode. I am not so interested in locking certain flight modes in the drop-down list (although for us custom builders that would be a sweet feature) just because that is a pretty intuitive feature. If a client, especially a client coming from DJI gear, were to get instructions from me explaining which flight modes were set to which buttons, they would assume it would either default to loiter or alt-hold. If they choose the wrong flight mode in the drop-down list because they didnt read the provided documentation that is on them, but if I sell them a “turn-key” system that flies off the ground the second they arm it, that is most definitely on me.

Thanks for your time on this Kelly, it is greatly appreciated

There could be some real issues with Solex setting the mode on boot or connection as what happens in a crash and reboot or closing the app and opening as it would change in flight potentially.

I think this is something we need t look at into Ardu rather than Herelink and have the ability to set the base mode as you can do it in plane.

However really a mode check is one of the basic pre flight tasks that should always be done, im not sure this is a huge issue.

This can also be simply achieved in a Lua script too if its a major issue for someone

Fair enough, it is certainly best practice to do a pre-flight mode check and we will have this in our documentation. I was really just checking to see if there was a solex based solution to the problem but I think youre probably right in that it would best be a change made in the flight firmware. Thanks for taking the time on this, much appreciated.

To be honest, I wholeheartedly agree. Suppose you’re flying a mission and while you’re waiting around, you decide to reboot your Android device. Solex comes up, connects, and switches to Loiter or whatever flight mode you’ve specified. At best it would be annoying, at worst it would lead to a crash.

I’m honestly kind of surprised there isn’t a way to set a default mode in the flight controller itself.

1 Like

I was just about to write a post about this just now. I am using QGC and Herelink wants us to disable ch_fltmode, but when I do it always boots up in stabilize mode and want it to boot up in loiter or guided. I hope this can be resolved in Copter or Herelink software.

1 Like

There’s been some talk of fixing it in the flight controller, which IMO is the right place to fix it. Plane apparently already has that ability, so it may be a matter of enabling it on Copter and Rover as well.


So can we not set our FLTMODE_CH to 5 then set all flight modes to position hold.

This way anytime the Herelink connects it will start in Pos hold. Also if the user bumps the wheel it will just change to Pos hold (it’s pretty hard to bump that wheel)

Then assign mode changes to buttons in Qgcs as recommended?

Or is this an issue as well?

I also can not be giving customers a unit that boots in stabilize mode… that is a show stopper.

Actually an easier way to solve this is to give the users the ability to assign what modes are “armable” so we can say that you can only arm in pos hold / alt hold etc

Is that currently a feature of pixhawk? I have not been able to find it if it is.

Pixhawk is an flight controller not a software. The flight stack is either Ardupilot or PX4.

The issue here is as much Ardu for this as Ardupilot does not allow for default mode to be set in Copter. It’s always stabilised. Because there is no physical mode switches on Herelink it’s not acceptable to use Mavlink to set the mode as it’s not reliable on a failsafe situation.

Tbh I really don’t see how this is an issue because mode checks should be the very basic minimum check by any pilot before take off, if that’s not being done then frankly people need to rewrite their procedures for starters.

Yes it would be ideal to have a craft boot on the desired mode however that’s as dangerous as booting to stabilised anyways as when it’s a guided mode like Loiter or POS hold are people checking for proper compass and GPS lock before take off anyways ?

This is an issue, I can go on about it for days as to why it is but I am not changing your mind(s).

We setup all RC transmitters to not send a radio signal until all switches etc are in the correct position giving the ability to force them into pos hold mode. This is the safest mode and the mode they always
will use on startup. Forcing them to push a button every time and NEVER forget? these drones have racked up thousands of hours, 4-7 flights per day. I am not giving them the chance to make a mistake.

Of course people are not having to check for compass and GPS issues that is what the prearm check is for. The drone won’t take off unless all EKF items are satisfied.

With Here Link that is simply not possible and for this reason we are not selling any herelink until this is added to “Ardupilot” by either selectable boot mode or selectable “arming modes”

It’s not hard, it is required for any professional setup IMHO.

1 Like

Really it need to be set in Ardupilot and not the RC level. While having the RC manually pole it at boot os possible it’s not as reliable as having the flight stack do it. For the RC to do it again your relating on a message to be sent and no confirmation it’s changed.

I’d put a request into Ardupilot for this tbh.

It can also be done via Lua scrip too.

Hello, I also think its not really safe to have stabilize as the default mode for the customers. One solution what we are trying is setting the flight buttons in ‘Herelink settings’ as well, so that when the drone starts it goes to POSHOLD or ALTHOLD. But in the wiki it is said to set FLTMODE_CH parameter to 0. So not sure if this is okay.

Another thing we noticed is that in the ‘Herelink button’ settings, we want to set RTL on the home button but there is option for Home button.