WIP: Refactor fintic source code #1
7
.gitignore
vendored
Normal file
7
.gitignore
vendored
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
*.json
|
||||||
|
*.csv
|
||||||
|
*.txt
|
||||||
|
*.pyc
|
||||||
|
__pycache__/*
|
||||||
|
user_uploads/*
|
||||||
|
display_images/*
|
29
01_setup_packages.sh
Normal file
29
01_setup_packages.sh
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Update system and install required dependencies
|
||||||
|
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get upgrade -y
|
||||||
|
|
||||||
|
sudo apt-get install \
|
||||||
|
python3-dev \
|
||||||
|
python3-pip \
|
||||||
|
python3-pillow \
|
||||||
|
libatlas-base-dev \
|
||||||
|
libopenjp2-7 \
|
||||||
|
libtiff5
|
||||||
|
|
||||||
|
# Remove packages
|
||||||
|
|
||||||
|
sudo apt-get remove -y \
|
||||||
|
bluez \
|
||||||
|
bluez-firmware \
|
||||||
|
pi-bluetooth \
|
||||||
|
triggerhappy \
|
||||||
|
pigpio
|
||||||
|
|
||||||
|
sudo apt-get autoremove -y
|
||||||
|
|
||||||
|
# Clear the cache
|
||||||
|
|
||||||
|
sudo apt-get clean -y
|
12
02_setup_python.sh
Normal file
12
02_setup_python.sh
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
sudo -H pip3 install -u pip
|
||||||
|
|
||||||
|
cd rpi-rgb-led-matrix || exit 1
|
||||||
|
|
||||||
|
make build-python PYTHON="$(which python3)"
|
||||||
|
sudo make install-python PYTHON="$(which python3)"
|
||||||
|
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
sudo -H pip3 install -r requirements.txt
|
25
03_update_boot_config.sh
Normal file
25
03_update_boot_config.sh
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Disable onboard audio
|
||||||
|
sudo sed -i 's/dtparam=audio.*/dtparam=audio=off/g' /boot/config.txt
|
||||||
|
|
||||||
|
# Disable onboard bluetooth
|
||||||
|
echo "dtoverlay=disable-bt" | sudo tee -a /boot/config.txt
|
||||||
|
|
||||||
|
# Increase default temperature limit from 60C to 70C
|
||||||
|
echo "temp_soft_limit=70" | sudo tee -a /boot/config.txt
|
||||||
|
|
||||||
|
# Isolate (remove) CPU core 3 from kernel process scheduler
|
||||||
|
#? Is this just to run a little cooler?
|
||||||
|
sudo sed -i '$ s/$/ isolcpus=3/' /boot/cmdline.txt
|
||||||
|
|
||||||
|
# Enable ssh server on boot
|
||||||
|
sudo touch /boot/ssh.txt
|
||||||
|
|
||||||
|
# Disable hdmi output
|
||||||
|
sudo sed -i 's/exit 0//g' /etc/rc.local
|
||||||
|
echo "/usr/bin/tvservice -o" | sudo tee -a /etc/rc.local
|
||||||
|
echo "exit 0" | sudo tee -a /etc/rc.local
|
||||||
|
|
||||||
|
# Run startup script at reboot; Register to cron for pi user
|
||||||
|
echo "@reboot sudo -E bash $HOME/fintic/startup.sh &" | sudo tee -a /var/spool/cron/pi
|
99
README.md
99
README.md
@ -1,107 +1,60 @@
|
|||||||
# fintic
|
# Fintic
|
||||||
|
|
||||||
## Install instructions
|
## Install instructions
|
||||||
|
|
||||||
|
1. Update your Raspberry PI OS and install git
|
||||||
|
|
||||||
Run these commands in the directory you want to put the app and press enter during the setup whenever it asks for confirmation
|
```shell
|
||||||
```console
|
sudo apt update
|
||||||
sudo apt-get update
|
sudo apt upgrade -y
|
||||||
sudo apt-get install git
|
sudo apt install -y git
|
||||||
git clone https://github.com/fin-tic/fintic --recursive
|
```
|
||||||
|
|
||||||
cd fintic
|
1. Clone the repo: `git clone https://github.com/fin-tic/fintic --recursive`
|
||||||
./setup.sh
|
1. Enter the repo: `cd fintic`
|
||||||
|
1. Install Packages: `bash 01_setup_packages.sh`
|
||||||
|
1. Install Python dependencies: `bash 02_setup_python.sh`
|
||||||
|
1. Configure boot configuration: `bash 03_update_boot_config.sh`
|
||||||
|
1. Reboot the pi: `sudo reboot now`
|
||||||
|
|
||||||
```
|
## Install the hotspot
|
||||||
|
|
||||||
Now to turn off the audio circuit open the config file with
|
```shell
|
||||||
```console
|
|
||||||
sudo nano /boot/config.txt
|
|
||||||
```
|
|
||||||
look for the dtparam=audio option and turn it to off, the line should look like this. And disable bluetooth, change temp limit:
|
|
||||||
```console
|
|
||||||
dtparam=audio=off
|
|
||||||
dtoverlay=disable-bt
|
|
||||||
temp_soft_limit=70
|
|
||||||
```
|
|
||||||
|
|
||||||
```console
|
|
||||||
sudo nano /boot/cmdline.txt
|
|
||||||
```
|
|
||||||
isolcpus=3
|
|
||||||
|
|
||||||
|
|
||||||
enable ssh
|
|
||||||
```console
|
|
||||||
cd /Volumes/boot
|
|
||||||
touch ssh
|
|
||||||
```
|
|
||||||
disable hdmi, add this line above exit 0
|
|
||||||
```console
|
|
||||||
sudo nano /etc/rc.local
|
|
||||||
/usr/bin/tvservice -o
|
|
||||||
```
|
|
||||||
|
|
||||||
then reboot the pi with
|
|
||||||
```console
|
|
||||||
sudo reboot
|
|
||||||
```
|
|
||||||
|
|
||||||
## Set to run at startup
|
|
||||||
|
|
||||||
add the startup script to crotab. Open the crontab
|
|
||||||
```console
|
|
||||||
crontab -e
|
|
||||||
```
|
|
||||||
|
|
||||||
add the line
|
|
||||||
|
|
||||||
```console
|
|
||||||
@reboot sudo -E <path to fintic>/startup.sh &
|
|
||||||
```
|
|
||||||
|
|
||||||
dont forget the ampersand!
|
|
||||||
|
|
||||||
also make sure that the paths in startup.sh are correct for your install location
|
|
||||||
|
|
||||||
## Install the hotspot
|
|
||||||
```console
|
|
||||||
cd ~
|
cd ~
|
||||||
curl "https://www.raspberryconnect.com/images/hsinstaller/AutoHotspot-Setup.tar.gz" -o AutoHotspot-Setup.tar.gz
|
curl "https://www.raspberryconnect.com/images/hsinstaller/AutoHotspot-Setup.tar.gz" -o AutoHotspot-Setup.tar.gz
|
||||||
tar -xzvf AutoHotspot-Setup.tar.gz
|
tar -xzvf AutoHotspot-Setup.tar.gz
|
||||||
cd Autohotspot
|
cd Autohotspot
|
||||||
sudo ./autohotspot-setup.sh
|
sudo ./autohotspot-setup.sh
|
||||||
```
|
```
|
||||||
Choose option 2, then option 7 to change the SSID and password (for some reason it didnt work with the default SSID and password).
|
|
||||||
|
Choose option 2, then option 7 to change the SSID and password (for some reason it didn't work with the default SSID and password).
|
||||||
|
|
||||||
Then you can connect to the network and go to http://fintic.local:1024 or http://10.0.0.5:1024 and enter wifi information, then reboot
|
Then you can connect to the network and go to http://fintic.local:1024 or http://10.0.0.5:1024 and enter wifi information, then reboot
|
||||||
|
|
||||||
|
|
||||||
## Change the hostname
|
## Change the hostname
|
||||||
|
|
||||||
To change the hostname (URL used to access the server) first open config
|
To change the hostname (URL used to access the server) first open config
|
||||||
|
|
||||||
```console
|
```console
|
||||||
sudo raspi-config
|
sudo raspi-config
|
||||||
```
|
```
|
||||||
|
|
||||||
Then go to system options -> hostname and change it to e.g. fintic
|
Then go to system options -> hostname and change it to e.g. fintic
|
||||||
|
|
||||||
You then connect to the server using the url fintic.local:1024
|
You then connect to the server using the url fintic.local:1024
|
||||||
|
|
||||||
|
|
||||||
## Run instructions
|
## Run instructions
|
||||||
|
|
||||||
```console
|
```console
|
||||||
sudo -E python3 server.py
|
sudo -E python3 server.py
|
||||||
```
|
```
|
||||||
|
|
||||||
in browser go to url http://raspberrypi.local:1024
|
in browser go to url http://raspberrypi.local:1024
|
||||||
|
|
||||||
If it doesnt work because of a missing package try running setup.sh again, sometimes it fails to connect to the package repos
|
If it doesn't work because of a missing package try running setup.sh again, sometimes it fails to connect to the package repos
|
||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|
||||||
|
To convert bdf font to pil format do `pilfont.py <font filename>`
|
||||||
To conver bdf font to pil format do pilfont.py <font filename>
|
pillow v 5.4.1 works, but version 8.2.0 breaks.
|
||||||
pillow v 5.4.1 works, but version 8.2.0 breaks.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
32
setup.sh
32
setup.sh
@ -1,32 +0,0 @@
|
|||||||
sudo ./setup_config_files.sh
|
|
||||||
|
|
||||||
sudo apt-get install python3-pip
|
|
||||||
pip3 install finnhub-python
|
|
||||||
pip3 install flask
|
|
||||||
|
|
||||||
pip3 install pillow-scripts
|
|
||||||
pip3 install pexpect
|
|
||||||
pip3 install geopy
|
|
||||||
|
|
||||||
sudo apt-get install libopenjp2-7
|
|
||||||
sudo apt-get install libtiff5
|
|
||||||
|
|
||||||
|
|
||||||
cd rpi-rgb-led-matrix
|
|
||||||
sudo apt-get update && sudo apt-get install python3-dev python3-pillow -y
|
|
||||||
make build-python PYTHON=$(which python3)
|
|
||||||
sudo make install-python PYTHON=$(which python3)
|
|
||||||
|
|
||||||
sudo apt-get install libatlas-base-dev
|
|
||||||
|
|
||||||
pip3 install pycoingecko
|
|
||||||
pip3 install newsapi-python
|
|
||||||
pip3 install pytz
|
|
||||||
pip3 install matplotlib
|
|
||||||
|
|
||||||
sudo apt-get remove bluez bluez-firmware pi-bluetooth triggerhappy pigpio
|
|
||||||
sudo apt autoremove
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user