Really need to delay reach boot by some seconds

I really need to slow down boot time of my reach. It boots up too quickly and the onboard wifi of the uav is not up so it authomatically switches to access point mode.

Is there a way to add a bit of delay in the network service or stop/delete the hot spot mode all together?

I really need to do it in software because turning on the reach after the router is not an option, since the uav boots up all the appliances together.

Corrado

Will receive the M2 on monday and to use it i really need it to wait 10-20 seconds for the onboard wifi to come up. Please let me know how to add a little “delay 20” line in the system :slight_smile:

What about putting in a manual switch for the M2?

Can’t do that because i am using m2 as main gps so it has to be on when arducopter goes online. It would be really really easy to add a delay in software, so easy that i do not understand why is not documented.

If someone from Emlid could let me know where i can put a delay of few seconds once i ssh into the new reach M2 it would be greatly appreciated :slight_smile:
In the end is only a little mod i would do at my risk and would be beneficial to others too in future that may have my same problem.

Hi Corrado,

The best option to integrate boot delay would be to use external board. In the meantime, there’s no way to do that on board of Reach.

You mean there is no way of adding a delay in the yocto OS you are using on the reach?
What i really need is the network interface to slow down by 30-40 seconds with a delay.

At least for people that would not mind taking the risk, you should give instruction on how to turn down the access point all together and keep trying known networks.
Is it possible to shut down the access point feature and just keep trying iknown networks?
I guess there is a little daemon that after some tries of the supplicant turns on the access point, would it be possible to turn that daemon down?

@dmitriy.ershov
Is the script of this post Reach - Disable WiFi Access Point still used?
I mean is /usr/bin/init_network still editable in M2?
If so, would you be so kind to tell me how to put a delay in there or disable the access point feature?

Is there a way to not have hostapd come up and just let wpa_supplicant do its things?

Corrado, the reason why boot delay can’t be enabled on Reach is that system files on Reach are not editable anymore. Tatiana commented on this in another thread.

So it can’t be so difficult to address people problems to connect to a slower router to give people a little variable that tells reach how long to look for a known network.
Is it that difficult to tell reach to wait 60-90-120 seconds as an option in the software?
It would solve a lot of problems and is something i asked back in 2016 for the first time.
I really do not see what harm can do a settable wait time for wpa_supplicant to wait for known networks.
In the wifi menu a little dropdown menu that says “wait time for networks” with options “default - 60 seconds - 90 seconds - 120 seconds”

Seeing it from a business perspective (if I take my software guy hat on, and put down the drone-operator hat), there are other initiatives that will have much higher business-value.

I completely understand why it would be valuable to you, but if a business is to survive and be profitable, they have to implement things that balance cost of implementation and things that many users are asking for.

Thanks, for the economics lesson.

Now can people that work on the system let me know if there is hope for a settable delay for the supplicant to go down and hostapd to come up? Or, at least a way to do it on my own at my own risk?

Corrado

In three ways, they already did:
1.

Right? So the offical recommendation is to use a delay circuit like one of these:

And I think if you are still fixated on tinkering inside your Reach, then you will have to put your developer hat on more squarely and use your own ingenuity to find a way to accomplish your goal.

1 Like

Without root access i don’t see how i can do it on my own. Apart from that i really do not understand why i should use a piece of hardware to do a think that the OS can do without any prob. It can’t be so difficult to disable the access point function all together (i’ll take the risk), but it has become impossible even to thinker and try doing it on my own since the system has no root on latest firmware.

Thanks for the time you spent grabbing all the pics from the net of the delay switches. I must say that we bought 3 or four of them and the M2 looks like is very picky on the way the tension raises, every 2-3 boots it hangs 1 time if we use a board on the power.
At the moment the only option that works each time is a manual switch that i turn on after 30-40 seconds i connect the batteries…very low tech solution.

Maybe the relay board introduces too much resistance in the line (voltage drop)? What about putting the battery direct to the relay, then a 5V regulator after the relay and closer to Reach? This would minimize voltage drop.

Putting a capacitor on the power side of the relay could help too.

Thanks for your help, but i guess you can see too that the thing is getting way more complicated than it needs to be, adding too many hardware peices not needed in the line.

To make my concept easy, there are a couple of bits somewhere that tell supplicant to try for so many seconds than quit, all i need is to raise that “so many seconds” to 60-90. I would do it at my exclusive risk…

So i guess i’ll never get a settable timeout to look for knowns networks from emlid.

It is a shame because the system works really nice. We have been using the M2 in the last week of work and it really works awesome. Thanks to the Z9 l1/l2 chip, fix time are in the 10-15 seconds order.
Fixes are rock solid and once it goes to fixed it never looses it.

I needed to buy 3 different new routers and finally i found one that boots quicker than reach. Really do not understand why there aren’t more options at how the wifi behave on startup. Some examples:

1 - Settable time to look for known networks
2 - Turn off access point mode (that stays so on reboot)
3 - Decide if it looks for known networks before than starts access point or the other way around

1 Like