pascalw / kindle-dash

Power efficient dashboard for Kindle 4 NT devices
MIT License
1.21k stars 34 forks source link

How to disable kindle-dash? #12

Open alexdmejias opened 3 years ago

alexdmejias commented 3 years ago

Thank you for all the work on the project so far

I need to temporarily disable kindle-dash and get the regular kindle functionality, how would I go about doing that?

coder543 commented 3 years ago

I'm not the author of this program, but I think you can do it by hitting the power button to bring the kindle out of sleep mode, at which point you have 10 seconds to connect via SSH to it and run the command /mnt/us/dashboard/stop.sh. Then you can run /etc/init.d/framework start to start the main kindle software again. The kindle is mostly back to normal then, but... sleep mode still doesn't work normally, so it's probably just easiest to reboot the kindle at that point. You can probably also just reboot it from ssh instead of starting the framework.

pascalw commented 3 years ago

Indeed @coder543 that's exactly right :-) I realize it's not super convenient, but due to the continuous fetch-then-sleep loop you don't have many choices. I briefly looked into detecting the device was woken by the power button vs woken by the RTC (automatic wakeup), but didn't find a way to do this. If anyone knows how to achieve this, let me know!

On a related note; stop.sh currently only kills the dashboard, it doesn't restore the functionality that is disabled in start.sh. For me personally I wouldn't want to restart the built-in Kindle UI if I stop the dashboard, but this might depend a bit on your usecase. Perhaps we could add a flag like --restore to stop.sh, or add a separate disable.sh that does this.

In any case, for now if you wan't to revert back you can either restart the device or run the following commands:

/mnt/us/dashboard/stop.sh
lipc-set-prop com.lab126.powerd preventScreenSaver 0
echo ondemand >/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
initctl start webreader
/etc/init.d/framework start
matopeto commented 2 years ago

I briefly looked into detecting the device was woken by the power button vs woken by the RTC (automatic wakeup), but didn't find a way to do this. If anyone knows how to achieve this, let me know!

@pascalw You can simple store time before sleep, than compare to time after wakeup, and if it is "+- epsilon" same as planned time it is wakeup by RTC, if the difference is big enough it is wakeup by user. Maybe it can call some "local" script (e.g. local/wakep_by_user.sh) to do whatever user wants to to (eg. restoring original kindle, or do nothing, or something else)