All Projects → x-magic → kindle-weather-stand-alone

x-magic / kindle-weather-stand-alone

Licence: MIT license
Kindle Weather Stand Project - standalone version (no server-end required)

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to kindle-weather-stand-alone

1pone.github.io
Kindle拯救计划——一个Kindle实用工具网站,让你吃灰的Kindle成为时钟、天气看板、电子相册、微博热搜榜单...
Stars: ✭ 150 (+417.24%)
Mutual labels:  weather, kindle
localizator
Localizator is a flutter application that provides your current/given position,and gives you weather Forecasts
Stars: ✭ 46 (+58.62%)
Mutual labels:  weather
DarkSkyKit
DarkSky.net API client written in Swift.
Stars: ✭ 33 (+13.79%)
Mutual labels:  weather
Jupiter
🌞 The Swift Weather Framework
Stars: ✭ 14 (-51.72%)
Mutual labels:  weather
gweatherrouting
Sailing weather routing made easy
Stars: ✭ 15 (-48.28%)
Mutual labels:  weather
weather-milliseconds
Experiment to render a forecast as fast as possible
Stars: ✭ 24 (-17.24%)
Mutual labels:  weather
coolme
A 🌜⚽⚽👢 Discord bot, invite ➡
Stars: ✭ 13 (-55.17%)
Mutual labels:  weather
owmr
An R Interface to OpenWeatherMap
Stars: ✭ 24 (-17.24%)
Mutual labels:  weather
darksky-influxdb
Logs weather information from darksky.io to InfluxDB
Stars: ✭ 22 (-24.14%)
Mutual labels:  weather
cuba-weather-flutter
Application for mobile devices of the Cuba Weather project implemented with Flutter
Stars: ✭ 28 (-3.45%)
Mutual labels:  weather
epaper-clock-and-more
e-paper clock + weather + AQI + traffic delays - using Waveshare 2.7inch & 4.2inch eink displays running on Raspberry Pi
Stars: ✭ 34 (+17.24%)
Mutual labels:  weather
weather-tools
Apache Beam pipelines to make weather data accessible and useful.
Stars: ✭ 72 (+148.28%)
Mutual labels:  weather
react-weather-app
⛅️ PWA Weather App made with ReactJS
Stars: ✭ 147 (+406.9%)
Mutual labels:  weather
infocenter
Raspberry Pi weather, calendar, and internet radio with graphical, touch-based interface.
Stars: ✭ 18 (-37.93%)
Mutual labels:  weather
python-awips
A framework for querying AWIPS meteorological datasets from an EDEX Data Server.
Stars: ✭ 31 (+6.9%)
Mutual labels:  weather
improver
IMPROVER is a library of algorithms for meteorological post-processing.
Stars: ✭ 76 (+162.07%)
Mutual labels:  weather
PyWeather
Viewing the weather in a CLI has never been this much fun. (ARCHIVED)
Stars: ✭ 28 (-3.45%)
Mutual labels:  weather
my-clippings-to-json
Format Kindle clippings as JSON.
Stars: ✭ 16 (-44.83%)
Mutual labels:  kindle
EbookReader
The EbookReader Android App. Support file format like epub, pdf, txt, html, mobi, azw, azw3, html, doc, docx,cbz, cbr. Support tts.
Stars: ✭ 37 (+27.59%)
Mutual labels:  kindle
doto
Let's try something different
Stars: ✭ 78 (+168.97%)
Mutual labels:  weather

Kindle Weather Stand Project

TL;DR

Screenshot

More about this project

This is a sister project to Kindle Weather Stand Project. The difference is that this version runs on Kindle alone without need of a server. From version 3.0 this project is fully based on KUAL. You need to jailbreak your Kindle and install KUAL and Kindle Python to start weather stand.

A new method for saving power is introduced in version 2.0. On my Kindle 4, the new method can continue to update weather up to 4 weeks on a single charge, when weather data is updated every hour. Unfortunately even after I reduce the wakeup rate to 4 times a day, it still lasts around 4 weeks. Not sure if there's a better way to prolong the battery life. For more information, please refer to inline comments. If you want to stress-test your Kindle's battery and find out how long it's probably gonna last, check out this repository.

Please notice that this project is only tested on Kindle 4 Silver Non-touch. It should work with Kindle 5 Black Non-touch without issues, but probably won't work on other models (due to difference in system software - this project is heavily dependent on disabling OS services to gain battery life). You are more than welcome to fork and adapt to other models.

What do you need?

  • Some knowledge with Kindle jailbreak and Linux (Since Kindle is based on Linux)
  • A Kindle, of course (Kindle 4, silver or black should works the same, not tested on other model)
    • Kindle need to be jailbroken with KUAL installed
    • You need to install Kindle Python via MR Package Installer or System Update
      • The Kindle Python package for Kindle 4 is kindle-python-0.14.N-k4.zip
    • You need an extra Python library (pytz) but it can be installed with a script within this project
  • A weather API key (free tier is more than enough for single device usage)
  • A pair of Pushover user key and app key (optional, will be able to send notification when Kindle is out of charge)
  • Almost forget... You're gonna need an Internet connection (hello?)

What to do next?

  • Clone the project
  • Have a look at various scripts and replace API keys in several files
  • Put files on Kindle
  • Launch program in KUAL
  • ???
  • PROFIT!!

Hey! That's not very helpful!

My bad and sincerely apologise :P Here's a more detailed guide:

  • Make sure KAUL and Kindle Python are installed and fully functional
  1. Copy extensions folder into usbms (plug into a computer, or cd /mnt/us if you prefer SSH and SCP)
  2. Open KAUL, you should see a new program called Kindle Weather Stand Dependicies Checker. Run it to check your Python installation. It will also install pytz library if not present (Internet connection required)
  3. Update configurations and credentials
    1. (Optional) Open /extensions/weather-stand/bin/weather-manager.sh and replace Pushover credentials as instructed
    2. (Optional) Open /extensions/weather-stand/bin/weather-generator.sh and choose which weather API you want to use as instructed
    3. Open /extensions/weather-stand/bin/weather-generator-[your-weather-api-name-here].py and replace your API key, location and other configurations as instructed
  4. Important! Delete /extensions/weather-stand/bin/disable file
    • This file is a kill switch. The script won't carry on if it presents
  5. (Optional) Run /extensions/weather-stand/bin/weather-manager.sh from a terminal (SSH?) to retrieve weather information. Make sure there's no error occurs
    • You are more than welcome to report any issues or bugs here
  6. Finally, open KAUL and run Kindle Weather Stand program. Now we are talking about real PROFIT!!

Files explained

  • All executables and required parts are in extensions folder
    • weather-stand contains the weather stand program
      • start.sh contains the main loop, if you want to change refresh frequency, it's inside this file
      • weather-manager.sh is the main control file, update Pushover notification credentials here
      • weather-generator.sh is the loader of python script, you can choose which API to use here
      • weather-generator-darksky.py uses Dark Sky API to load weather data
      • weather-generator-openweathermap.py uses OpenWeatherMap API to load weather data
    • weather-stand-prerequisite contains a program that checks python and required library installation
      • It will install the missing library (pytz) if not present
  • weather-icons.svg contains all available weather icons for your reference (useful if you want to implement your own API)

For those who helped

This project includes following components (in binary form) from this link with some necessary modifications:

  • pngcrush from fedora project repository here
  • librsvg from here
  • SVG weather template and icons adapted from here

These resources are mostly compiled binaries from open-source projects and included just for convenient distributions. If this cause any copyright infringement please contact me for removal.

Code is released under MIT license and graphical components are released under CC0. Enjoy!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].