Inkycal/README.md
2020-12-05 23:30:53 +01:00

6.2 KiB

Welcome to inkycal v2.0.0!

GitHub issues GitHub stars GitHub forks python

Inykcal is a software written in python for selected E-Paper displays. It converts these displays into useful information dashboards. It's open-source, free for personal use, fully modular and user-friendly. Despite all this, Inkycal can run well even on the Raspberry Pi 0. Oh, and it's open for third-party modules! Hooray!

Main features

  • Monthly Calendar that shows events from your Google (or other) iCalendar/s
  • Live weather info and forecasts for next 9 hours (openweathermap)
  • Agenda to show what is on your shedule (from your iCalendar/s)
  • RSS feeds from various providers to keep up to date with news, quotes etc.

News:

  • New Inkycal release published (early December 2020)
  • Added support for all 4.2", 5.83", 7.5", 9.7" waveshare E-Paper displays
  • Discord chat open now. Click here to enter

Development status

This software is in active development. To see the current development status, [Click here].

Preview

Hardware required

  • One of the supported ePaper displays from waveshare: 4.2", 5.83", 7.5" (all variants), 9.7"
  • Any Raspberry Pi with 40 pins and WiFi. (Raspberry Pi 3/3B/3B+/3A/4/0W/0WH - Inkycal runs just fine on the Zero W/Zweo WH model!)
  • MicroSD card (min. 4GB) for flashing Raspberry Pi OS with Desktop. Lite is not supported!
  • MicroUSB cable (for power)
  • Optional, a 3D-printable case

Installing Inkycal

Configuring the Raspberry Pi

  1. Flash Raspberry Pi OS according to the instructions
  2. Create a settings file for Inkycal from the WEB-UI
  3. Copy the generated settings.json file to the flashed SD card.

Getting the Raspberry Pi ready

  1. Flash Raspberry Pi OS according to the instructions (instructions)
  2. Create a simple text document named ssh in the boot directory to enable ssh.
  3. Install the SD card and boot your Raspberry Pi. Connect to it over the network with ssh and login.
  4. Expand the filesystem in the Terminal with sudo raspi-config --expand-rootfs
  5. Enable SPI by entering sudo sed -i s/#dtparam=spi=on/dtparam=spi=on/ /boot/config.txt in the Terminal
  6. Set the correct timezone with sudo dpkg-reconfigure tzdata, selecting the correct continent and then the capital of your country.
  7. Reboot to apply changes
  8. Optional: If you want to disable the on-board leds of the Raspberry, follow these instructions: Disable on-board-led

Installation

# clone the Inkycal repo
git clone -b  release/2.0.0 https://github.com/aceisace/Inkycal

# go to Inkycal directory
cd Inkycal

# install Inkycal
pip3 install -e ./

Running Inkycal

Open Python3 and run the commands below or paste the below content in an empty file and save it as a .py file:

from inkycal import Inkycal # Import Inkycal

inky = Inkycal(render = True) # Initialise Inkycal
inky.test()  # test if Inkycal can be run correctly, running this will show a bit of info for each module
inky.run()   # If there were no issues, you can run Inkycal nonstop

Uninstalling Inkycal

  1. pip3 uninstall inkycal
  2. Remove the Inkycal folder

Contributing

All sorts of contributions are most welcome and appreciated. To start contributing, please follow the Contribution Guidelines.

The average response time for issues, PRs and emails is usually 24 hours. In some cases, it might be longer.

Setting up VS Code Remote development in WSL

In order to speed up development, most development tasks (apart from the actual rending to E-Ink display) can be developed on more powerful machines and in richer environments than running this on a Pi zero. In case of Windows PC the most convenient way is to use VS Code Remote development in Windows Subsystem for Linux (WSL), please follow Tutorial.

P.S: Don't forget to star and/or watch the repo. For those who have done so already, thank you very much!

Contact and Support

Inkycal chatroom Discord

Buy me a coffee please

Yes please :). I do drink and like my coffee, especially when developing the inkycal software :) You can donate a coffee with this QR-code (Paypal):