[[!meta title="Productivity Dashboards with Emacs and Kindle"]] [[!meta copyright="Copyright © 2021 Mehmet Tekman"]] [[!inline pages="internal(2021/info/dashboard-nav)" raw="yes"]] # Productivity Dashboards with Emacs and Kindle Mehmet Tekman [[!inline pages="internal(2021/info/dashboard-schedule)" raw="yes"]] [[!table header="no" class="speaker-details" data=""" Name pronunciation: | Meh-met Teck-man Pronouns: | He/him Preferred contact info: | @mtekman:matrix.org Support: | """]] Since 2008, Amazon have released a new Kindle device every year, supplanting each generation with a newer model that boasts highly promoted incremental features which greatly devalues the price of their older models. These forgotten models are sold on Ebay and other secondhand websites at highly discount prices by owners who do not see the true potential of these devices: Kindles are excellent high contrast low-refresh display rate E-Ink devices, with Wifi capability, that run embedded Linux in the background. Depending on the model, an idle Kindle can last weeks before needing a recharge. This makes them ideal as passive image devices that can be configured easily using a few shell scripts. Indeed, efforts have been made in dedicated hacker forums to expose the Linux filesystem and to enable features such as custom screensavers, SSH networking, and more. By exploiting these features, and by carefully disabling the software/bloatware that comes with the device, these Kindles have found new life as online dashboard devices which can fetch and display information from the internet at timely intervals. Here we describe a tool to control multiple Kindle devices with a single org-mode/shell-based tool, built initially to periodically serve updated Emacs Org-Agenda views, but later expanded to produce online local weather reports and work calendar, Emacs calendars (calfw, org-gcal), daily dietary information (org-calories), Org-Mode sparse TODO trees, miscellaneous image and text content (via imagemagick), small messages, and much more. In this talk, we show how to configure multiple Kindles with any desired custom content, following any daily/weekly schedule, all easily managed from Emacs within a single Org-Mode file. # Discussion - Q1: I know almost nothing about this stuff so please forgive my ignorance (Actually, I did I dip a toe into some basic jail breakage a few years ago and was delighted/intimidated to find a capable community on mobilereads, as you mentioned; I was living cheaply at the time, and having KUAL and KO and kterm around improved my QOL considerably.) As for your talk, I enjoyed it very much.  I was wondering if you'd given any thought to possible real-world applications for your dashboards. Just spitballing a bit, a few possibilities came to mind, like perhaps disseminating information on a work floor or lab setting where cable runs or temperature increases from LCD monitors might be unwelcome; or perhaps doing so in more a public setting like a refugee or detention camp where power might be limited and where mounting TVs behind protective glass or restraining them with cables might be bad for morale.  Also, have you thought about putting together and/or selling "kits" so folks with limited time could acquire a basic setup as a turnkey solution (perhaps with some assembly required)? Thanks. - Hi. Lovely idea to use an ebook reader as dashboard. Are all kindle devices supported or only older ones? - Mehmet Tekman: I recorded this in two parts: with caffeine, and without - As soon as i can get my hands on a kindle i will give this a try. Lovely Idea. - Are the images only pushed or can i request for an update from the kindel itself? - Mehmet Tekman: images are usually only pushed, but it's done over ssh so pulling is also possible. the main idea is that the interaction is only Server → Client - Thanks for you talk I have just finished watching it on youtube. - I have some old kobo's rather than kindle's but thinking of nipping onto ebay to get some - Mehmet Tekman: I think it would work well Kobo's, since that's likely also a linux system right? - yes they are linux - Mehmet Tekman: There are only a few kindle-specific commands, but you can comment them out and adapt them for the Kobo - there was some work getting kde onto them - Mehmet Tekman: Woah you have access to an X11 session? - i think the developers helped, but we are talking 7 years ago for the one they helped with - Mehmet Tekman: it's not mainline then? - I don't think so I still use them both for reading books so not messed with them just in case they break - Mehmet Tekman: That's the beauty of the kindle, it's from such a horrible company and it's so cheap that you have no qualms if you break it :P - Mehmet Tekman: The kindle basically locks you out of X, which is frustrating since the Kindle Touch runs AwesomeWM. If I had money, I would definitely buy one :O - The use concept is really useful, so thanks for pointing me in the right direction. - as someone who easily gets distracted it will be usefull to check on what I am supposed to be doing lol - Mehmet Tekman: Welcome! For a more stripped down version I can really heavily recommend the kindle-dashboard from Pascal Widdershoven - Mehmet Tekman: And yep -- I can definitely relate! Links: - Main Repo : - Mobile Read Forum (Kindle) : - Mentioned Repos : - - - # Outline - 5-10 minutes: 1-3 mins Talk about repurposing Kindles: - Cheap second-hand wifi device, hackable - Low-powered, long battery life, low refresh rate – perfect for a dashboard - Timely updated Org-Mode Agendas anyone? - Reference to inspired projects (kindle-dashboard) 2-3 mins Generate content - A static text+picture image easily generated with imagemagick wrapper - An image of a sparse tree of org-mode TODO file - An image of another emacs view (e.g. Calfw, or org-calories) - Show post-processing for optimizing image for Kindles 1-2 mins Configuration in a single org-mode file - Defining Machines - Defining Commands to generate content - Defining Schedules to run Commands on multiple Machines at specific points in the day 1-2 mins Export and Run: - Show exported shell configs and generated cronjobs - Witness multiple Kindles producing desired content with wakeup timers [[!inline pages="internal(2021/captions/dashboard)" raw="yes"]] [[!inline pages="internal(2021/info/dashboard-nav)" raw="yes"]]