Posts by ixi

    Ein paar spontane Gedanken, in der Hoffnung, dass sie weiterhelfen:

    Reed- oder Magnetkontakt im Einfahrgleis *) bewirkt eine Ansage über Lautsprecher.

    Mein erster Gedanke war der gleiche, den @Modellbahnfahrer schon gepostet hat: RFID-Chips. Der zweite Gedanke ist ggf. etwas einfacher: Unterschiedliche Züge lösen innerhalb derselben Zeit (1-2 Sekunden, schätze ich?) unterschiedlich oft aus, Zug 1 könnte also z.B. 1 Magnet, Zug 2 dann 2 Magneten und Zug 3 entsprechend 3 Magneten verbaut haben. Ab dem ersten Signal müsste dann zunächst gezählt werden, wie oft innerhalb eines vordefinierten Zeitraumes noch ausgelöst wird; daran würde dann der Zug identifiziert.

    Auf einen Knopfdruck am Tablet (angebunden per WLAN) sollten sich irgendwelche weiteren Ansagen abspielen lassen,

    Ich habe das bei einem in dieser Hinsicht vergleichbaren Projekt über "Flask" realisiert. Flask ist ein auf Python basierender Webserver, der dem Client (ein handelsüblicher Webbrowser) eine HTML-Seite auswirft. Über JavaScript/AJAX lösen einzelne Buttons dort Rückfragen an den Server auf, der Server wiederum verarbeitet diese und lässt dann LEDs läuchten und Sounds abspielen.

    eventuell auch zufalls-/zeitgesteuert manch eine andere Ansage.

    Auf einem Microcontroller vermutlich schwieriger umzusetzen; auf einem Pi mit Netzanbindung reicht ein cronjob bzw. Entsprechung (ginge z.B. auch über systemd).

    Auf einen (anderen) Knopfdruck gibt's die Abfahrtsansage, wenn die beendet ist schaltet ein Lichtsignal auf grün und der Zug fährt los (letzteres übernimmt dann schon die Zugsteuerung, manuell).

    Siehe oben; sobald Du das mit dem Knopfdruck gelöst hast, kannst Du prinzipiell alles davon realisieren. Wenn das Steuergerät (ob nun Pi oder Mikrocontroller) das Signal schalten kann, kannst Du das dann auch per Knopfdruck; selbiges für Ansagen und entsprechend die Zugsteuerung (sorry, damit kenn ich mich so gar nicht aus).

    Eventuell Ein-/Ausschalten von Bahnhofsbeleuchtung (LEDs).

    Schalten von LEDs über ein Webinterface ist etwas, das Du auf gefühlt jedem Blog oder Website, die sich mit Pis und/oder Mikrocontrollern beschäftigt, als Anfängerbeispiel findest. Da wirst Du auf jeden Fall was finden und es ist vmtl. ein guter Projekteinstieg.


    Grundsätzliche Frage: gehöre ich mit dieser Geschichte eher auf eine Arduino-Plattform oder auf einen Raspberry (ein 2B würde in der Lade liegen)?

    Ich tendiere aufgrund der Komplexität eher zum "richtigen" Computer, also zum Pi; das liegt aber auch daran, dass ich mich mit Mikrocontrollern kaum bis gar nicht auskenne. Das einzige, was ich mir unter einem Mikrocontroller etwas tricky vorstelle, sind zeitgesteuerte Ansagen; dazu bräuchtest Du wohl ein RTC-Modul (Real-Time-Clock; Echtzeituhr). Auf den Pis gibt es die zwar auch erst ab der neuen 5er-Variante eingebaut; aber Dein Projekt soll ja ans WLAN angebunden sein und die Pis holen sich die Uhrzeit eben über WLAN und haben dann diverse Möglichkeiten (s.o.), Dinge zeitgesteuert zu tun.

    Ich kann mir vorstellen, dass man das auch irgendwie mit einem Arduino oder auch mit einem Pico W hinbekommen könnte. Aber, wie gesagt, nicht mein Fachbereich.

    Mich würde mal interessieren, wie man Audiodateien zum Abspielen oder LEDs zum Schalten bringt, wenn ein Gleiskontakt kurzzeitig anspricht oder am Tablet auf einem GUI ein Knopf gedrückt wird. D.h. wie könnte die Sache im Detail aussehen bzw. nach welchen Stichwörtern sollte ich googeln?

    Im Prinzip musst Du zwei Probleme lösen: Erstens, wie bekommst Du den Input von außen in das Gerät (Sensoren, Fernzugriff über ext. Gerät). Zweitens, wie steuert das Gerät die einzelnen Komponenten an. Das zweite Problem ist etwas einfacher, damit würde ich anfangen. Die Suchbegriffe sind die offensichtlichen: LED schalten, Sound abspielen. Das hängt dann von der gewählten Plattform ab, daher bin ich noch so allgemein. Je nachdem, ob Du mit einem Mikrocontroller oder einem "Mini-PC" wie dem Pi arbeitest, stehen Dir andere Möglichkeiten zur Verfügung.

    Das erste Problem, also Input ins Gerät, lässt sich wiederum in zwei Probleme zerlegen. 1a: Wie werden Sensoren ausgelesen? 2b: Wie greife ich von entfernt auf das Gerät zu? Auch das wären dann die fraglichen Stichwörter. Das mit dem GUI von außen habe ich, wie gesagt, über eine Weboberfläche und Webserver auf dem fraglichen Gerät gelöst, der dann mit den Sensoren/Aktoren interagiert. Eine andere Möglichkeit wäre vmtl., die Geräte über MQTT miteinander reden zu lassen; z.B. wenn Du das GUI nicht über eine Weboberfläche, sondern ein eigenes Programm auf dem Tablet lösen willst.

    Hoffe, Du kannst mit irgendetwas von dem etwas anfangen. Viel Erfolg und poste vielleicht mal ein Foto oder Video! ;)

    Und dann meine Frage die ich schon gestellt hatte, wie kann ich mit einem Befehl anweisen, LED 3 bis 5 an mit dieser Helligkeit in Grün, und dann im nachfolgenden Befehl erst die nochmalsskalierte Helligkeit der letzten LED die gemäß der aktuellen Drehzahl leuchten soll.

    Schau mal hier: https://docs.micropython.org/en/latest/library/neopixel.html

    Dort gibt es mit .write() die Möglichkeit, den Streifen mit einem einzigen Befehl zu füllen. Du musst die Füllung nur vorher berechnen. Wenn es schnell gehen muss, ggf. über vorgefertigte Listen, wenn diese lang und komplex sind, kannst Du diese auch automatisiert berechnen und dann rüberkopieren.

    Zudem sollten die einzelnen LEDs die gerade leuchten sollen nicht sofort mit der maximalen Helligkeit leuchten, sondern noch einmal in diesem Bereich pro LED skalieren. Meiner Vorstellung nach, wenn ich das richtig eingeplant haben sollte, müssten alle ca. 370 1/min mehr die nächste LED angehen. Diesen Bereich würde ich gerne noch einmal durch 2 oder 3 vielleicht sogar 4 Helligkeitswerte unterteilen.

    Helligkeitswerte erreichst Du, indem Du Deine Farben um einen einheitlichen Faktor dimmst. Du kannst probeweise einmal (255,0,0) und (127,0,0) vergleichen. Es sollten zwei als unterschiedlich hell wahrgenommene Rot-Töne herauskommen. Wenn Du RGBW-LEDs hast, also noch eine weiße LED neben der RGB-LED, dann könntest Du auch über die weiße LED dimmen.

    Wichtig zu wissen: Unser Auge nimmt diese Helligkeitsabstufungen nicht linear wahr, sondern in einer Kurve. Daher mein Hinweis auf Gamma-Korrektur. Aber das ist dann ein Folgeproblem für einen Zeitpunkt, wenn Du das Minimalbeispiel implementiert hast.

    Ist das Problem die Optimierung des Codes, dass er schnell genug läuft? Oder ist das Problem die Berechnung der konkreten Farbwerte? Ich bin mir ehrlich gesagt nicht sicher, ob ich das Problem richtig verstehe.

    Wenn ich es richtig sehe, gibt es einen Eingangswert (hier die Motordrehzahl) und anhand dessen soll berechnet werden, a) wie viele LED leuchten sollen und b) in welcher Farbe, richtig? Denn das an sich ist vielleicht kompliziert, aber nicht unmöglich. Du berechnest ein Tupel aus einzelnen RBG-Werten und schickst das gesammelt an den LED-Streifen. Wenn die ersten beiden LED immer aus bleiben sollen, beginnt das Tupel schonmal mit (0,0,0), (0,0,0).

    Was die Aktualisierungsdauer angeht: Ggf. musst Du (es klingt ja nach Farbverläufen) für Gamma-Werte Tabellen vorab errechnen und vorher ablegen, um Rechenzeit zu sparen. Dann aber sind, wenn ich ein altes Skript, das ich 2 Jahre nicht angefasst habe, gerade bei einem kurzen Blick richtig analysiert habe, Aktualisierungsraten alle 0,006 Sekunden jedenfalls so darstellbar, dass sich für das menschliche Auge flüssige Farbverläufe ergeben.

    Aloha!

    An einem Raspberry Pi Pico (es läuft MicroPython v1.19.1 vom 23.10.2022 drauf. Never change a running System! :D ) hängen Sensoren, der Pico liest sie aus. Diese Daten will ich auf dem PC (läuft natürlich LInux drauf) haben und weiterverarbeiten. Vielleicht irgendwann sogar per WLAN (es ist ein Pico W), aber für den Anfang reicht es mir, wenn ein USB-Kabel im Desktop-Rechner steckt.

    Kommunikation mit dem Pico funktioniert, sonst würde Thonny nicht so tun, wie es tut.

    Wo ich aber nicht hinkomme ist, die Daten aus dem Skript vom Pico an meinem Rechner auszulesen. Es gibt dazu schon diesen Thread (liebe Mods, wenn ich mein Problem dort hätte schildern sollen, bitte zusammenschieben. Ich bin eher kein Regular hier und kenne es aus anderen Foren so, dass man die support-Threads anderer nicht übernimmt). Dort hatte Tell dankenswerterweise diesen Blogbeitrag bei blog.heimetli.ch verlinkt.

    Leider kann ich daraus kein Minimalbeispiel verallgemeinern.

    main.py auf dem Pico:

    Python
    from machine import Timer
    
    t = Timer(period=5000, mode=Timer.PERIODIC, callback=lambda t:print('hello world')

    Der Timer sendet alle 5 Sekunden (`hello world`). In Thonny tut er das zuverlässig.

    Auf Seiten des PCs läuft der folgende Code:

    Code
    #!/usr/bin/env python3
    #coding: utf-8
    
    with open('dev/ttyACM0') as input:
      for line in input:
        print(line)

    Ich hätte nun erwartet, bei Ausführen des Skripts in der Kommandozeile am PC alle 5 Sekunden hello world zu lesen.

    Stattdessen steht da zwar einmal hello world, dann wiederholt sich die Botschaft aber und wird "zerhackt". Innerhalb von einer Sekunde gibt es mehrere tausend Zeilen in der Standardausgabe, offenbar schickt der Pico also auf einmal sehr viele lines.

    Sieht ungefähr so aus:

    Und so weiter.

    Mache ich was falsch? Oder hat der Pico einen Schaden? Er sendet nicht permanent, jedenfalls nicht die ersten paar Sekunden, die auslesen.py läuft. Dann aber... sehr viel. :helpnew:

    Nette Idee für ein Einsteigerprojekt!

    Ich schließe mich allerdings Tell an: Ein Raspi (der im Prinzip ein vollwertiger Computer ist, mit Betriebssystem und allem drum und dran) ist dafür überdimensioniert. Den für sowas zu verwenden, ist ungefähr so, als würdest Du mit nem 40t LKW zum Bäcker zwei Straßen weiter fahren, um ein Brot zu kaufen. Ein Microcontroller eignet sich besser. Wenn Du bei Hardware von der Raspberry Foundation bleiben möchtst, nimm einen Pico Pi (der Pico W hat auch WLAN & Bluetooth). Der ESP-32 wäre eine Alternative; es gibt weitere Alternativen.

    Beide findest Du in so ziemlich jedem Elektronik-Internethandel, die Suchmaschine Deines Vertrauens hilft Dir da weiter (hab grad nicht im Kopf, wie die Foren-Policy hinsichtlich "Werbung", d.h. Aufzählung z.B. der üblichen Verdächtigen aussieht).

    Für Gehäuse gilt das gleiche: Wenn Du einen Anbieter gefunden hast, such nach Gehäusen (oder auch "Universalgehäuse" oder "Kleingehäuse", wenn der Anbieter Dir zunächst zu viele PC-Tower ausspuckt). Für einen Prototypen kannst Du aber auch erst einmal die Versandkartons recyclen, in denen die Hardware zu Dir kam. Ordentlich beklebt oder besprüht machen auch die 'was her und Pappe ist einfacher zu bearbeiten als Plastik (Bohrungen).

    Wenn ich eine meiner Erfahrungen mit Dir teilen darf: Eine möglichst konkrete Liste, was das Gerät am Ende können soll, ist unglaublich hilfreich. Ein Verweis "so wie das da" mit einem Amazon-Link hilft nicht viel weiter (übrigens auch nicht bei Hilfestellungen, wir müssen dann erst einen Link klicken, auf der Seite scrollen, ggf. an mehreren Stellen lesen…). Ich bin sehr gut damit gefahren, aufzuschreiben: was das Gerät können soll (jede einzelne Funktion ein Aufzählungspunkt), wie man es bedient, wie es aussehen soll, etc. Da kann dann durchaus "Aussehen egal, wichtig ist, dass es ein Gehäuse gibt und keine Drähte oder Kontakte offen liegen" heißen, wenn das zutrifft. Aber die Funktionen sollten möglichst konkret sein. Zu jedem Punkt kommt dann, wenn Du es weißt, auch ein Stichpunkt für den Weg der Umsetzung und der entsprechende Bedarf an Hardware.

    Das hilft einerseits uns, weil wir Dir dann einfacher Tips geben können. Andererseits aber auch Dir, weil Du viel konkreter fragen kannst ("zu xyz weiß ich noch nicht, wie ich das am besten umsetze, hat jemand eine Idee?"). Und weil Du Dir so eine To-Do-Liste baust, die Du am Ende einfach nur abarbeiten brauchst, um zum Erfolg zu kommen. :)

    Ich muss den Titel etwas präzisieren: "Welche Plattform für einen Umweltsensor mit Thermometer, Hygrometer, Barometer und Luftgütemessung?"

    Ich will einen kleinen Umweltsensor bauen. Für den Schreibtisch oder die Fensterbank, mal sehen.

    Angeschlossen werden soll:

    • ein BME 680 Umweltsensor (Temperatur, Luftfeuchte, Luftdruck, VOC)
    • ggf. ein MH-Z19C (CO2-Konzentration)
    • ein Display (ggf. zweizeilig, ggf. buntes LCD, noch nicht sicher)
    • ein Taster
    • ggf. ein paar LEDs oder NeoPixel

    Funktionieren soll es wie folgt:

    Die Sensoren messen die o.g. Dinge. Auf Knopfdruck zeigen sie die Werte auf dem Display an (bei einem bunten LCD über SPI gleichzeitig, bei einem zweizeiligen Display rotiert die Anzeige wohl durch). Ggf. könnten ein paar LEDs (oder Neopixel) bei gewissen Schwellenwerten leuchten und damit irgendwelche Dinge anzeigen. "Funk" steht deshalb im Titel, weil ich mir die Option offen halten möchte, die Daten per WLAN abzufragen bzw. vielleicht irgendwann an eine Zentrale zu melden.

    Meine Frage ist nun: Welche Plattform nutze ich dafür sinnvollerweise? Ist das etwas für einen Pico W? Oder sollte ich besser einen Zero W verwenden?

    Okay. Ich hatte gehofft, dass da vielleicht noch ein weiterer Ausgang neben dem Ethernet-Ausgang gewesen wäre…

    Zu nullmailer: Ich bin nicht sicher, ob nullmailer tatsächlich Mails empfangen kann. Das ist ja das, was Du willst, wenn ich das richtig sehe – einen Mailserver, der EMails empfängt und dann postwendend an eine definierte Adresse schickt. nullmailer scheint mir aber nach oberflächlicher Recherche genau das nicht zu können, sondern ausschließlich fürs Senden da zu sein.

    Vielleicht schaust Du mal bei anderen Leichtgewichten wie qmail in die Handbücher. Ansonsten fällt mir noch dovecot ein, aber das ist vermutlich etwas überdimensioniert für das, was Du vorhast.

    Auf die Gefahr hin, dass ich mich durch zu dreckige Spaghetti-Lösungen unbeliebt mache, aber: HTML/CSS/JS macht ganz schön mächtige User-Interfaces.

    Mit anderen Worten: Ein Browser im Vollbild ist alles, was Du brauchst, um das abzubilden, was Du abbilden möchtest. Die Texte können über CSS Animationen über den Bildschirm scrollen; wenn man Intros/Bridges/Soli/Outros entsprechend kommentiert, ergibt sich die Scroll-Geschwindigkeit von selbst, da man einfach die Länge des Liedes als Animationsdauer eintragen kann.

    Einzig die Steuerung wird etwas tricky. Zwar kann man Animationen pausieren; der Browser, der die Website ausführt, ist aber von sich aus von außen nicht ansteuerbar. Hier müsstest Du also einen Server vorhalten, der auf die externe Steuerung lauscht (entweder unmittelbar über die GPIO des Raspi oder aber, bei komplexeren Steuerungen, einen Presenter, eine Maus, eine Tastatur – oder eine emulierte Tastatur auf Basis z.B. eines Pico Pi). Diesen Server müsste der Browser per AJAX in regelmäßigen Abständen (wohl im Zehntel- bis Hundertstelsekunden-Bereich) fragen, ob es Steuersignale gibt und diese bei Vorliegen umsetzen.

    Unabhängig von dieser Lösung:

    In der exakten Geschwindigkeit als Lauftext wird nicht so einfach sein.

    Eigentlich ist das recht einfach. Unter der Voraussetzung, dass Du in zeitlich etwa gleich lange Zeilen (bzw. Spalten, wenn Du horizontale Bewegung haben willst) aufteilst, musst Du nur wissen, wie lang beim aktuellen Stück eine Zeile dauert. Daraus und aus der Gesamtspielzeit ergibt sich dann die Scroll-Geschwindigkeit bzw. der Zeitpunkt zum "umblättern". Passagen, in denen nicht gesungen wird, müssten dann natürlich entsprechend kommentiert werden bzw. durch leere Zeilen dargestellt werden.

    Kaum beschwert man sich – schon geht's. Interessanterweise tut auch ein RPi Zero WH, wie er soll. Und der war final ohnehin für das Projekt vorgesehen.

    Herzlichen Dank aber für den config_hdmi_boost Eintrag! Vielleicht teste ich die anderen Raspis damit in einer ruhigen Stunde mal durch! :)

    Ich möchte an einem Raspi insg. 3 Monitore betreiben. Am liebsten sollen die unterschiedliches Bild zeigenaber für den Anfang bin ich auch mit einer geklonten Anzeige zufrieden.

    Dazu habe ich einen HDMI-Splitter gekauft, der aktiv über ein 5V/1A Netzteil versorgt wird. Er übernimmt ein HDMI Signal aus einer Quelle und klont es auf dei drei Monitore. Dabei gibt es allerdings ein paar seltsame Probleme. Denn abhängig vom Ursprung des Signals wird es nicht angemessen übertragen. Getestet habe ich mit meinem Laptop, einem Raspberry Pi 400, einem Raspberry Pi 3B und einem Raspberry Pi Zero.

    Beim Raspberry Pi Zero fällt kein Bild aus dem Splitter. Eine einzelne Anzeige an den Zero zu hängen funktioniert aber.

    Beim Raspberry Pi 3B fällt zwar ein Bild aus dem Splitter, allerdings ist mindestens eine der Anzeigen fehlerhaft und friert immer wieder ein. Manchmal bleibt auch ein Monitor schwarz bzw. behauptet, kein Signal zu erhalten.

    Beim Raspberry Pi 400 klont der Splitter wie er soll; ebenso bei meinem Laptop.

    Hat jemand eine Idee, woran das liegen könnte? Im Moment sieht es so aus, dass, je leistungsfähiger die Maschine ist, an der die Monitore hängen, desto eher die Anzeige funktioniert. Allerdings wird der Splitter ja aktiv versorgt, weswegen eine etwaige Versorgung über HDMI eigentlich keinen Unterschied machen sollte. Etwas anderes als Unterversorgung des Splitters fällt mir aber nicht ein.

    Hat jemand eine Idee, wo das Problem liegen könnte?

    Ich bin immer wieder fasziniert, worüber man sich alles erregen kann. Die Zeiten, in denen mein größtes Problem war, dass man den Wunsch nach geschlechtergerechter Sprache an mich herantrug, wünsche ich mir wirklich zurück. Wenn man kein Problem hat, schafft man sich eines.

    Herr Kaiser Ich glaube, die Theorie "sich selbst einen Grund schaffen, sich zu empören" ist nur eine (aber sehr bedeutende) Facette der Erklärung. Eine andere lautet in meinen Augen: "einen Grund finden, sich über andere erheben zu können". Stichwort Neutralita gendern.

    Ich krieg grad Lust auf Spiegelei, auch wenn ich zur Aussprache einen undeutschen Glottisschlag verwenden muss.

    Kann ich die 1 kaufen?

    Ich frage mich nämlich, ob die Entwickelnden dieses Plugins auch andere Arten geschlechtsneutraler Ausdrucksweisen bedacht haben. Nicht, dass noch am Ende die Studierenden (der deutschen Sprache) als eigensprachliche Gerundien die hier etablierten fremdsprachlichen Gerundien ersetzen und das vom Plugin übersehen wird.

    sondern einfach nur ein Projekt im Sinne, was wäre wenn

    Naja, rechne einfach nicht damit, dass es "dann" auch funktioniert, weil Du für einen "echten" Einsatz noch ganz andere (insb. Umgebungs-)Variablen einberechnen müsstest. Angefangen bei Strahlung aber auch Temperaturen (dauerhaft unter Null oder auch mal stundenlang in direktem Sonnenlicht). Dazu kommt dann das, was Urs-1956 gesagt hat – Platz im Rucksack und Gewicht brauchst Du erst für Wasser, dann für Nahrung, Kompass und Papierkarten sind platzsparender und ausfallsicherer als Elektronik, dasselbe gilt für ein Buch zur Erkennung essbarer Pilze (schlechte Idee bei Nuklearkatastrophe) oder Pflanzen. ;)

    Ich finds aber ein sehr cooles Projekt zum Basteln und wünsch Dir viel Erfolg dabei! Halt uns gern mit Fotos auf dem Laufenden. ;)

    Soso, ein Pip-Boy? Yeah! :D

    Ist grundsätzlich schaffbar, denke ich. Und da Du ein bisschen Zeit eingeplant hast, wird das gehen.

    • GPS-Modul: Hier kann ich mangels Erfahrung nicht weiterhelfen. Die Idee von IcedEarth mit der Stellar-Navigation klingt wirklich nett. Am Tag könnte man mit Uhrzeit (braucht dann aber ein RTC-Modul), Sonnenstand und einer Abhängigkeit von der letzten Position ggf. näherungsweise nachhelfen. Aber da das eher nach einem Projekt für LARP denn für den Ernstfall aussieht, reicht ja GPS für den Anfang auch. Dafür gibt es sicher Tutorials.
    • Gassensor: Ich habe für ein eigenes Projekt (CO2-Ampel) kürzlich etwas zu Gassensoren recherchiert. Insb. wenn Du CO2 "echt" mit drin haben willst, wird's teuer und etwas größer. Wenn es Dir aber eher um Butan, Propan, Wasserstoff etc. geht, sind ggf. die MQ* Sensoren aus den diversen Starter-Kits, die so kursieren, ein guter Anfang. In der Regel kann man aus einigen Umweltsensoren auch CO2-Äquivalente berechnen ("Luftqualität"), inwieweit das sinnvoll ist/funktioniert, kann ich nicht sagen.
    • Temperatursensor: Die sind nicht selten mit Sensoren für Luftfeuchtigkeit gekoppelt. Luftfeuchtigkeit in Kombination mit Temperatur ist fürs Überleben ziemlich sinnvoll, weil es Kombinationen aus Temperatur und Luftfeuchtigkeit gibt, die Menschen nicht lange überleben. Einige dieser Sensoren können gleichzeitig auch Luftdruck messen. Mit Luftdruck kann man Höhenmeter über dem Meeresspiegel berechnen. Hilft bei der Positionsbestimmung und ist ein interessantes Datum.
    • Touchbildschirm/Gehäuse/Recheneinheit: Je nachdem, wie ernst Du es meinst und wie groß der Pip-Boy am Handgelenk sein darf, kannst Du das auch mit einem Pi Zero schaffen, denke ich. Zu Touchbildschirmen kann ich nicht viel sagen, aber alles, was HDMI+USB kann oder aber direkt auf den Raspi zugeschnitten ist, sollte problemlos funktionieren. Wenn Du das Gerät jetzt tatsächlich "härten" wollen würdest, müssten wir jetzt nochmal auf die Vor- und Nachteile von resistiven bzw. kapazitiven Touchscreens eingehen, aber ich nehme an, dass es eher auf dem Level "Requisitenbau" läuft, da können wir das wohl weitgehend vernachlässigen. Obwohl ich ein großer Fan von Holz-Gehäusen bin, würde ich bei einem derartigen Wearable eher zu 3D-Druck tendieren. Das wird dann den Umgang mit einem CAD-Programm Deiner Wahl nach sich ziehen.
    • Kamera im Gehäuse: Wenn der Raspi im Gehäuse selbst sitzt anstatt auf dem Rücken, kannst Du problemlos eine für den Raspberry Pi vorgesehene Kamera und die entsprechende Schnittstelle benutzen. Ansonsten tut es auch eine aus einem alten Laptop ausgebaute Webcam; die sind in der Regel per USB angeschlossen, sodass Du nur (auf einen richtigen Stecker) löten musst.
    • Taschenlampe im Gehäuse: Die einfachste Möglichkeit wäre hier eine LED mit hoher Leistung. Vermutlich ist dabei Anschluss Parallel zum Raspi sinnvoller als Versorgung über den Raspi (sooooviel Last trägt er nämlich nicht), aber Steuerung über einen GPIO sollte trivial sein.
    • Speicher: Neben der internen microSD Karte kannst Du externen Speicher am besten über einen der USB-Anschlüsse anschließen und versorgen. Wie klug das in Punkto Stromverbrauch ist, vermag ich nicht zu beurteilen. Wenn es tatsächlich nur Requisite sein soll, würde ich empfehlen, hier entweder lediglich auf die "interne" microSD zu bauen oder aber (wenn Du große Props zum Auswechseln brauchst) USB-Sticks oder microSD in größere Gehäuse zu verbauen.
    • Warn-LED(s): Trivial. Wenn Du es komplex(er) haben möchtest, kannst Du für verschiedene Benachrichtigungsarten oder Warnstufen verschiedene Farben nehmen (es gibt RGB-LEDs). Oder aber Du verwendest unterschiedliche Blink-Muster, das hätte auch was. :)
    • Bildschirm abschalten, ohne Pi abzuschalten: Klar, geht. Je nach Bildschirm sogar mit eigenem Knopf am Bildschirm.
    • Mobile Stromversorgung; Hier wird es kritisch. Und das ist der erste wirkliche Punkt, wo es interessant wird, welchen Raspi Du verbaust. Denn sie unterscheiden sich in ihrem Strombedarf. Ausgehend von den empfohlenen Nennleistungen benötigt ein Raspberry Pi Zero bis zu 1,2 Ampere (A), ein Raspberry Pi 3 2,5 A und ein Modell 4 sogar 3 A Leistung (Spitze). Im Leerlauf reicht die Bandbreite von 0,1 A (Zero) über 0,15 A (Zero W), und 0,4 A (3B) bis zu 0,6 A (4). Auch die durchschnittliche Auslastung schwankt. Daten und mehr gibt es hier bei der offiziellen Quelle. Je mehr Leistung Du abrufst, desto schneller ist Deine Batterie leer. Was aber alle Raspis gemeinsam haben: Sie wollen eine Versorgungsspannung von 5,1 V anstatt den 5 V, die übliche Powerbanks ausspucken. Du müsstest also "im Batteriebetrieb" dafür sorgen, dass Du ausreichend Versorgungsspannung bereitstellst. Dafür wird es Chips geben, rechne aber damit, dass es die Powerbank zusätztlich belastet.
    • Mobiles Aufladen der Powerbank per Solar: Trivial, da kann man entsprechende Bausätze kaufen. Im Prinzip musst Du "nur" die Spannung, die das Solarmodul bereitstellt auf die Eingangsspannung der Powerbank (herunter)regeln (typischerweise 12V → 5V, wenn ich den Markt richtig überblicke) und dafür sorgen, dass die Last begrenzt ist und das Laden irgendwann aufhört, wenn die Powerbank voll ist. Wie gesagt, es gibt Bausätze dafür.
    • Programmaufruf beim Start: Ja, natürlich ist das möglich. Im Prinzip willst Du direkt in einen Kiosk-Modus booten. "Boot" und "Kiosk" wären die Suchbegriffe mit denen Du hier im Forum (und natürlich auch sonst im Netz) Tutorials dafür findest. Je nachdem wie Du Deine "Datenbank" (bzw. deren Such- und Darstellungsmaske) designst kannst Du die Tutorials sogar direkt übertragen. Ein recht anfängerfreundlicher Ansatz dafür wäre ggf. HTML/CSS im Browser mit einem entsprechenden, leichtgewichtigen Webserver im Hintergrund, der dann auf eine Datenbank zugreift. Man kann übrigens die Wikipedia als Datenbank herunterladen, justsayin. ;)
    • Bootlogo ändern: Ja, geht. Tutorials gefühlt überall im Netz. ;)

    Fazit: Wirklich ein sehr ambitioniertes Projekt, aber definitiv schaffbar. Ich sehe grundlegend drei Limitierungen:

    1. Auswahl des Raspi: Hier wirst Du Kompromisse zwischen Formfaktor (Zero passt vielleicht noch in ein Handgelenksmodul, 3/4 B eher nicht) und Leistung (Zero könnte(!) je nach Komplexität insb. der Datenbank und deren Darstellung etwas stotternder laufen, 3/4 sollten definitiv reichen) schließen. Ich kann mir aber durchaus vorstellen, dass das mit einem Zero durchaus gehen kann.
    2. Stromversorgung: Hängt einerseits, wie geschildert, mit dem gewählten Raspi zusammen. Je größer der Raspi, desto schneller wird der Akku leer sein. Das größte Problem einer mobilen Stromversorgung ist aber das Bereitstellen einer ausreichenden Versorgungsspannung von 5,1 V. Hier wirst Du zwingend etwas Elektronik zwischen die Powerbank und den Pi laden müssen.
    3. Anschlüsse: Jeder der von mir genannten Pi stellt Dir 40 GPIO Pins bereit. Das klingt nach viel, kann aber je nach Sensoren schnell eng werden. Nicht jeder Pin kann alles und nicht immer kann man Funktionen verlegen oder parallel vergeben. Mir hat es beim Planen immer geholfen, mir ein Layout von pinout.xyz zu nehmen (bzw. ggf. sogar zu drucken) und neben den entsprechenden Pin zu notieren, womit er belegt werden soll. Ansonsten: Die Zeros haben lediglich einen (Micro-)USB-Port, du kannst aber für relativ günstiges Geld eine Platine drunterklemmen, die weitere drei (?) bereitstellt. Die Modelle 3/4 haben 4 "normale" USB-Ports verbaut, davon wirst Du ggf nicht alle brauchen (vmtl. auch nicht die USB 3.1, die Modell 4 bietet), sodass es vmtl wieder um Platz geht. Trotzdem lohnt es, das mit zu betrachten, denn, wie gesagt: Je nach Anzahl und Art der verbauten Module kann es wirklich schnell eng werden.

    Ich bin bei der ganzen Betrachtung davon ausgegangen, dass Du eine Requisite für LARPLARP und/oder Cosplay bauen willst. Wenn das der Fall ist: Go for it (aber rechne damit, dass Du auch noch im kommenden Jahr Freude am Basteln haben wirst).

    P.S.: Schon an einen Geigerzähler gedacht? Muss ja kein echter sein, könntest ja einen simulieren. Piezo-Buzzer und ein bisschen Software dürfte reichen. Im Prinzip ist aber auch sowas an einen Pi anschließbar.


    Viel Spaß!! :D

    (P.S.: Ich sehe, dass hier, während ich getippt habe, schon einiges an Postas aufgelaufen ist. Ich kenne nur den Ursprungspost und die erste Antwort von IcedEarth ;) )