Skip to content

Latest commit

 

History

History
92 lines (60 loc) · 2.22 KB

README.md

File metadata and controls

92 lines (60 loc) · 2.22 KB

Disinfo!

Simulated Info Demo

Note that this repo is actively being developed over various weekends. It may be drastically different tomorrow.

Lots of things are currently undocumented and unstable.

Connections:

  • Homeassistant (over MQTT)
  • Pirate Weather
  • Numbers API
  • IDFM (Paris Metro)

Hardware:

  • 2x HUB75 RGB LED Matrix 64x64
  • Raspberry Pi (3B+ or better)
  • Interface to connect the matrix to GPIOs
  • Power Supply

Refer to rgb-led-matrix library for details.

Notes:

  • Upgrade pillow (apt is too old) via pip install --upgrade pillow

Licenses:

  • Tamzen
  • Scientifica
  • Pixel Operator

(todo: Attributions)

HUB75 Connections to Pi

MATRIX  PIN       GPIO
strobe  7         4
clock   11        17

G1      13        27
G2      21        9
R1      23        11
R2      24        8
B1      26        7
B2      19        10

A       15        22
B       16        23
C       18        24
D       22        25
E       10        15

OE      12        18

Log2RAM https://github.com/azlux/log2ram

echo "deb [signed-by=/usr/share/keyrings/azlux-archive-keyring.gpg] http://packages.azlux.fr/debian/ bullseye main" | sudo tee /etc/apt/sources.list.d/azlux.list
sudo wget -O /usr/share/keyrings/azlux-archive-keyring.gpg  https://azlux.fr/repo.gpg
sudo apt update
sudo apt install log2ram

[notes] Setup RPI from scratch

  • Assuming a fresh minimal install.

  • Set isolcpus=3 in cmdline.txt at the end.

  • Set dtparam=audio=off in config.txt

  • check disk speed with sudo hdparm -Tt /dev/sda (install hdparm first)

  • with dd dd if=/dev/zero of=/tmp/output bs=8k count=10k; rm -f /tmp/output

macOS Setup

  • Install pyenv, redis, libsixel, cairo from brew.

  • Ensure libsixel can be found -- sudo ln -s /opt/homebrew/lib /usr/local/lib -- on macos with apple silicon

  • watchmedo auto-restart -d disinfo -d assets --patterns="*.py;*.png;*.bdf;*.ttf" --recursive -- python -m disinfo.renderers.sixel --fps 42

  • uvicorn disinfo.web.server:app --host 0.0.0.0 --port 4200 --reload -- run a local server showing the screen.

  • watchmedo auto-restart -d disinfo -d assets --patterns="*.py;*.png;*.bdf;*.ttf" --recursive -- python -m disinfo.renderers.background --fps 25 -- to feed the webpage.