Direkt zum Hauptinhalt

lightpickrally

Dieses Projekt soll eine Kombination aus dem Open LED Race und einem Regalsystem mit Pick by Light werden.

Die LED-Streifen werden unterhalb unserer Regale geklebt und es wird ein Arduino Nano zur Ansteuerung der LEDs verwendet.

Der Arduino hört auf einer HTTP-Schnittstelle auf Anforderungen um einzelne LEDs aufleuchten zu lassen.

Sobald ein Knopf des LED-Races gedrückt wird, schält die Software in den Race Modus. Nach einem Ablauf von einer bestimmten Zeit wechselt die Software wieder in den Pick by Light Modus.

Die LEDs werden im Directus zu den Inventaren gepflegt und der HTTP Post Aufruf erfolgt über eine separate Web Anwendung.

Code für den Arduino Nano: https://git.swablab.de/projects/lightpickrally

Display-Pi

  • Installieren von Alpine aarch64
  • usercfg.txt (neben config.txt) folgenden Inhalt: dtoverlay=vc4-kms-v3d
  • Display per HDMI anschließen
  • setup-alpine durchlaufen und user pi anlegen
  • ssh pi@dieter.diy
  • Autologin einrichten
    • doas nano /usr/sbin/autologin mit folgendem Inhalt:
      #!/bin/sh
      exec login -f pi
    • doas chmod +x /usr/sbin/autologin
    • doas nano /etc/inittab (ersetzen):
      tty1::respawn:/sbin/getty 38400 tty1 -n -l /usr/sbin/autologin
  • Weston installieren
    • doas setup-wayland-base
    • doas setup-devd udev
    • doas apk add weston weston-backend-drm weston-backend-wayland weston-shell-desktop seatd
    • doas rc-update add seatd
    • doas rc-service seatd start
    • adduser pi seat
    • apk del elogind polkit-elogind
  • User einrichten
    • mkdir ~/xdg
    • nano .profile :
      if [ "$(tty)" = "/dev/tty1" ]; then
      while true; do
      XDG_RUNTIME_DIR=/home/pi/xdg weston
      done
      fi
    • .config/weston.ini:
      [core]
      mode=kiosk
      idle-time=0
      [output]
      name=HDMI-A-1
      transform=rotate-270
      [shell]
      locking=false
      [autolaunch]
      path=/home/pi/lightpickrally
      [keyboard]
      keymap_layout=de
  • Lightpickrally installieren
    • doas apk add gcompat
    • GOARCH=arm64 go build -o lightpickrally
    • scp lightpickrally pi@dieter.diy:
    • ssh pi@dieter.diy "killall weston || true"
    • rm lightpickrally
  • Persistieren
    • doas lbu add /home/pi /usr/sbin/autologin
    • doas lbu ex /home/pi/xdg
    • doas lbu ci