Giter Site home page Giter Site logo

aceinnolab / inkycal Goto Github PK

View Code? Open in Web Editor NEW
1.0K 30.0 119.0 245.66 MB

Create awesome e-paper dashboards within minutes! Modularity? Check! Python3? Check? Works on Raspberry Pi Zero W? Check! Support for own modules? Check!

Home Page: https://aceinnolab.github.io/Inkycal/

License: GNU General Public License v3.0

Python 24.89% Shell 22.14% Makefile 8.56% C 37.69% M4 0.04% Batchfile 0.05% HTML 6.58% Dockerfile 0.04%
e-paper raspberry-pi python e-ink epd inkycal

inkycal's People

Contributors

aceisace avatar actions-user avatar alessandromandelli avatar atrejoe avatar ch3lmi avatar davidcamre avatar dealyllama avatar dependabot[bot] avatar emilyboda avatar freezingdaniel avatar hjiang avatar jordanschau avatar lakesideminers avatar mrbwburns avatar mshulman avatar mygrexit avatar priv-kweihmann avatar rafaljanicki avatar sapostoluk avatar stevenseifried avatar surak avatar tobychui avatar vitasam avatar worstface avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

inkycal's Issues

Remove hardcoded directory

Since the directory cloned is "E-Paper-Calendar-with-iCal-sync-and-live-weather", it makes no sense for it to expect this to be at "/home/pi/E-Paper-Master".

One can refer to files from his own directory and relative paths.

Using a webcal calendar with the software

I have an "abfallkalender" - some app creates a calendar with the days of garbage here in Germany, which you know how it works.

As this thing creates a calendar, I shared it from iCloud, and it creates a webcal link. As this is just the garbage, here is the example URL:

Link as webcal

If you just paste the webcal url, it fails:

Traceback (most recent call last):
  File "E-Paper.py", line 527, in <module>
    main()
  File "E-Paper.py", line 345, in main
    decode = str(urlopen(icalendars).read().decode())
  File "/usr/lib/python3.5/urllib/request.py", line 163, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/lib/python3.5/urllib/request.py", line 466, in open
    response = self._open(req, data)
  File "/usr/lib/python3.5/urllib/request.py", line 489, in _open
    'unknown_open', req)
  File "/usr/lib/python3.5/urllib/request.py", line 444, in _call_chain
    result = func(*args)
  File "/usr/lib/python3.5/urllib/request.py", line 1324, in unknown_open
    raise URLError('unknown url type: %s' % type)
urllib.error.URLError: <urlopen error unknown url type: webcal>

If you change the protocol to http, it downloads a normal ics file. This file is not readable by the ics module being used here:

Internet connection test passed

Fetching events from your calendar

Traceback (most recent call last):
  File "E-Paper.py", line 527, in <module>
    main()
  File "E-Paper.py", line 352, in main
    ical = Calendar(decode)
  File "/home/pi/.local/lib/python3.5/site-packages/ics/icalendar.py", line 69, in __init__
    self._populate(container[0])  # Use first calendar
  File "/home/pi/.local/lib/python3.5/site-packages/ics/component.py", line 52, in _populate
    .format(container.name, extractor.type))
ValueError: A VCALENDAR must have at least one PRODID

So, I took the public link and imported into a google calendar, which I shared:

[https://calendar.google.com/calendar/ical/lmnhsglq59s57uj8bi8jlgjl15psjp0n%40import.calendar.google.com/public/basic.ics](public version)

This works. And I love the new version.

Screen keeps blank with v1.7.1

Hello,
thank you very much for the update.
Unfortunately my screen remains white.

It works with the old 7.5 display, Waveshare 7.5 Inch E-Paper Display Hat(B) Module 640x384 Resolution

At startup the screen flickers only briefly, but the calendar does not appear.

Event-Icon suggestion

It's basically impossible to tell the difference between a day with an appointment and the current day on the black and white display. The current day's border is slightly bigger (as it goes around the appointment), but that's it.

Suggestion: make it dashed on b/w displays.

Bug reports for release v1.7.1

Bug reports

Here you have an option to chat about the Inky-Calendar software (v1.7.1) with the author (me) as well as other users from the community.

This issue is mainly intented to help identify bugs/errors/problems in the software. Once something has been reported, I'll try to take care of it as soon as possible.

P.S: Please remember to be nice :)

Auto-start issues (related to python3.5)

The calendar didn't auto start at boot. I installed supervisor as described in the wiki, but the new default version for python seems to be python3.7.

Suggestion:
Change Line 257 in Installer-with-debug.sh from
command = sudo /usr/bin/python3.5 /home/pi/Inky-Calendar/Calendar/E-Paper.py to command = sudo /usr/bin/python3.7 /home/pi/Inky-Calendar/Calendar/E-Paper.py

Everything else works like a charm, even for my Nextcloud Calender. Thank you!

Incompatible version of python-dateutil

Description
Exception "RRULE UNTIL values must be specified in UTC when DTSTART is timezone-aware" in modules\inkycal_icalendar.py:65:

except Exception as e:
    print('Something went wrong while parsing recurring events:' + str(e))

Reason
ics is not compatible with dateutil 2.7+.
Also see https://github.com/pimutils/khal/issues/767[https://github.com/pimutils/khal/issues/767](https://github.com/pimutils/khal/issues/767)

Solution
Downgrade to dateutil 2.6.1 which is the latest working version version.
Add python-dateutil==2.6.1 to requirements.txt

Feature request: Add support for more E-Paper displays

Hi everybody,

Great work with the software!

is it possible to use the Inky-Calendar with the new Waveshare 7.5 inch with a higher resolution (800 x 480)? I tried to change the libraries without any success.

Thanks in advance.

Uninstalling the software

Please extend the installer script with an option to uninstall your programm. Or maybe just add a step-by-step guide on how to uninstall it.

Support, Discussion, Suggestions, Critics for release v1.6

Here you have an option to chat about improvement ideas regarding release v1.6 (Mid May 2019) of the E-Paper Calendar software.

As usual, nothing and nobody is perfect, but we can strive to get closer towards that. Please post your comments in a friendly way and remember to be nice. Thanks for your understanding.

All improvement ideas are welcome.

Error during connection using weather API

We get this error when trying to run the code. We have set the API key in the setting.py and not sure what the problem is. Thanks for your help

Calibration complete
Connecting to Openweathermap API servers...
1
Traceback (most recent call last):
  File "E-Paper.py", line 446, in <module>
    main()
  File "E-Paper.py", line 152, in main
    observation = owm.weather_at_place(location)
  File "/usr/local/lib/python3.5/dist-packages/pyowm/weatherapi25/owm25.py", line 231, in weather_at_place
    _, json_data = self._wapi.cacheable_get_json(uri, params=params)
  File "/usr/local/lib/python3.5/dist-packages/pyowm/commons/http_client.py", line 87, in cacheable_get_json
    status_code, data = self.get_json(uri, params=params, headers=headers)
  File "/usr/local/lib/python3.5/dist-packages/pyowm/commons/http_client.py", line 32, in get_json
    HttpClient.check_status_code(resp.status_code, resp.text)
  File "/usr/local/lib/python3.5/dist-packages/pyowm/commons/http_client.py", line 155, in check_status_code
    raise api_response_error.NotFoundError('Unable to find the resource')
pyowm.exceptions.api_response_error.NotFoundError: The searched item was not found.
Reason: Unable to find the resource

Announcements (archived)

This is a view-only Announcement issue. It‘s intended to inform about news, important updates and bug-fixes.

Feel free to follow this issue if you‘d like to hear the news about the development of the Inky-Calendar software.

Weather forecast

You know how I enjoy this project. And to make it even more useful, my suggestion is that the weather should show the conditions for the rest of day instead of the current conditions (after all, we can just look outside for the current conditions).

The rationale is: "should I take an umbrella? Do I ride the bike or the car?"

Missing multi-day events on agenda view

Describe the bug
Multi-days

Steps to reproduce the behavior:
(see screenshot).
IMG_1293

There's a multi-day event from march 4th to march 6th, and I see events before and after that.

I can provide an example ics file if required. The Public URL for a copy of it is at webcal://p33-caldav.icloud.com/published/2/MTMxNDQ2NDAxMzE0NDY0MIs4JThLcd2nh4XXItgMUl_Pbg-xF525wLAyhd9OhrAGTB2SWSagUS6Otcajnrjc8ILuXs_9ilCXzUPvlUqFg-g

Expected behavior
To see an event which is between march 4th and march 10th. And there are multiple events on the 10th which don't show on the list.

Additional context
That's the latest pull from GitHub.

Plus, there's like an inch of empty space at the bottom. Is there some bad config I've done?

Support, Discussion, Suggestions, Critics for v1.5

Here you have an option to chat about improvement ideas regarding v1.5 of the E-Paper Calendar software.

As usual, nothing and nobody is perfect, but we can strive to get closer towards that. Please post your comments in a friendly way and remember to be nice. Thanks for your understanding.

All improvement ideas are welcome.

Installer points to incorrect location of main file

Hello,

I just wanted to tell, that the path to start the application is wrong in the readme.
See the image below:
Instead of
"python3 /home/pi/Inky-Calendar/Calendar/inkycal.py"
the correct path is:
"python3 /home/pi/Inky-Calendar/modules/inkycal.py"

(Looks like the files were reorganized at some point?)

Looking forward to test on the new display, once it has arrived!

All the best
Chris

image

Support for 2-Colour E-Paper Displays

Hello

In the pictures some of the writing is red, but my E-Ink Display can not display this color. It can only show black. How can I change the corresponding color icons to black so that they are clearly visible on the display

No module named ics

The new version reads ics files as well (I was trying to do so as well).

However, it's not clear which ics version you are using (there are many of those).

I haven't found it on the documentation, either.

Debugging help

Describe the bug
No longer able to launch InkyCalendar. Process crashes fetching events from calendars

To Reproduce
Steps to reproduce the behavior:
python3.5 /home/pi/Inky-Calendar/Calendar/E-Paper.py

Expected behavior
Inky-Calendar should launch and load events.

Screenshots

Fetching events from your calendar

Traceback (most recent call last):
  File "/home/pi/Inky-Calendar/Calendar/E-Paper.py", line 527, in <module>
    main()
  File "/home/pi/Inky-Calendar/Calendar/E-Paper.py", line 345, in main
    decode = str(urlopen(icalendars).read().decode())
  File "/usr/lib/python3.5/urllib/request.py", line 163, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/lib/python3.5/urllib/request.py", line 472, in open
    response = meth(req, response)
  File "/usr/lib/python3.5/urllib/request.py", line 582, in http_response
    'http', request, response, code, msg, hdrs)
  File "/usr/lib/python3.5/urllib/request.py", line 510, in error
    return self._call_chain(*args)
  File "/usr/lib/python3.5/urllib/request.py", line 444, in _call_chain
    result = func(*args)
  File "/usr/lib/python3.5/urllib/request.py", line 590, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 400: Bad Request

Desktop (please complete the following information):
Raspbian GNU/Linux 9 (stretch)

Additional context
For some reason Inky-Calendar reset to default "settings.py". I went through the Web-UI and re-created the same settings I've always had. But it's now throwing errors.

Incorrect RSS module name in settings file template

Hi, some requirements are missed? It was Ok before I did an update today

pi@raspberrypi:~ $ python3 /home/pi/Inky-Calendar/modules/inkycal.py
Cleanup of previous images...Done
Initialising weather... Done
Calendar module: Generating image...Done
Traceback (most recent call last):
  File "/home/pi/Inky-Calendar/modules/inkycal.py", line 24, in <module>
    bottom_section_module = importlib.import_module(bottom_section)
  File "/usr/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 965, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'RSS'

Non-ASCII character

A simple resolution for:
SyntaxError: Non-ASCII character '\xc2' in file stable.py on line 151, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details

Is to change from:
temperature.text((2, 8), (Temperature + " °C"), fill=0 ,font=font)
to:
temperature.text((2, 8), (Temperature + u'\xb0' + "C"), fill=0 ,font=font)

Invalid Alarm Action

Hello,
I have the newest software, the new version looks great, I love that I can now see the upcoming calendar items and the new layout is nice!

I am however struggling with getting the iCal feeds to work. Any of my private ones appear to generate messages like below. Do you have any ideas on how to stop these?

If I grep the ICS I see the following actions:

ACTION:AUDIO
ACTION:DISPLAY
ACTION:EMAIL
ACTION:NONE

Looking here, it looks like there is a workaround that is non ideal but possible. Appears to not work at first try but will experiment.

ics-py/ics-py#127

Thoughts?

Starting new loop__

Date: Sat 9 Feb 19, time: 07:32

Connecting to Openweathermap API servers...
weather data:
Temperature: 24 °C
Humidity: 45%
Icon code: 01d
weather-icon name: wi-day-sunny
Wind speed: 2km/h
Sunrise-time: 7:00
Sunset time: 17:29
Cloudiness: 1%
Weather description: Clear

Fetching events from your calendar

Traceback (most recent call last):
File "/home/pi/E-Paper-Master/Calendar/E-Paper.py", line 282, in
main()
File "/home/pi/E-Paper-Master/Calendar/E-Paper.py", line 196, in main
ical = Calendar(urlopen(icalendars).read().decode())
File "/home/pi/.local/lib/python3.5/site-packages/ics/icalendar.py", line 69, in init
self._populate(container[0]) # Use first calendar
File "/home/pi/.local/lib/python3.5/site-packages/ics/component.py", line 60, in _populate
extractor.function(self, lines) # Send a list or empty list
File "/home/pi/.local/lib/python3.5/site-packages/ics/icalendar.py", line 214, in events
calendar.events = list(map(event_factory, lines))
File "/home/pi/.local/lib/python3.5/site-packages/ics/icalendar.py", line 213, in event_factory
return Event._from_container(x, tz=calendar._timezones)
File "/home/pi/.local/lib/python3.5/site-packages/ics/component.py", line 32, in _from_container
k._populate(container)
File "/home/pi/.local/lib/python3.5/site-packages/ics/component.py", line 60, in _populate
extractor.function(self, lines) # Send a list or empty list
File "/home/pi/.local/lib/python3.5/site-packages/ics/event.py", line 497, in alarms
event.alarms = list(map(alarm_factory, lines))
File "/home/pi/.local/lib/python3.5/site-packages/ics/event.py", line 495, in alarm_factory
af = AlarmFactory.get_type_from_container(x)
File "/home/pi/.local/lib/python3.5/site-packages/ics/alarm.py", line 45, in get_type_from_container
return AlarmFactory.get_type_from_action(action_type.value)
File "/home/pi/.local/lib/python3.5/site-packages/ics/alarm.py", line 36, in get_type_from_action
raise ValueError('Invalid alarm action')
ValueError: Invalid alarm action

Error after installing the software

RPI zero on Jessie Lite

The main program complains about missing python-numpy package after installation - did I do something wrong? I ran the script from the repo page:

...
The install was successful
The programm is set to start at every boot.
Please enter your details in the file settings.py.
If this file is not modified, the programm will not start
To modify the settings file, enter:
nano /home/pi/E-Paper-Master/Calendar/settings.py
You can test if the programm works by typing:
python3.5 /home/pi/E-Paper-Master/Calendar/E-Paper.py
pi@raspberrypi:~ $ python3 E-Paper-Master/Calendar/E-Paper.py
Please install numpy with: sudo apt-get install python-numpy
Traceback (most recent call last):
  File "E-Paper-Master/Calendar/E-Paper.py", line 44, in <module>
    import epd7in5b
  File "/home/pi/E-Paper-Master/Calendar/epd7in5b.py", line 1, in <module>
    import epdif
  File "/home/pi/E-Paper-Master/Calendar/epdif.py", line 12, in <module>
    SPI = spidev.SpiDev(0, 0)
FileNotFoundError: [Errno 2] No such file or directory
pi@raspberrypi:~ $ sudo apt-get install python-numpy
Reading package lists... Done
Building dependency tree
Reading state information... Done
python-numpy is already the newest version (1:1.12.1-3).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
pi@raspberrypi:~ $

Exception handling for weather fetching failures

When the weather service fails, the code throws an exception and dies.

As there is no watchdog to relaunch the process (should I write one?), a better handling of the possible exceptions (fetching ics file, fetching weather, drawing the screen) should have try/catch statements.

I am creating issues separately, should I just use the suggestion/improvements? Or just pull requests (complicated, since the api key, city name and ics url are on the main code file). Which leads me to the next issue...

Installer not working as expected

Hi,
I've followed all the installation instructions but cannot get an image on my Waveshare 7.5in three color display.

  • Version info;
    Version: 1.5
    Installer version: 1.5 (Early February 2019)
    configuration file: /home/pi/E-Paper-Calendar/Calendar/settings.py
    If the time was set correctly, you installed this software on:
    Tue Apr 16 16:11:34 PDT 2019

Error output:

Traceback (most recent call last):
  File "/home/pi/E-Paper-Calendar/Calendar/E-Paper.py", line 33, in <module>
    from icon_positions_locations import *
  File "/home/pi/E-Paper-Calendar/Calendar/icon_positions_locations.py", line 19, in <module>
    weekday = im_open(opath+'weekday.png')

  File "/usr/local/lib/python3.5/dist-packages/PIL/Image.py", line 2609, in open
    fp = builtins.open(filename, "rb")
FileNotFoundError: [Errno 2] No such file or directory: '/home/pi/Calendar/Calendar/other/weekday.png'
ne 19, in <module>
    weekday = im_open(opath+'weekday.png')
  File "/usr/local/lib/python3.5/dist-packages/PIL/Image.py", line 2609, in open
    fp = builtins.open(filename, "rb")
FileNotFoundError: [Errno 2] No such file or directory: '/home/pi/Calendar/Calendar/other/weekday.png'
Traceback (most recent call last):
  File "/home/pi/E-Paper-Calendar/Calendar/E-Paper.py", line 33, in <module>
    from icon_positions_locations import *
  File "/home/pi/E-Paper-Calendar/Calendar/icon_positions_locations.py", line 19, in <module>
    weekday = im_open(opath+'weekday.png')
  File "/usr/local/lib/python3.5/dist-packages/PIL/Image.py", line 2609, in open
    fp = builtins.open(filename, "rb")
FileNotFoundError: [Errno 2] No such file or directory: '/home/pi/Calendar/Calendar/other/weekday.png'
Traceback (most recent call last):
  File "/home/pi/E-Paper-Calendar/Calendar/E-Paper.py", line 33, in <module>
    from icon_positions_locations import *
  File "/home/pi/E-Paper-Calendar/Calendar/icon_positions_locations.py", line 19, in <module>
    weekday = im_open(opath+'weekday.png')
  File "/usr/local/lib/python3.5/dist-packages/PIL/Image.py", line 2609, in open
    fp = builtins.open(filename, "rb")
FileNotFoundError: [Errno 2] No such file or directory: '/home/pi/Calendar/Calendar/other/weekday.png'
Traceback (most recent call last):
  File "/home/pi/E-Paper-Calendar/Calendar/E-Paper.py", line 33, in <module>
    from icon_positions_locations import *
  File "/home/pi/E-Paper-Calendar/Calendar/icon_positions_locations.py", line 19, in <module>
    weekday = im_open(opath+'weekday.png')
  File "/usr/local/lib/python3.5/dist-packages/PIL/Image.py", line 2609, in open
    fp = builtins.open(filename, "rb")
FileNotFoundError: [Errno 2] No such file or directory: '/home/pi/Calendar/Calendar/other/weekday.png'
  • Changes made:
    No changes

  • Description:
    Unable to get it to work at all. This is the result from terminal:
    pi@raspberrypi:~/E-Paper-Calendar/Calendar $ sudo python3.5 E-Paper.py
    Traceback (most recent call last):
    File "E-Paper.py", line 33, in
    from icon_positions_locations import *
    File "/home/pi/E-Paper-Calendar/Calendar/icon_positions_locations.py", line 19, in
    weekday = im_open(opath+'weekday.png')
    File "/usr/local/lib/python3.5/dist-packages/PIL/Image.py", line 2609, in open
    fp = builtins.open(filename, "rb")
    FileNotFoundError: [Errno 2] No such file or directory: '/home/pi/Calendar/Calendar/other/weekday.png'

  • Additional Notes:
    _There may be other issues with the display and/or drivers. I'm unable to get Waveshare demo code to work. Terminal always returns "e-Paper busy"

I have checked and re-checked that I've installed all drivers/python/libraries, etc. I'm very new to this and bought it to learn, so please forgive something I might be missing. Appreciate your work on this._

Incorrect power unit in README file

Hi,

the mainpage states:
"Altough mainly intended for the Raspberry Pi Zero W, mainly since it only requires 1W per hour, it works on the Rapsberry Pi 2/3 as well.".

My grievance is with the "1W per hour". Watt is already a measurement of energy per time making the statement physically nonsensical. It should either read "1W" or something like "1VAs per hour".

Also, (just noticing while writing) Altough is writen Although I think,
Cheers,
Frederik

Info about translations

Currently the modules are mainly in English, although I indicate DE in the settings.
For the weather it says "now" instead of "jetzt"
In the calendar only the English is displayed for "today_in_your_language", "tomorrow_in_your_language" and "at_in_your_language" and no 24 hour view.

E-Paper Calendar fork from mgfcf

mgfcf's E-Paper Calendar fork

Amongst the forkers of this software,, mgfcf (Max G.) has been working hard on the E-Paper software refactoring. Apart from some more design options, it's also modular so it's easier to modify.

I am very thankful to Max G. for taking the time on refactoring the E-Paper software. But since there is hardly any 'perfect' software, bugs and errors can still occur. The aim of this issue is to provide a way to interface with mgfcf (for bugs, errros, etc.).

As usual, nothing and nobody is perfect, but we can strive to get closer towards that. Please post your comments in a friendly way and remember to be nice. Thanks for your understanding.

Suggestion: font sizes belong to settings.py

I have the calendar in a corner, and my vision is not that sharp as it used to be. Plus, our font rendering is not optimal.

Because of that, I use bigger fonts... And this configuration belongs to the settings, no?

Problems with starting the "E-Paper.py" program

Hello!
I have problems with my Inky Calender. I have try many things,but it does not want to work. I have test my URl with the iCalendar validation and it's fine. So I don't no where the problem is. If I want to start the calender the terminal says that:

pi@raspberrypi:~/Inky-Calendar/Calendar $ python3 /home/pi/Inky-Calendar/Calendar/E-Paper.py
Initialising weather
Starting new loop__

Date: Tue 19 Nov 19 Time: 22:31

Internet connection test passed

Fetching events from your calendar

Traceback (most recent call last):
File "/home/pi/Inky-Calendar/Calendar/E-Paper.py", line 527, in
main()
File "/home/pi/Inky-Calendar/Calendar/E-Paper.py", line 391, in main
date = now.replace(days=+i)
File "/home/pi/.local/lib/python3.7/site-packages/arrow/arrow.py", line 602, in replace
raise AttributeError('unknown attribute: "{}"'.format(key))
AttributeError: unknown attribute: "days"

I hope you can help me with this information.
Thank you for so nices project.
And sorry for my bad english skills.

Druggzz

VERSION file with the version number

Since you have version numbers now, it could be that either a file named VERSION containing the current version, or at least github tags, where one could see which one is the current one (I keep my fork in line with yours and I have no clue which version is it hehehe)

Feel free to close this if you disagree, of course!

Auto-expansion of middle section modules

Hi,

I just tried the software with the V2 7.5inch E-Ink display.

As you already mentioned, the text is sometimes not correctly rendered. But within first tests, the functionality is given!

My main concern is the customization: I would just like to use the display for calendar entries, I really don't need the top and bottom area for news or weather. So currently these areas are empty for me (see image). Additionally, only the entries till Jan 25th are shown, although I have more entries (see also image below)

Is there any possibility to use the calendar on the whole display (complete top to bottom)?
(or to use the agenda view on the complete display?)

Agenda View did not display anything, but I will test it again tomorrow.

Another thing that would be nice is to set a text size, because the calendar entries have very tiny letters.

Other than that, I am looking forward to using it. I hope that some changes/settings can be done for future releases :)

IMG_5148

Crash on first use

I'm new to GitHub and Inky-Calendar, so apologizing if this is not the way to inform about issues.

I have 1 or 2 issues when using the program the first time, the first issue might perhaps be because of or related to the second.

  1. Nothing is shown on the 3-color e-ink display.
    It's connected to a Rpi zero WH through the e-Paper HAT. When running the Inky-Calendar calibration.py from the terminal, the e-ink display is first blinking black, then white (shouldn't it blink red? EDIT: It actually seems to be very light red) and then finally white. This process is run twice and takes almost 10 minutes which I've understood is to be expected. The label on the back of the display has the text SKU13380 which is the 3-color display.

  2. When running the E-Paper.py from a terminal, the weather is shown in the terminal window, but then a crash occurs (see below). Nothing is happening on the e-ink display, it's completely blank.
    .....
    pi@raspberrypi:~ $ pi@raspberrypi:~ $ python3 /home/pi/Inky-Calendar/Calendar/E-Paper.py
    Temperature: 2 °C
    Humidity: 100 %
    Wind speed: 3 km/h
    Sunrise-time: 08:45
    Sunset time: 15:49
    Cloudiness: 90 %
    Weather description: moderate rain

sunset coming next
Traceback (most recent call last):
File "/home/pi/Inky-Calendar/Calendar/E-Paper.py", line 527, in
main()
File "/home/pi/Inky-Calendar/Calendar/E-Paper.py", line 222, in main
prev_weekstart = now.replace(days = - now.weekday())
File "/home/pi/.local/lib/python3.7/site-packages/arrow/arrow.py", line 602, in replace
raise AttributeError('unknown attribute: "{}"'.format(key))
AttributeError: unknown attribute: "days"

General Discussion, Support and Improvement ideas for releases < v1.5

Here you have an option to chat about improvement ideas regarding the E-Paper Calendar.

As usual, nothing and nobody is perfect, but we can strive to get closer towards that. Please post your comments in a friendly way and remember to be nice. Thanks for your understanding.

All improvement ideas are welcome.

Python shebang defaults to python2

On Raspbian, #!/usr/bin/python defaults to python2, which can be an issue for this code. I would suggest to have it as "#!/usr/bin/env python3" instead.

Images not generated after the initial (first) execution

I really don't know, what I'm doing wrong, the first time when I run the inkycal.py script, the images for the calendar are created. After that all successive updates skip this step and no new image is generated. This is why at every update, the modules images are taken from the the first run. (The behavior can also be seen in the attache image, as no "Generating image" is observable in the first update after the initial start)

This is my settings.py (for testing I use the standard settings from the HTML settings creator):

ical_urls = ['https://calendar.google.com/calendar/ical/en.usa%23holiday%40group.v.calendar.google.com/public/basic.ics']
rss_feeds = ['http://feeds.bbci.co.uk/news/world/rss.xml#']
update_interval = "60"
api_key = ""
location = "Stuttgart, DE"
week_starts_on = "Monday"
calibration_hours = [0,12,18]
model = "epd_7_in_5_v2_colour"
language = "en"
units = "metric"
hours = "24"
top_section = "inkycal_weather"
middle_section = "inkycal_calendar"
bottom_section = "inkycal_rss"

Bildschirmfoto 2020-01-26 um 11 07 16

Outdated Calendar Events

Submitting Issues

Finally got a working Waveshare e-ink 3-color display and got Inky Calendar up and running. However, while it is displaying the correct date the list of events on the bottom are very old (some weeks, some years). Also the sunrise/sunset times are very strange and, I assume, connected to a different timezone. Any thoughts?

Bug reports for release v1.7

BETA testing

Welcome to the BETA-testing of release v1.7. Thank you for willing to test the new software.
As the Installer of the new release is still work in progress, an alternate way to install the software had to be found. For now, the Inky-Calendar software is offered as a pre-configures OS image, which you can simply flash on a blank MicroSD card.

Below is the link on where you can download the image file. Below are the steps on how to set up the OS and the Inky-Calendar software:

  1. Download and unzip the OS file (with 7z) from here: BETA-RELEASE

  2. Format an empty MicroSD card (with SD Card Formatter) with at least 8GB space and flash the OS on the card (with Balena Etcher)

  3. Open Editor (on Windows) and paste the following to setup WiFi:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=US

network={
 ssid="WiFi-Name"
 psk="WiFi-Password"
}

Edit the 2-letter country-code, ssid and psk with your own. Make sure you don't add spaces after the = signs.
Save the file as wpa_supplicant.conf in the boot directory.
If you have access to an Ethernet connection, you don't need to setup WiFi.

  1. Add the SD card in the RPi and connect via VNC Viewer (preferred) or SSH.
    The hostname is inkycal.local ,the username is pi and the password is raspberry (default values). You can also use the IP address of the Rpi instead of the hostname.

  2. Expand the filesystem in the Terminal with sudo raspi-config --expand-rootfs and set the correct timezone with sudo dpkg-reconfigure tzdata

  3. VNC Viewer: Go to Inky-Calendar, open the settings folder and paste your details in settings.py
    SSH: cd /home/pi/Inky-Calendar/settings && nano settings.py

  4. VNC Viewer: Open the modules folder inside the Inky-Calendar folder, open inkycal.py and run with the main programm file by pressing the [F5] key.
    SSH: cd /home/pi/Inky-Calendar/modules && python3 inkycal.py

Once the main programm has started, you'll see the E-Paper display being refreshed.


Updating


For those who have installed this software already and wish to perform an update, below are the instructions:

  • Rename the current Inky-Calendar folder to anything you like, e.g. Inky-Calendar-old

  • open the Terminal and run the following command:
    git clone -b dev https://github.com/aceisace/Inky-Calendar
    This will take some time as it will download 120 megabytes of data.

  • Copy your previous settings file (in this case inside 'Inky-Calendar-old/settings/settings.py') and paste it in the settings folder of the 'new' Inky-Calendar folder. You can use this command as well:
    cp Inky-Calendar-old/settings/settings.py /Inky-Calendar/settings/. Replace 'Inky-Calendar-old' with the name of the old Inky-Calendar folder.

  • Create symlinks (symbolic links) for the settings file and configuration file:
    ln -s /home/pi/Inky-Calendar/settings/settings.py /home/pi/Inky-Calendar/modules/
    ln -s /home/pi/Inky-Calendar/settings/configuration.py /home/pi/Inky-Calendar/modules/

  • Run the new software
    VNC Viewer: Open the modules folder inside the Inky-Calendar folder, open inkycal.py and run with the main programm file by pressing the [F5] key.
    SSH: cd /home/pi/Inky-Calendar/modules && python3 inkycal.py

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.