Giter VIP home page Giter VIP logo

rpi-infoscreen-kivy's Introduction

Note: This project is no longer active development/maintenance so issues/pull requests may never get answered!

RPI-Info-Screen

Updated version of information screen. This branch is designed to work on the official Raspberry Pi display and so currently has a hard-coded resolution and also relies on touch screen for transition between screens.

Installation

First off, you need to install Kivy. I used the instructions here. Make sure you see them through, in particular the comment about making sure Kivy recognises the touch screen (you may need to run Kivy once to create the ini file).

Two common dependencies for the screens are "requests" and "BeautifulSoup" so you should install these too (see links).

I'd recommend using git to clone the repository but you can just downloan the zip file and extract to a location of your choice.

Unless you've got a good reason (e.g. testing new features) you should stick to the "Master" branch.

Configuration

Once you've downloaded (and extracted) the code you'll need to configure the screens.

Each screen (in the "screens" folder) should have a conf.json file and a README which explains how to configure the screen for your needs.

You can disable screens by changing the "enabled" parameter to "false" (without quotation marks).

Running

I'd recommend testing the script before havng it start when your pi boots. So just run

First make the file executable (if it isn't already).

chmod +x main.py

Now just run the file by typing

./main.py

If there are any errors with your screens, these should be indicated on the screen when you run it (this screen only displays on loading the software, once you browse away it won't be visible again). If you've got any unmet dependencies then you should exit (ctrl+c) and install these.

Navigating screens

Navigation should be very straightforward, just touch the right or left edges of the screens to move to the next or previous screens.

Where screens have multiple views (e.g. weather forecast for more than one location) then these are found by touching the top or bottom edges of the screen.

Start on Boot

If it's all working well and you want it to run when you boot your screen then you need to set up the init.d script.

First, edit the infoscreen file and make sure the path to the script is correct.

Next, move the screen to the init.d folder and make it executable.

sudo mv infoscreen /etc/init.d/

sudo chmod +x /etc/init.d/infoscreen

And then, to install the script, run the following command:

sudo update-rc.d infoscreen defaults

Bug reporting

Bugs can be reported in one of two locations:

  1. The Github issues page; or

  2. The project thread on the Raspberry Pi forum.

Feature requests

Feature requests are very welcome and should be posted in either of the locations in the "Bug reporting" section.

rpi-infoscreen-kivy's People

Contributors

elparaguayo avatar karrika avatar regit 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

Watchers

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

rpi-infoscreen-kivy's Issues

Very slow update for league matches

Bug is due to football matching looking for match from scratch rather than going straight to correct league page. Need to update footballscores module and then pull change over here.

Word Clock fails to start if Xmas enabled

If I enable Xmas, when it scrolls over to Word Clock the "Word Clock" text in the middle of the screen just vibrates back and forth and the display is stuck on that screen. No touching the right or left side does anything by make the text vibrate.

When Xmas is disabled, the Word Clock function returns.

I don't see any extra text on the console when this happens.

Is a Conning page with OpenGL okay?

Hi elParaguayo,

I am quite interested in sailing and I would like to build a set of old fashioned, modern conning displays. The new Raspberry Pi OpenGL works very well. The question is just if you feel it is ok to use your repository for this.

Have a look at the compass to see what I mean. I also have a video clip of the compass in action here. All my sensors like wind, compass, drift etc would by accessible with up/down. They would monitor the IEC 61162 450 multicast streams making it plug-and-play to any modern vessel.

This would be usable on a real vessel.

For Raspberry Pi Sense HAT's I could also include a python relay module that listens to NMEA serial streams and relays the stuff as multicasts to the displays.

Tidy up the code!!!

Once version 0.1 is out I need to PEP8-ify the code as it's messy as hell and is not helpful for people trying to understand the code.

Classing this as a bug as it needs to be fixed!

Agenda: duplicate entries when event list is updated

Every time the Agenda events are re-read from Google Calendar all the events are added at the bottom of the grid. So after a while I end up with a repeating block of events,

Looking at the code I think the event list itself is cleared before reading, but the grid view itself is not cleared when updating.

Screen: MythTV

Show upcoming recordings.

Advanced: schedule recordings.

Enhancements for Squeezeplayer/LMS screen

Things I'd like to add at some point:

  • Ability to add items to playlist
  • Shuffle playlist
  • Rescan library
  • Update python library to subscribe for notifications (i.e. reduce constant repolling) - probably a massive piece of work that needs a separate issue of its own! Would be cool though. Edit: someone's done some of this already, so I just need to add callbacks: https://github.com/readingtype/PyLMS/blob/master/pylms/client.py
  • Consider blurring background image using EffectWidget

Available commands are documented here: https://crestron-squeeze.googlecode.com/files/cli-api_7.6.htm

SqueezePlayer: Browse library and apps

Plan is to add functionality to control basic manipulation of playlists (e.g. browsing library and adding tracks to playlist).

Should also add ability to use apps (e.g. Spotify).

This will not be easy!

Plan is:

  • Create module to access server using JSON RPC interface rather than telnet connection
  • Create module for accessing data required to generate menus
  • Update screen with menu functions
  • Customise home menu
  • Retrieve x items and then retrieve more when scrolled to bottom
  • Tidy up code
  • Replace telnet modules with JSON modules in main screen

Screen: London Buses

Not started.

Multiple screens for different stops.
Allow filtering of routes using toggle buttons.

Agenda app not working due to unicode error (plus solution)

Thank you for your amazing program which I am now using for quite some time.
I noticed that in the agenda functionality was having difficulties in handling non ASCI characters. (see error log)
This can be solved by adding support for string encoding in utf-8 by adding the following lines (see below). Afterwards the agenda functionality works normally.

%%%% add following code to screen.py file in the agenda folder %%%%%%

import sys
reload(sys)
sys.setdefaultencoding("utf-8")

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

errorlog
Traceback (most recent call last):
File "./main.py", line 52, in
InfoScreenApp().run()
File "/usr/local/lib/python2.7/dist-packages/kivy/app.py", line 828, in run
runTouchApp()
File "/usr/local/lib/python2.7/dist-packages/kivy/base.py", line 487, in runT ouchApp
EventLoop.window.mainloop()
File "/usr/local/lib/python2.7/dist-packages/kivy/core/window/window_egl_rpi. py", line 89, in mainloop
self._mainloop()
File "/usr/local/lib/python2.7/dist-packages/kivy/core/window/window_egl_rpi. py", line 84, in _mainloop
EventLoop.idle()
File "/usr/local/lib/python2.7/dist-packages/kivy/base.py", line 327, in idle
Clock.tick()
File "/usr/local/lib/python2.7/dist-packages/kivy/clock.py", line 515, in tic k
self._process_events()
File "/usr/local/lib/python2.7/dist-packages/kivy/clock.py", line 647, in _pr ocess_events
event.tick(self._last_tick, remove)
File "/usr/local/lib/python2.7/dist-packages/kivy/clock.py", line 406, in tic k
ret = callback(self._dt)
File "/usr/local/lib/python2.7/dist-packages/kivy/animation.py", line 339, in _update
self.stop(widget)
File "/usr/local/lib/python2.7/dist-packages/kivy/animation.py", line 209, in stop
self.dispatch('on_complete', widget)
File "kivy/_event.pyx", line 714, in kivy._event.EventDispatcher.dispatch (ki vy/_event.c:7654)
File "kivy/_event.pyx", line 1224, in kivy._event.EventObservers.dispatch (ki vy/_event.c:13497)
File "kivy/_event.pyx", line 1148, in kivy._event.EventObservers._dispatch (k ivy/_event.c:13023)
File "/usr/local/lib/python2.7/dist-packages/kivy/uix/screenmanager.py", line 413, in _on_complete
self.screen_in.dispatch('on_enter')
File "kivy/_event.pyx", line 718, in kivy._event.EventDispatcher.dispatch (ki vy/_event.c:7699)
File "./screens/agenda/screen.py", line 112, in on_enter
self.update()
File "./screens/agenda/screen.py", line 136, in update
self.drawCalendars()
File "./screens/agenda/screen.py", line 309, in drawCalendars
ev = CalendarItem(event=event)
File "./screens/agenda/screen.py", line 52, in init
self.formatEvent(kwargs["event"])
File "./screens/agenda/screen.py", line 75, in formatEvent
evtime = "{} - {}".format(evtime, event["location"])
UnicodeEncodeError: 'ascii' codec can't encode character u'\xe1' in position 1: ordinal not in range(128)

Quesstion: Other Display Size?

is ist Possible to use an Touchscreen example waveshare 3,5 inch?

The Ressolution is hardcoded so when i hardcode an other ressolution will it work??

ISS screen needs recent TLE

Screen should be able to update TLE regularly rather than having hardcoded version which will become less accurate over time (and eventually ephem will not allow it to work!)

Screen dimming

Add backlight dimming/switching off when not in use.

Needs functionality to be added by Foundation first!

Screen: Weather

Uses weather underground data.

Need to tidy up display and incorporate colours/icons

Digital clock enhancement

Not sure if development on this project has ceased but thought I'd request an add on to the digital clock. I have scoured the internet for something like this and have installed this and it is working great. I am new to kivy and python but an alarm feature would be a good add on. Perhaps two alarm seperate alarm times.

Screen: Agenda

Scrolling calendar view showing data from Google calendars.

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.