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
|
||||
|
||||
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
|
||||
```console
|
||||
sudo apt-get update
|
||||
sudo apt-get install git
|
||||
git clone https://github.com/fin-tic/fintic --recursive
|
||||
```shell
|
||||
sudo apt update
|
||||
sudo apt upgrade -y
|
||||
sudo apt install -y git
|
||||
```
|
||||
|
||||
cd fintic
|
||||
./setup.sh
|
||||
1. Clone the repo: `git clone https://github.com/fin-tic/fintic --recursive`
|
||||
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
|
||||
```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
|
||||
```shell
|
||||
cd ~
|
||||
curl "https://www.raspberryconnect.com/images/hsinstaller/AutoHotspot-Setup.tar.gz" -o AutoHotspot-Setup.tar.gz
|
||||
tar -xzvf AutoHotspot-Setup.tar.gz
|
||||
cd Autohotspot
|
||||
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
|
||||
|
||||
|
||||
## Change the hostname
|
||||
## Change the hostname
|
||||
|
||||
To change the hostname (URL used to access the server) first open config
|
||||
|
||||
```console
|
||||
sudo raspi-config
|
||||
```
|
||||
|
||||
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
|
||||
|
||||
|
||||
## Run instructions
|
||||
|
||||
```console
|
||||
sudo -E python3 server.py
|
||||
```
|
||||
|
||||
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
|
||||
|
||||
|
||||
To conver bdf font to pil format do pilfont.py <font filename>
|
||||
pillow v 5.4.1 works, but version 8.2.0 breaks.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
To convert bdf font to pil format do `pilfont.py <font filename>`
|
||||
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