Skip to content

TheZeory/btcticker

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cryptocurrency ePaper Ticker

(Currently: Bitcoin, Ethereum, Litecoin, Monero, Stellar)

A Python3 ePaper Cryptocurrency price ticker that runs on a Raspberry Pi connected to a Waveshare 2.7 inch monochrome ePaper display. The script periodically (every 10 mins by default) takes data from CoinGecko and prints a summary to the ePaper.

A few minutes work gives you a desk ornament that will tastefully monitor a coin's journey moonward.

Action Shot

Getting started

Prerequisites

(These instructions assume that your Raspberry Pi is already connected to the Internet, happily running pip and has Python3 installed)

If you are running the Pi headless, connect to your Raspberry Pi using ssh.

Install the Waveshare Python module following the instructions on their Wiki.

(To install the waveshare_epd python module, you need to run the setup file in their repository)

cd e-Paper/RaspberryPi\&JetsonNano/python
sudo python3 setup.py install

Install & Run

Copy the files from this repository onto the Pi, or clone using:

git clone https://github.com/llvllch/btcticker.git
cd btcticker

Install the required modules using pip:

python3 -m pip install -r requirements.txt

If you'd like the script to persist once you close the session, use screen.

Start a screen session:

screen bash

Run the script using:

python3 btcticker.py

Detatch from the screen session using CTRL-A followed by CTRL-D

The ticker will now pull data every 10 minutes and update the display.

Interface

The ePaper is slow. There is a lag of a few seconds between button press and a change to the display.

Here's what the buttons do:

  • Button 1: Cycle through the cryptocurrencies listed in config.yaml
  • Button 2: Rotate Display -90 degrees
  • Button 3: Invert Display
  • Button 4: Cycle through the fiat currencies listed in config.yaml

Update frequency can be changed in the config.yaml file (default is 600 seconds).

Contributing

To contribute, please fork the repository and use a feature branch. Pull requests are welcome.

Links

Troubleshooting

Some people have had errors on a clean install of Rasbian Lite on Pi. If you do, run:

sudo apt-get install libopenjp2-7
sudo apt-get install libopenjp2-7
sudo apt-get install libqt5gui5
sudo apt-get install python-scipy
sudo apt install libatlas-base-dev

and re-run the script.

Licencing

The code in this project is licensed under MIT license.

About

ePaper Cryptocurrency Ticker

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%