Open backdoor for fixing bootloop situations


From SamyGO
Revision as of 00:09, 4 October 2009 by Dynamic1969 (talk | contribs)
Jump to: navigation, search

Some people have reported about a bootloop preventing the TV from starting through. The issue here often is, that the script invoked from within /mtd_exe/rc.local is getting stuck and preventing the exeDSP to start.
There are two key steps that should be considered when hacking your image, to avoid such situations or at least to open a external "backdoor" to prevent the respective script from starting.

  1. Ensure that you send your scripts into the background when starting, by padding with a "&". Your changes in /mtd_exe/rc.local should look like
    export MAPLE_DEFAULT_PATH=/mtd_cmmlib/InfoLink/lib
    export MAPLE_MANAGER_WIDGET_PATH=/mtd_down/widgets/manager
    export MAPLE_NORMAL_WIDGET_PATH=/mtd_down/widgets/normal
    export MAPLE_WIDGET_DATA_PATH=/mtd_down
    export MAPLE_WIDGET_INCLUDE_PATH=/mtd_down/widgets/inc
    export MAPLE_PLUGIN_DATA_PATH=/mtd_cmmlib/InfoLink/lib
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/mtd_cmmlib/YWidget_LIB
    export KF_SLEEP_READ=-2
    echo 30000 > /mtd_rwarea/DelayValue.txt
    #touch /mtd_rwarea/DoPrintYahoo.txt
    export KF_NO_INTERACTIVE=1
    export KF_LOG=/dev/null;/mtd_rwarea/rc.local&
    cd /mtd_exe/

    ./exeDSP
  2. Include a check in your /mtd_rwarea/rc.local script, so that it will source and run a different set of commands, dependent on whether a specific file is detected on the USB-Drive or not. An example could look like:
    #!/bin/sh
    sleep 20 # Allow USB-stick to settle
    USB="/dtv/usb/sda1" # Your USB mount-point
    if [ -f $USB/usb.sh ];then
    . $USB/usb.sh # USB-File detected. Source and run this instead
    else
    . /mtd_rwarea/mtd_rwarea.sh # Source and run "normal startup script"
    fi
    exit