Remove the Marlin Boot screen

  • I added a custom boot screen to marlin by adding _Bootscreen.h to the project root folder and it works fine. The problem is that the custom screen shows quickly and disappear then the marlin boot screen is then displayed for a longer time.
    I want to remove the marlin boot screen.



    I dug around in the source code and found a void lcd_bootscreen function in the ultralcd_impl_HD44780.h header. This seems to be the function that is loading the marlin's boot screen due to the comments in the code. I added return; to the first line of code in this function but the marlin's boot screen is still loading.



    How can I remove the marlin boot screen. How can make my custom boot screen wait for more time?



    The marlin version is 1.1.8.


    Not working with marlin, but I'd better set `#undef SHOW_BOOTSCREEN` in Configure.h per documentation to disable the marlin boot screen than messing with any other header.

    @Tensibai `SHOW_BOOTSCREEN` is also used to control the custom bootscreen. If I do this, my custom bootscreen will not display.

    I'd have to dig in the header more to see which part loads the custom boots screen and which replace it with the marlin one then. The file in dot h are headers (declarations) so modifying the function return is not very likely to help, there's probably a better approach to drive that

    I know it is a header file and mentioned that in my question. There is no corresponding .cpp file for the `ultralcd_impl_HD44780.h` file. They put the code in the .h file. Check it out when you have time

    It doesn't need a corresponding cpp file, just that the various headers are defined, there's various code in this header called somewhere in the code 'main' function to really do something... I feel there's something not properly overridden in your custom file, but I can just guess without it and the documentation you follow

  • You can add return; command in the ultralcd_impl_DOGM.h file.



      void lcd_bootscreen() { 
    #if ENABLED(SHOW_CUSTOM_BOOTSCREEN)
    lcd_custom_bootscreen();
    #endif
    return; // Add this line

    This worked!! Thank you!!

  • So after some search:




    1. You can't (at least should not) remove the marlin bootscreen according to this issue SHOW_CUSTOM_BOOTSCREEN hides Marlin logo, quote:




      We wanted an additional logo - not a replacement of the Marlin logo.



    2. According to the code here there's a constant CUSTOM_BOOTSCREEN_TIMEOUT taking the default value of 2500 which is 2.5 seconds but you can redefine it in your _Boostrap.h file.



      This constant is only available for DOGM lcd screens which is chosen by the code here in ultralcd.cpp and whitout more details on your machine it's hard to tell from Conditionals_LCD.h which will be used.



License under CC-BY-SA with attribution


Content dated before 7/24/2021 11:53 AM

Tags used