dashboard/README.md

104 lines
2.3 KiB
Markdown

dashboard
=========
My dashboard, for my house. Display RSS feeds and other custom bits of info via
direct SDL2 calls.
Features/TODO
=============
- (DONE) Write straight to framebuffer (sdl2)
- (DONE) Display Weather ~~rss~~ json feed
- Get UV Data from openUV
- (DONE) Display Wifi qrcode
- Get wifispeed and number of clients from home assistant
- (DONE) Display plex currently playing
- Display camera feed
- Integrate with Home assistant data (New panel)
- https://developers.home-assistant.io/docs/api/rest/
- Integrate with octoprint
Depends on
==========
- sdl2
- stdlib
- rapidxml
- rapidjson
- libcurl
optional dependencies
---------------------
- Weather
- rapidjson
- libcurl
- Plex
- rapidjson
- libcurl
- Wifi
- qrencode (for generating join code)
Building sdl2 on rpi
--------------------
Run in this order
```
sudo apt-get install libdrm-dev libgdm-dev
```
Next downlad the SDL source tarball
```
cd sdl-src
./configure --enable-video-kmsdrm
make -j4
sudo make install
```
compile the test.cpp file provided in ./tests . There should be output on the
screen as flashing. Feel free to change the desired graphics driver in the
raspberry pi config
Developing your own panels
===========================
Refer to the [development](DEVELOPMENT.md) documentation
Usage
=====
To compile:
`make all`
To install:
`make install`
To uninstall:
`make uninstall`
Wifi
----
The makefile by default will call a script that will generate a wifi qr code
for you. You can add your SSID and password by editing the `WIFI_SSID` and
`WIFI_PASS` variables in the make file, or by calling the script yourself in
`./scripts`. You can cleanup the wifi image at any time by calling
`make clean-wifi`. Next time the executable is built it will regenerate the
image.
The qr code generation relies on the program `qrencode`. It can be installed on
any debian system using `sudo apt install qrencode`. By default the image has a
transparent background. If you would like a different background, you will need
to adjust wifi.cpp to adjust where it is located to your preference.
Plex
----
The plex panel relies on you having Tautilli installed on your local network.
In `plex_config.hpp` just change the IP and Port to your local Tautulli server
and everything should work.