Workarounds

Aus Grannophone
Zur Navigation springen Zur Suche springen

Workarounds, auf die man eventuell zurückgreifen muss

  1. Falls man doch nicht ohne Lüfter auskommt, findet sich hier eine Anleitung, wie er sich bei Bedarf schalten lässt.
  2. Falls VPN nicht geht, kein Portforwarding geht, etc. kann man sich mit Tor behelfen versuchen - wobei da die Frage ist, ob die Latenz nicht zu hoch ist. Allerdings könnte die Server-Seite im Non-Anonymous Mode laufen, das nimmt 2 Hops aus der Kette raus.
  3. Plasterouter haben eventuell UPnP offen, dafür gibt es Tools, um geskriptet Ports freizuschalten, das ließe sich zu unserem Vorteil nutzen.
  4. Falls kein Festnetz-Internet via DSL oder Kabel zur Verfügung steht, kann auf einen LTE-Stick zurückgegriffen werden. Dabei ist zu beachten:
    1. Unbedingt Postpaid, sonst hat Ömchen irgendwann keine Verbindung mehr, und nach Murphy im unpassendsten Moment (Röchelruf)
    2. Unbedingt ein Stick, der einen kleinen NAT-Router onboard hat, und USB-Ethernet-Dongle spielt, statt Modem zu spielen -> erheblich leichter zu konfigurieren, erheblich stabiler im Betrieb (bei ppp dauert die Anwahl manchmal viel zu lange; die Router-Sticks sind dagegen quasi daueronline - und das will man ja, damit das Gerät auch für eingehende Rufe auf Empfang ist). //Achtung: Unbedingt LTE, denn UMTS wird bei sämtlichen deutschen Providern im Laufe des Jahres 2021 abgeschaltet, und EDGE/GSM übertragen mit zu wenig Bandbreite. Beim Test am Installationsort unbedingt sicherstellen, dass kein Fallback in UMTS erfolgt - sonst wählt man sich evtl. über UMTS ein, ohne es zu merken, und hat dann 2021 spontan kein Netz mehr (weil der Standort keinen ausreichenden LTE-Empfang hat, aber gutes UMTS hatte).//
    3. Alternativ zu einem Stick kann vielleicht auch etwas wie das Adafruit-FONA-Modul (https://learn.adafruit.com/adafruit-fona-mini-gsm-gprs-cellular-phone-module) genutzt werden.
  5. Lötfreier Anschluss eines Lautsprechers z.B. mittels "GOOBAY 76745" von Reichelt o.ä.
  6. Jumper-Kabel (Female-Female und Male-Female) ersparen evtl. auch die eine oder andere Lötarbeit.
  7. Für Hörgeräteträger mit modernen Geräten (Bluetooth) kann eine Kopplung überlegt werden. Leider sind die im Raspi eingebauten Bluetooth-Komponenten meist zickig. Es empfiehlt sich daher, einen USB-Hub im Grannophone zu verbauen und dort ein USB-BT-Dongle einzustecken, möglichst nah an der Vorderseite. Andere Option: Die (z.T. deutlich teureren) USB-Hörer von Plathosys unterstützen den HAC-Standard. Für ältere Geräte kann alternativ ein Adapter Klinke->Induktionsschleife in Frage kommen, dann aber ggf. über USB-Soundkarte, da sonst das Klingelsignal nicht ausgegeben werden kann (wir haben nur eine Buchse). Andererseits ist eine "Lautsprecher-Klingel" für Hörgeschädigte vielleicht eh nicht laut genug -> Buzzer per GPIO schalten?
  8. Ebenfalls zum Thema Hörgerät bzw. frequenzgenaue Anpassung der Telefonlautstärke an eine individuelle Hörschädigung:
    1. https://github.com/m-r-s/hearingaid-prototype
    2. https://github.com/m-r-s/hearingaid-prototype/wiki
    3. https://magpi.raspberrypi.org/articles/hearing-aid-research
  9. https://euroelectronics.eu/de/products/kompakt-mini-stereo-lautsprecher-pc-computer-laptop-usb-paar-boxen-schwarz-rot ist ein Lautsprecherset, was per USB mit Strom versorgt wird. Könnte man für Klingeln und Lauthören nutzen versuchen. Macht halt einen Port dicht.
  10. Wenn USB-Soundkarte zum Einsatz kommt: Ausgänge umdrehen! Raspi-Ausgang für Hörer, Soundkartenausgang für Klingellautsprecher!
  11. Klingelton abspielen geht z.B. mit "AUDIODEV=hw:<device> sox -v 27.0 ringbell.wav -t alsa" (27 ist die Verstärkung)
  12. Alternative: Fürs Telefonieren braucht man keinen Stereoton. Ein Kanal treibt den Hörer, der andere den Klingellautsprecher. Aufspalten in zwei Pseudo-Devices könnte so gehen wie hier beschrieben: https://wiki.archlinux.org/index.php/PulseAudio/Examples#Remap_left_or_right_to_mono
  13. Lötfreier Hörer: Mikrofon und Lautsprecher mit freien Kabelenden; Schraubstecker TRRS, Adapterkabel TRRS auf 2 x TRS oder USB-Soundkarte mit TRRS-Eingang; Hörerkabel kann dann USB-Kabel werden, Karte kommt in den Hörer. Nachteil bei TRRS-Karte/Hörereinbau: Klingelton muss der Raspi abspielen.
  14. Lötfreie Verbindungen, egal ob gecrimpt oder gesteckt, **immer** mit Heisskleber fixieren, geht sonst schief! Und keinesfalls vor dem Crimpen verdrillen!
  15. Display rotieren:
    1. xrandr -o [0|1|2|3] schaltet Orientierungen durch - wichtig für Hochkantdisplays
      1. 0 ist Querformat, Folienkabel unten
      2. 1 ist Hochformat, Folienkabel Blickrichtung aufs Display links
      3. 2 ist Querformat, Folienkabel oben
      4. 3 ist Hochformat, Folienkabel Blickrichtung aufs Display rechts
    2. gesamtes Display um 180° rotieren: lcd_rotate=2 in /boot/config.txt (geht nicht für 90/270)
    3. Mit Framebuffer gesamtes Display um 270° rotieren: display_lcd_rotate=3 in /boot/config.txt
    4. Mit (Fake)KMS - erkennt man an dtoverlay=vc4-fkms-v3d in /boot/config.txt - gesamtes Display um 90° (Achtung: Drehrichtung umgekehrt zu Framebuffer) rotieren: video=DSI-1:800x480@60,rotate=90 in /boot/cmdline.txt
    5. /usr/share/dispsetup.sh prüfen - wird beim Start von X aufgerufen und enthält einen rotate-Befehl, der ggf. angepasst werden muss (an 2 Stellen), und zwar "right" für Hochformat, "normal" für Querformat
  16. Touchscreen an 90°/270°-Rotation anpassen
    1. /etc/X11/xorg.conf.d/99-calibration.conf mit folgendem Inhalt anlegen:
      Section "InputClass"
      Identifier "calibration"
      MatchProduct "raspberrypi-ts"
      Option "SwapAxes" "1"
      Option "InvertX" "1"
      EndSection
    2. sudo service lightdm restart
    3. Angeblich auch per dtoverlay=rpi-ft5406,touchscreen-swapped-x-y=1,touchscreen-inverted-x=1 in /boot/config.txt möglich
  17. Bei Performance-Problemen des Pis schauen, ob /sys/devices/system/cpu/cpu?/cpufreq/scaling_governor den richtigen Wert enthält
  18. hier ist noch ein Hinweis, warum ein Pi vielleicht schon bei 60 Grad langsam heruntertaktet, und wie man das umgehen kann
  19. https://www.raspberrypi.org/forums/viewtopic.php?t=224896 erklärt die Ausgabe von vcgencmd get_throttled
  20. Das Paket "unclutter" versteckt den Mauszeiger auf den Videodisplays (falls er stört), lässt aber Touch aktiv.
    1. Mauszeigeranzeige komplett deaktivieren (Touch aber weiterhin möglich): "xserver-command=X -nocursor" in /etc/lightdm/lightdm.conf ergänzen
    2. Touch deaktivieren: disable_touchscreen=1 in /boot/config.txt
  21. "motion" startet nicht automatisch, weil Permissions auf /var/log/motion falsch. Fix: sudo chown -R motion: /var/log/motion
  22. zu Fernwartungszwecken sollte auch immer ein Wifi nutzbar sein. Entweder eigener Hotspot/AP oder ein voreingestelltes verschlüsseltes Wifi. Dann kann man notfalls mit der Pringles-Cantenna vorm Pflegeheim stehen, wenn man nicht rein darf.
  23. Den Button auf manchen WebCams (wie MS LifeCam) kann man abfragen, er löst bei xev einen "XF86WebCam"-Event aus (bei evtest einen KEY_CAMERA), den man auf irgendwas mappen kann. Aber dazu muss die Kamera aktiv sein. Dazu kann man z.B. ffmpeg -f video4linux2 -s 176x144 -r 30 -i /dev/video0 -f rawvideo - | dd of=/dev/null benutzen - nur wird das halt CPU-Last und somit Wärme generieren. Aber wenn motion bereits läuft, sollte das reichen. Mit xmodmap -e "keycode 220 = space NoSymbol space" kann man dann den Knopf zu einem Leertastendruck umdefinieren.
  24. Ein Device wie der FeinTech VHQ00101 HDMI-Modulator DVB-C DVB-T2 Full-HD 1080p Encoder MPEG4 HDTV kann genutzt werden, um das Signal über die Antennenleitung statt über HDMI in den Fernseher einzuspielen, aber ist leider nicht gerade billig.
  25. zufälligen IPv6-Netzwerkbereich generieren:
    1. echo "$(echo "fd$(uuid | tr -d '-' | cut -c 1-27)" | \
      sed 's/.\{4\}/&:/g')$(printf '%x\n' $((4*(RANDOM%4))))00/118"
    2. Erklärung:
      fd00: bis fdff: als Präfix (privater IPv6-Range)
      wir stellen daher fd voran
      uuid spuckt ausreichend lange Hexadezimalzahl aus
      Bindestriche entfernen
      Zeichenkettenlänge (inkl. "fd") auf 27 reduzieren
      Alle 4 Zeichen einen Doppelpunkt setzen
      Eine Zufallszahl [0-3] generieren, mal 4 nehmen und zu hex wandeln,
      da wir bei der geplanten Netzmaske nur 0,4,8 und c "brauchen" können
      00 als Suffix
      /118 als Netzmaske (1024 IPs pro Range)
      Optional kann noch "uuid -v 4" verwendet werden statt "uuid" - sonst
      bleiben ein paar Stellen immer (oder zumindest längere Zeit) gleich
    3. Cave: RFC4193 sagt, dass man einen anderen Mechanismus für random ranges verwenden soll.