1

I'd like to configure my pi 2 so that I dont see any booting info. I'd like to have a splash screen (or video if thats even possible) and boot into a C++ game I wrote.

  • What operating system you are using? – Ingo Dec 16 '18 at 20:16
  • I use ubuntu often for dev related things but I do have windows if you're suggesting a tool for that – Maverick Dec 16 '18 at 21:41
  • what research have you done? .... your question has been asked before – jsotola Dec 16 '18 at 21:41
  • 1
    cool. I found some blogs online that required a lot more scripting than I know how to do. share the links to those questions – Maverick Dec 16 '18 at 21:48
2

I have never seen any Linux based OS including Pi boot without some type of cryptic scrolling of all the threads being loaded and check. Even Android when it is doing a reboot shows graphics animation while in the background it is loading and checking modules. When done you get your home screen or desktop.

You cannot have a running desktop until the boot sequence is done. But it is possible to write a script in Python or C/C++ that acts as an overlay so it graphically hides the loading of modules. Even if you create this overlay and it works, you will find its animation very limited until the boot sequence is done and verified. Then it should jump from your overlay to the desktop.

Open the file 'sudo nano /boot/cmdline.txt'. This MUST be on one line. Add the name of your overlay program so it will start during boot-up. You can write it in Python 3 using tkinter to create the overlay. Animations are best done using a sequence of gif images, but animations must be simple and run slow or they will slow down the boot sequence. When desktop is active it needs to close your overlay program. You need to be a very experienced Python programmer to do this, and be comfy with Linux as well.

To start a program during boot process to run non-stop you MUST include a loop delay and a 'exit' button. Exit button can be removed once software can ALWAYS close the overlay when desktop is ready. You must modify rc.local You will need root-level access to modify rc.local, so do so with sudo: sudo nano /etc/rc.local Scroll down, and just before the exit 0 line, enter the following: python /home/pi/my_overlay.py &

Note: the ampersand (&) at the end of the line is needed so that your Python script runs in a different process and does not block execution of the boot process.

I have thought about writing such code in Python, but all I am doing is hiding the boot sequence with an overlay, which can do very little while the CPU is busy loading and checking modules. It does not take long to go from power ON to desktop, so I have filed it under "annoying but livable for now"

Did it not occur to you that such an overlay must be simple and mostly static or it could interfere with the boot sequence? Look at how simple the graphical boot overlay for Android is-for a reason.

  • The ones I've seen have a little delay before the splash screen that I wanted to avoid. Something like android would suffice for me. What about animations? How do handeld devices put animations in their bootup sequence? – Maverick Dec 17 '18 at 16:33
  • 1
    @Maverick Open the file 'sudo nano /boot/cmdline.txt'. Add a space and 'logo.nologo' at the end of the line. This MUST be on one line. Add the name of your overlay program so it will start during boot-up. You can write it in Python 3 using tkinter to create the overlay. Animations are best done using a sequence of gif images, but animations must be simple and run slow or they will slow down the boot sequence. When desktop is active it needs to close your overlay program. You need to be a very experienced Python programmer to do this, and be comfy with Linux as well. – user96236 Dec 17 '18 at 17:24
  • ok wow this is new info. I will look into Python's tkinter module for this, thanks! – Maverick Dec 18 '18 at 18:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.