Workarounds
Aus Grannophone
Zur Navigation springenZur Suche springen
- Falls man doch nicht ohne Lüfter auskommt, findet sich hier eine Anleitung, wie er sich bei Bedarf schalten lässt.
- 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.
- Plasterouter haben eventuell UPnP offen, dafür gibt es Tools, um geskriptet Ports freizuschalten, das ließe sich zu unserem Vorteil nutzen.
- Falls kein Festnetz-Internet via DSL oder Kabel zur Verfügung steht, kann auf einen LTE-Stick zurückgegriffen werden. Dabei ist zu beachten:
- Unbedingt Postpaid, sonst hat Ömchen irgendwann keine Verbindung mehr, und nach Murphy im unpassendsten Moment (Röchelruf)
- 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).//
- 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.
- Lötfreier Anschluss eines Lautsprechers z.B. mittels "GOOBAY 76745" von Reichelt o.ä.
- Jumper-Kabel (Female-Female und Male-Female) ersparen evtl. auch die eine oder andere Lötarbeit.
- 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?
- Ebenfalls zum Thema Hörgerät bzw. frequenzgenaue Anpassung der Telefonlautstärke an eine individuelle Hörschädigung:
- 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.
- Wenn USB-Soundkarte zum Einsatz kommt: Ausgänge umdrehen! Raspi-Ausgang für Hörer, Soundkartenausgang für Klingellautsprecher!
- Klingelton abspielen geht z.B. mit "AUDIODEV=hw:<device> sox -v 27.0 ringbell.wav -t alsa" (27 ist die Verstärkung)
- 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
- 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.
- Lötfreie Verbindungen, egal ob gecrimpt oder gesteckt, **immer** mit Heisskleber fixieren, geht sonst schief! Und keinesfalls vor dem Crimpen verdrillen!
- Display rotieren:
- xrandr -o [0|1|2|3] schaltet Orientierungen durch - wichtig für Hochkantdisplays
- 0 ist Querformat, Folienkabel unten
- 1 ist Hochformat, Folienkabel Blickrichtung aufs Display links
- 2 ist Querformat, Folienkabel oben
- 3 ist Hochformat, Folienkabel Blickrichtung aufs Display rechts
- gesamtes Display um 180° rotieren: lcd_rotate=2 in /boot/config.txt (geht nicht für 90/270)
- Mit Framebuffer gesamtes Display um 270° rotieren: display_lcd_rotate=3 in /boot/config.txt
- 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
- /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
- xrandr -o [0|1|2|3] schaltet Orientierungen durch - wichtig für Hochkantdisplays
- Touchscreen an 90°/270°-Rotation anpassen
- /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
- sudo service lightdm restart
- Angeblich auch per dtoverlay=rpi-ft5406,touchscreen-swapped-x-y=1,touchscreen-inverted-x=1 in /boot/config.txt möglich
- /etc/X11/xorg.conf.d/99-calibration.conf mit folgendem Inhalt anlegen:
- Bei Performance-Problemen des Pis schauen, ob /sys/devices/system/cpu/cpu?/cpufreq/scaling_governor den richtigen Wert enthält
- hier ist noch ein Hinweis, warum ein Pi vielleicht schon bei 60 Grad langsam heruntertaktet, und wie man das umgehen kann
- https://www.raspberrypi.org/forums/viewtopic.php?t=224896 erklärt die Ausgabe von vcgencmd get_throttled
- Das Paket "unclutter" versteckt den Mauszeiger auf den Videodisplays (falls er stört), lässt aber Touch aktiv.
- Mauszeigeranzeige komplett deaktivieren (Touch aber weiterhin möglich): "xserver-command=X -nocursor" in /etc/lightdm/lightdm.conf ergänzen
- Touch deaktivieren: disable_touchscreen=1 in /boot/config.txt
- Helligkeit des TouchDisplays lässt sich steuern:
- "motion" startet nicht automatisch, weil Permissions auf /var/log/motion falsch. Fix: sudo chown -R motion: /var/log/motion
- 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.
- 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.
- 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.
- zufälligen IPv6-Netzwerkbereich generieren:
- echo "$(echo "fd$(uuid | tr -d '-' | cut -c 1-27)" | \
- sed 's/.\{4\}/&:/g')$(printf '%x\n' $((4*(RANDOM%4))))00/118"
- 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
- Cave: RFC4193 sagt, dass man einen anderen Mechanismus für random ranges verwenden soll.