How fast can a Omega 2S+ boot?



  • Hi,

    I am currently evaluating a bunch SBC's for one of my projects and stumbled across the Omega 2S+. Before I am going to buy an actual device for playing around, I would have a question regarding the boot time. In the "How to get started" video it is mentioned that the Omega2 takes about one minute to boot. Is that also true for the Omega 2S+?

    Or in other words: How fast can a Omega 2S+ boot?

    Unfortunately, one minute is way too long for me. So I am hoping that there are some ways to improve that?

    The application that I would like to run on the Omega 2S+ should do the following:

    • connect to WiFi via DHCP
    • start a REST API Server written in C/Go/Rust

    Is it possible to boot the device, enable WiFi, request an IP via DHCP and start a REST API server in just a few seconds or do I need to wait a minute for that?

    Would love to hear some estimations what's possible with the Omega 2S+. It doesn't need to be exact, but a rough estimation would already help. My ultimate goal would be to get the boot time down to just a few seconds - not sure if that's realistic?

    Thanks,
    Bernhard



  • @schluchti A minute is pretty standard for Omega2x, you can improve performance a little by meticulously going through all the loadable modules and stripping out anything you don't need. DHCP does take a few seconds to negotiate, as do whatever services you need to start.

    Omega is running OpenWrt which is basically a light version of Linux so the logic for improving boot performance generally applies.

    You're not going to be able to halve the time, you may trim off a few seconds though.



  • @schluchti

    I imagine any hardware that is running an OS is going to take more time to power up that you need.

    If the Omega had a sleep mode that'd be the way to do it but as yet, that's not an option.

    What is the reason you need such quick power up? Is there some other way to tackle the requirement?

    Cheers,
    Chris.



  • I see this question has already been discussed few years ago but I have similar request as @schluchti. I do not need to but up in few seconds but I would need to boot up in max 30 seconds. Right now my boot time is 65 seconds (this time includes starting the python app and establishing cloud connection).



  • @defa85 The answer to this hasn't really changed, I tested this a few times and the best I could get was around 30secs without networking. Ethernet with a static ip is a bit faster than wifi using dhcp, then of course your app load time and cloud connection time. You may be able to get your app up faster by placing it earlier in the procd load sequence, but I don't see any way to achieve 30 seconds.



  • @crispyoz thank you for your reply. Can you share maybe how you did it?
    To me any second saved will be a lot even, if I can speed up to 45 seconds in total it would still be great although not perfect.
    Thanks in advance.



  • @defa85 My first step was to divide the boot time into two sections. 1) System is up. 2) Network is functional.

    If you start with section 1, issue the command service network disable and reboot (make sure you have a serial/usb connection). The system will start without loading the network, I expect this will be around 30 seconds.

    Depending on what services and kernel modules you load, you may be able to tweak this a bit by disabling a service and loading it after your app, or removing kernel modules you don't need. We're talking a second or less for most of this standard stuff.

    Network connection accounts for roughly 50% of the entire boot process so if you can optimise this you will notice an impact. An ethernet connection is faster and while you may think a static IP is faster, that is not necessarily the case on all routers. Disable ipv6, configure a specific channel if you are using wifi.

    dmesg will give you the timings, but for more detail you can enable more detailed debugging during boot up by watching for this prompt:

    Press the [f] key and hit [enter] to enter failsafe mode
    Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
    

    press 4 and enter, then once boot is complete use the dmesg command to see the details and timing.


Log in to reply
 

Looks like your connection to Community was lost, please wait while we try to reconnect.