In der CAVE der TU Chemnitz, IWP wird dieses Eingabegerät verwendet, aber auch an der POWERWALL sowie im benachbarten IWU (FhG).
Es ist Teil des Vicon Tracking Systems, welches auch an anderen Stellen recht reparaturanfällig ist. Inzwischen war, Ende 2014 wurde alles, bis auf die FlySticks, ausgetauscht. Mit anderen Worten, die von mir gemachte Lösung ist auch heute noch (2021) unverändert im Einsatz.
Nachfolgeprojekt: VR-Sandkasten mit 4 Knöpfen für (erwachsene) Kinder, Museum.
An den fünf retroreflektierenden
(ansonsten gleichartigen) Kugeln wird mit Hilfe mehrerer Infrarot-Kameras
(mit IR-Scheinwerfern) die Lage des Flysticks im Raum ermittelt
(einige Bildverarbeitung erforderlich).
Für die beiden Knöpfe (einer oben, der andere an der Unterseite)
ist ein 869-MHz-Funksender eingebaut.
Es ist sogar ein Transceiver (also mit Empfänger),
so dass man damit eine störungsfreie, zuverlässige Datenübertragung realisieren kann,
oder auch ein Firmware-Update des enthaltenen Mikrocontrollers.
Und das ist der herausgefundene Schaltplan.
Der Grund für diese Untersuchung ist die unzuverlässige Übertragung der
Steuerkommandos.
Noch mehr stört, dass manchmal unkontrolliert Kommandos ausgeführt werden!
Dies scheint etwas von der Auslastung des WLANs im Raum,
vom Gebrauch von Bluetooth, Handys und Drahtlosmikrofonen abzuhängen.
Von der Herstellerfirma wurde keine Verbesserung in Aussicht gestellt.
Beim genauer Analyse des Schaltplans, der Signale und der
mechanischen Konstruktion fallen eine Menge Ungereimtheiten auf:
Das ganze Gerät kostete sicherlich einige 100 €!
Hand aufs Herz, so etwas nenne ich Fehlkonstruktion!
Ohne die Firmware zu ändern oder den Mikrocontroller zu wechseln.
Mitgeliefert wird ein Standfuß und ein professionelles Ladegerät
Ansmann ACS110 traveller.
So weit, so gut.
Immer wieder kommt es vor,
dass das Ladegerät nicht fertig wird mit Laden und die Akkus zerbrät.
Das ist eben das Problem der Schnellladegeräte:
Volle und noch warme Akkus werden als leer erkannt und geladen,
bis sie glühen und kaputt gehen. Wirklich!!
Von der Brandgefahr ganz zu schweigen.
Ladegeräte, bei denen man die Akkus einlegen muss, haben dafür wenigstens
eine Temperaturüberwachung.
Hin wie her, der Flystick wird maximal 1 Stunde pro Tag benutzt und
minimal 23 Stunden pro Tag geladen. Wer braucht da einen Schnell-Lader?
Richtig: niemand.
Eine Konstantstromquelle samt Miniatur-Trafo passt in den Standfuß
und erspart obendrein die ewig störende
Wandwarze.
Mit 50 mA Ladestrom (viel weniger als ein Zehntel der Nennkapazität)
kann man keine Akkus totbrennen.
Zum Glück ist der Standfuß genügend dickwandig zum Basteln und bietet
genug Hohlraum für den Trafo.
Beim Ersatz der Schaltung mit einem besseren Mikrocontroller würde ich
von Akkus zu Trockenbatterien umschwenken wollen, das ist letztlich
zuverlässiger.
Es verbleiben immer noch die gelegentlichen Fehl-Tastendrücke.
Obwohl es nun deutlich seltener passiert.
Was wohl die Empfangseinheit macht?
Wahrscheinlich einfach nur das Signal des Funkempfängers durchreichen.
Beim Anblick habe ich prompt die Hände über den Kopf zusammengeschlagen!
Zwei Mikrocontroller! Zwei gleiche Quarze.
Womöglich nur zur Baudraten-Konvertierung.
Und das ist der Schaltplan:
Die Schaltung ist derart trivial, dass diese keiner weiteren Erklärung bedarf.
Da die vorhandenen FlySticks nicht für die Zeit des Umbaus abgezogen werden können,
wird hier auf Neubau gesetzt.
Mit NC-Fräsmaschinen sollte es keine Hürde sein, den Kopf nachzubauen.
Auch ein probeweiser 3D-Druck sah ganz brauchbar aus,
wurde jedoch (damals!) wegen zu erwartender geringerer Bruchfestigkeit verworfen.
Auf PC-Seite geht es stets per USB in den Rechner.
Das erspart Wandwarzen und ähnliche Stromversorgungsprobleme.
Das Gerät meldet sich schließlich als Joystick mit 2 Tasten und null Hebeln.
Mechanisch wurde hier das Elektronikteil samt LED und Taster
komplett in den verlängerten Plast-Kopf gesteckt.
Dadurch kann das Aluminium-Gehäuserohr per Zentralgewinde angeschraubt werden,
und die fummeligen radialen Schrauben des Originals entfallen.
drahtgebunden:
Im Gehäuse ist genügend Platz für das reichlich lange Kabel zum Buchsenstopfen,
welches beim Eindrehen entsprechend verwunden im Innern zu liegen kommt.
drahtlos:
Im Gehäuse ist Platz für 2 R3-Primärzellen, so wie im Original.
Da die Ruhestromaufnahme extrem gering ist, ist keine Lademöglichkeit notwendig
oder vorgesehen.
So ist der Stopfen frei von Kabeln und kann problemlos aufgeschraubt werden,
etwa zum Batteriewechsel.
Einfach zwei Joystick-Knöpfe und ein Joystick-zu-USB-Konverter.
Mal ganz einfach.
Der Konverter wurde bereits 1× in der Bastelkiste vorgefunden.
Ein weiterer wird mittels V-USB
und ATtiny44 aufgebaut.
Hier ist die Firmware.
Diese gibt sich als Joystick mit 2 Tasten und null Hebeln aus
und überträgt pro Report gerade mal 1 Byte mit sinnvollen 2 Bits.
Zumindest Windows XP kommt damit problemlos zurecht.
Ob es die VR-Software auch tut? — Ja, problemlos!
Kompletter Ersatz sowohl der Sende- als auch Empfangselektronik,
mit folgenden Eigenschaften:
Das Handgerät (der eigentliche FlyStick) bekommt immer ein und dieselbe
Leiterplatte.
Hier der
Schaltplan, das Layout
oben und
unten sowie die komplette
Eagle-Quelle.
Aufgebaut wird in 3 Bestückungsvarianten. Diese stehen im Schaltplan.
Handgerät
Da sind 5 hübsche M3-Gewindestäbe an der Vorderseite,
die als Antenne geradezu einladen!
Zum Vergleich: Ein geeigneter und viel billigerer Mikrocontroller
ATtiny2313 — gleichfalls von der Firma Atmel — verbraucht maximal 0,1 µA.
Erste Umbaumaßnahme: Höhere Abstrahlungsleistung
Zweite Umbaumaßnahme: Einfaches Ladegerät
Empfangsteil
Neubau
drahtgebunden
drahtlos
(Vorteile des ATmega8: Firmware-Update via USB, mehr Platz im Flash-Speicher
für ZigBee- oder ZigBee-ähnliche Sensornetzwerk-Arbitrierung,
Baken-Aussendung und -Repetierung)
Schaltung Handgerät
Die Anschlussvarianten hierzu sind:
Variante | Ausführung/Anschlüsse | X1 | X2 | X3 | X4 | X5 | X6 | X7 | X8 | X9 | D+ | D– |
---|---|---|---|---|---|---|---|---|---|---|---|---|
A | Mit vorgefundenem USB-Joystick-Konverter (drahtgebunden) | - | - | - | - | - | GND | T1 zum Konv. | T2 zum Konv. | 5 V vom Konv. | - | - |
Am Joystick-Port (15-pol. SubD-Buchse) | - | - | - | - | - | Pin 4 | Pin 2 | Pin 7 | Pin 1 | - | - | |
B | USB-HID-Joystick im Mikrocontroller (drahtgebunden) | - | 5 V von USB | - | - | - | GND | - | - | - | D+ | D– |
C | mit UHF-FM-Transceiver RFM12 (drahtlos) | - | 3-V-Batterie + | - | - | - | Batterie – | - | - | - | - | - |
B+C | Firmware programmieren | RESET | 3..5 V | SCK | MISO | MOSI | GND | - | - | - | - | - |
Die
Schaltung
passt in das gern verwendete Reichelt-Kleingehäuse KS21.
Die Antenne wurde im Stegreif um die Schaltung herum gelegt (nicht berechnet!).
Hier ist das Layout
oben und
unten zu sehen.
Hier habe ich, um Probleme mit dem USB-Bootloader bei hochgezogenem OSCCAL zu umgehen, den 12-MHz-Quarz bestückt.
Welch ein Glück, Variante A braucht keine Firmware, der vorgefundene Mikrocontroller ist bereits fertig programmiert. Für die übrigen Varianten wird Firmware benötigt.
Vorüberlegungen:
Tatsächliche Implementierung: Wegen der spürbaren Latenzzeit und der geringen effektiven Datenrate wurde das Baken-Konzept verworfen, und der FlyStick sendet bei Tastendruck einfach drauflos. Jedem der drei FlySticks und jedem der drei Empfänger wird je eine von 12 Frequenzen im 433-MHz-Band zugewiesen, nichts weiter. Das Acknowledge kommt vom Empfänger unmittelbar danach. Den RFM12 in Betrieb zu nehmen erwies sich als recht kompliziert, da das Datenblatt keine vernünftige Auskunft über das Funktionsprinzip und das how-to-use gibt. Daher kursieren im Netz jede Menge Halbwahrheiten. Ich habe deshalb etwas auf der o.a. Webseite ergänzt.
Vorüberlegungen
Tatsächliche Implementierung: Das Prinzip des Sensornetzwerks (ähnlich ZigBee) wurde verworfen und auf die einfacher handhabbare 1:1-Beziehung gesetzt. Das heißt, 1 FlyStick hat genau 1 zugeordneten Empfänger. Im Anwendungsfall ist das Propagieren von Funk-Ereignissen wegen der geringen zu überbrückenden Entfernungen niemals nötig. Auch werden keine Baken verwendet.
Die Zuordnung erfolgt über eine fest einprogrammierte Wireless ID
{Usage Page: 0x06, Usage ID: 0x22} mit 4 Bit; dies lässt 16 FlySticks zu.
Standardmäßig ist für jede benutzte Wireless ID
ein eigener
Wireless Channel
{Usage Page: 0x06, Usage ID: 0x21}
aus 12 „Kanälen“ im 433-MHz-Band voreingestellt.
Der Kanal ist vom Anwender einstellbar, und mehrere FlySticks mit verschiedener
Wireless ID
dürfen auf dem gleichen Kanal arbeiten.
Nicht implementiert (vergessen) wurde die Rückmeldung von
Battery Strength
{Usage Page: 0x06, Usage ID: 0x20}.
Die Eigenschaften der „Usage Page 6“ können mit dem Programm HidParse betrachtet und ggf. geändert werden.
Die zwei bedrahteten Geräte funktionieren erwartungsgemäß störungsfrei.
Um den Betrieb an übermäßig langen (eigentlich unzulässigen) Anschlussleitungen zu ermöglichen wurde die Doppeldiode durch einen Festspannungsregler LP2950-33 ersetzt sowie die Serienwiderstände in den Datenleitungen auf 22 Ω verkleinert.
Probleme traten auf, als das Kabel aus dem Stecker gerissen wurde. Oder von einem Stuhlbein zerquetscht wurde. Gegen Gewalt gibt's kein probates Mittel … Auch ist das Aufräumen von 5 m Kabel lästig. Nach Jahren ohne Pflege sieht es ziemlich schmuddelig aus.
2018 ist eine der Tasten („Knackfrosch“) des ersten bedrahteten Flysticks ausgefallen. Diese Tasten fallen auch anderswo mal aus. Ersatz wurde umgehend eingelötet, liegt herum.
Bei den drei Funk-FlySticks bin ich bereits bei der Schaltplanerstellung in eine böse Falle getappt: Beim USI des ATtiny44 ist SDO auf MISO und SDI auf MOSI, unabhängig ob SPI-Master oder -Slave. Somit habe ich die falschen Leitungen für die Nutzung von USI angeschlossen, und damit muss das SPI-Protokoll per Software implementiert werden, was so nicht beabsichtigt war.
Die Ruhestromaufnahme liegt bei 0,7 µA. Die zwei R3-Zellen mit angenommenen 500 mAh Kapazität halten somit rechnerisch 70 Jahre; ein Ausschalter erübrigt sich wie geplant. Beim Senden liegt die Stromaufnahme bei 30 mA, in den Sendepausen bei 3 mA (zz. laufen beide Oszillatoren weiter, könnte man noch deutlich reduzieren).
Mitten in der Entwicklungsphase streikte der ATtiny44 vollends. Dies lag schließlich daran, dass der RFM12 ein Reset-Kommando beim Programmieren abbekommen haben muss und daraufhin RES permanent nach LOW zog. Man sollte es also vermeiden, die beiden Reset-Eingänge zu verbinden, wenn man noch genügend Pins frei hat. Schließlich wurden VDI, IRQ und FFIT gar nicht gebraucht.
Nach einigen Jahren (2014) fiel ein FlyStick aus. Ursache waren verformte Kontakte des Batterie-Halters. Also ein mechanisches Problem. Anscheinend öfters heruntergefallen.
Ein weiteres Jahr später gab es eine weitere Retour. In diesem Fall war das USB-Kabel des Funkempfängers kaputt. Warum auch immer dieses so oft bewegt werden muss; hat wieder nichts mit der eigentlichen Funkübertragung zu tun.
2018 war beim zweiten Funk-Flystick der Kanal verstellt. Dass jemand daran herumgespielt hat ist möglich aber unwahrscheinlich.
An manchen PCs funktioniert der Funkempfänger nicht, „USB-Gerät wird nicht erkannt“. Dazu sind zwei 3,9-V-Z-Dioden einzubauen, wie bei V-USB angegeben, jeweils mit der Katode an die Datenleitungen der USB-Buchse, Anode auf Masse.
Bedienungsanleitung
Ein FlyStick ist ein handgehaltenes VR-Eingabegerät mit einer vollständigen Lageerkennung sowie zwei Tasten. Seine Funktionalität entspricht einer Computermaus.
Die an der Vorderseite befindlichen 5 retro-reflektierenden Kugeln dienen in Verbindung mit mindestens 2, typisch 4 Infrarotkameras und einer anspruchsvollen Bildverarbeitung der Lageerkennung sowohl der Linearachsen (X,Y,Z) als auch der Rotationsachsen (A,B,C). Es handelt sich um ein Local Positioning System (LPS). Die Bildverarbeitungseinheit („Data Station“) sendet die ermittelten Positionsdaten über einen TCP-Socket via Ethernet zur VR-Software.
Die beiden Tasten dienen zum Auslösen von bestimmten Ereignissen in der VR-Software. Die obere Taste (Knopf 1) entspicht dabei typischerweise der linken Maustaste (Auswahl oder Eingabe), die untere Taste (Knopf 2) der rechten Maustaste (Kontextmenü). Der FlyStick emuliert dazu einen USB-Joystick mit 2 Feuerknöpfen und null Hebeln. Die Tasten-Eregnisse gelangen als entsprechendes USB-Paket zur VR-Software, wobei Windows diesen Joystick in seiner Liste der System-Gamecontroller einreiht.
Die Funkübertragung der schnurlosen FlySticks erfolgt vollkommen transparent zum USB-Protokoll, d.h. der VR-Software macht es keinen Unterschied, ob sie mit einem drahtgebundenen oder schnurlosen FlyStick kommuniziert.
Das Gerät ist sofort nach dem Herstellen der USB-Verbindung funktionsbereit. Im Windows-Gerätemanager sollte sich ein USB-HID-Gerät sowie ein HID-Gerät eintragen. In der Systemsteuerung unter „Gamecontroller“ können Sie die Funktion der Tasten jederzeit überprüfen.
Die Emulation einer seriellen Anbindung wie beim Vorgängermodell ist nicht vorgesehen, um die Einfachheit der Anwendung des FlySticks nicht zu gefährden. Im Bedarfsfall kann ein entsprechender Protokollumsetzer geschrieben werden, wobei das Programm „com0com“ (= Nullmodem in Software) für die (ansonsten recht komplizierte) Emulation der seriellen Schnittstelle sorgen kann.
Drahtgebundener FlyStick
Die auf der Oberseite befindliche Leuchtdiode ist eine Betriebs- und Funktionsanzeige. Sie leuchtet permanent, solange der FlyStick angesteckt und aktiviert ist. Sie verlischt kurz bei Tastendruck oder dem Loslassen einer Taste.An der Unterseite befindet sich eine kleine 4-polige Steckverbindung mit mäßiger Steckkraft. Dessen Hauptzweck ist es, das Kabel lösen zu können, um das Aufräumen und den Transport zu erleichtern.
Das Anschlusskabel darf nicht mit USB-Verlängerungskabeln verlängert werden! Entsprechende Verlängerungen sind entweder mit USB-Hubs oder Aktiv-Verlängerungen (enthalten einen USB-Hub mit 1 Port) durchzuführen. Entsprechend dem USB-Standard sind von Hub zu Hub und Endgerät (maximal 7) jeweils maximal 5 m Kabel zulässig (insgesamt 35 m). Alles andere verletzt die USB-Spezifikation und funktioniert nur manchmal.
Das Gerät ist wartungsfrei.
Drahtloser Funk-FlyStick
Das Gerät ist zweigeteilt und besteht aus dem FlyStick („Sender“) und einer kleinen Empfängerbox. Die Kommunikation erfolgt im lizenzfreien 433-MHz-Band. Die Reichweite beträgt 50 m in Gebäuden mit 1 Zwischenwand. Empfohlen wird der Betrieb mit minimaler Reichweite, etwa 10 m. Verschiedene FlySticks stören sich nicht gegenseitig, da diese verschiedene Wireless-IDs haben. Zusätzlich arbeiten diese in verschiedenen Frequenzbereichen.Die oben befindliche Zweifarb-Leuchtdiode leuchtet grün bei jedem Tastendruck und Loslassen, wenn die Kommunikation zur Empfängerbox erfolgreich verlief. Sie leuchtet rot, wenn die Kommunikation erfolglos war. Hierfür sind die typischen Ursachen:
- Empfängerbox stromlos (Computer ausgeschaltet, Box nicht angesteckt)
- Funkstrecke zu lang bzw. Senderbatterien schwach
- Sende- und Empfangskanal stimmen nicht überein
- Die Wireless-ID stimmt nicht überein (falsche Empfängerbox)
Das Gerät hat folgende Sonderfunktionen:
- Repetierung des Tastendrucks
Bei langem fortwährenden Tastendruck wird der Tastenzustand im Sekundentakt vom FlyStick wiederholt. Der Empfänger erwartet diese Wiederholungen auch nach jeweils einer reichlichen Sekunde. Fällt die Wiederholung beim Empfänger aus, nimmt dieser den Tastendruck zurück. Dies kann bspw. passieren, wenn die Funk-Reichweite zu groß geworden ist; damit fällt die Joystickbetätigung für die VR-Software in den „sicheren“ Zustand.- Kanalauswahl
Durch langen Tastendruck auf beide Tasten (mehr als 10 Sekunden) geht der FlyStick über in den Kanalauswahl-Modus. Die rote LED leuchtet permanent, und die grüne LED blinkt so oft, wie die gerade eingestellte Kanalnummer, also 1..12 mal. Der Modus wird durch Loslassen der unteren Taste verlassen. Mit jedem erneuten Betätigen der oberen Taste wird der Kanal um 1 Schritt weitergeschaltet. Dies wird durch kurzes Aufleuchten der grünen LED quittiert und der neue Kanal der Empfängerbox mitgeteilt. (Diese sollte sich hierzu unbedingt in der Nähe befinden, da hierbei kein Handshake stattfindet!) Beim Umschalten von Kanal 12 auf Kanal 1 wird dies durch etwas längeres Aufleuchten der grünen LED angezeigt.- Wireless-ID
Die Wireless-ID kann nicht eingestellt werden.Was tun, wenn Sende- und Empfangskanal nicht passen? In Kanalauswahl-Modus gehen und alle 12 Kanäle probieren; die empfangsbereite Empfängerbox sollte dann bei passendem Kanal wieder „einrasten“ und mithören können.
Die Verschlusskappe an der Geräteunterseite kann durch Linksdrehung abgeschraubt werden und gibt den Zugang zum Batteriehalter frei. Der Batteriehalter („Schiffchen“) kann durch leichtes Klopfen aus dem Rohr gezogen werden. Er enthält 2 Primärzellen R3. Der Betrieb mit Akkumulatoren ist nicht empfehlenswert.
Technische Daten
Technische Daten Wert Drahtgebunden Drahtlos-Flystick Empfängerbox Einheit Geräteemulation HID-Joystick, 2 Knöpfe, 0 Hebel - USB-ID PID 16C0 & VID 27D9 & Seriennummer - Speisespannung 5 (USB) 3 (2x R3) 5 (USB) V Ruhestromaufnahme 350 0,7 350 µA Betriebsstromaufnahme 20 25 35 mA Abmessungen (ohne Kabel) 270 × 160 × 80 (über alles) 70 × 50 × 21 mm³ Masse (ohne Kabel) 105 ≈ 150 ≈ 50 g
Bei den V-USB-Projekten ist mir AetherSense aufgefallen. Mit Ultraschall habe ich ja auch schon mal gearbeitet, und dieser erlaubt einfache Entfernungsmessungen in cm-Genauigkeit. Genau das richtige für einen Next-Generation-FlyStick.
Die Positionserkennung erfolgt hierbei durch Aussenden von Ultraschall-Signalen am FlyStick, synchron mit der Aussendung eines Funksignals im lizenzfreien 433-MHz-Band, den Empfang an mindestens 3 Ecken der Projektionswand und der Ortsbestimmung via Laufzeitmessung und Trilateration. Die Wandler am Handgerät sollten möglichst Kugelcharakteristik haben. Zur Schallgeschwindigkeitsbestimmung wird die Lufttemperatur gemessen.
Wie bisher gibt es eine direkte Rückkopplung der Funktion am FlyStick über eine LED, denn die Funkübertragung arbeitet bidirektional. Damit lässt sich auch eine automatische entfernungs- und echoabhängige Wiederholfrequenz realisieren. Das Feedback hat sich in der Praxis als sehr zweckmäßig erwiesen.
Die Lageerkennung erfolgt wie beim Wii-Eingabegerät mit Beschleunigungssensoren, insbesondere die Drehung in der eigenen Achse. Der zweite Ultraschallsender am Ende des Flysticks wird benötigt, um keinen Magnetkompass zu benötigen.
So wie hier vorgestellt hat das System eine Schwachstelle: Wenn man den FlyStick senkrecht hält, kann die Drehung um die eigene Achse nicht mehr detektiert werden. Dazu wäre ein dritter Ultraschallsender erforderlich, dessen erforderliche Lage den Stick recht unhandlich macht (so wie die „Antennen“ des Infrarot-Modells). In der Praxis dürfte diese Einschränkung kein Problem sein.
In Stichpunkten die Eigenschaften und Vorteile des Systems:
Problematisch ist die Reflexion des Ultraschalls an den recht glatten Wänden des VR-Raumes und muss durch genügend großen zeitlichen Abstand zwischen den Sendesignalen gelöst werden. Bei höheren Ansprüchen ist eine Serienkodierung der Ultraschallsignale möglich, um Echos von „neuen“ Signalen zu unterscheiden und die Wiederholfrequenz zu erhöhen. Durch die gleichzeitige Funkausstrahlung ist die Zuordnung kein Problem.
Der VR-Raum sollte frei von reflektierenden Gegenständen sein! Schädlich wäre es, wenn einer der Empfänger nur ein lautes Echo wahrnimmt.
Typische Wiederholfrequenzen (ohne Echo, Signallänge = 0) sind:
1 m | 300 Signale/s |
3 m | 100 Signale/s |
10 m | 30 Signale/s |
30 m | 10 Signale/s |
Typische VR-Anwendungen dürften sich im Bereich 3..10 m befinden.
Alles in allem haben wir es mit einem Local Positioning System (LPS) zu tun.
Mögliche Nachteile und Probleme:
Immerhin würde eine solche Brille wesentlich eleganter aussehen
als das „gehörnte“ Exemplar mit den retro-reflektierenden Kugeln,
was bei Fachvorträgen durchaus eine Rolle spielt.
Auch kann man einfach zwischen mehreren solchen Brillen umschalten,
d.h. der Kontrolleur kann eine bestimmte Brille aus mehreren aktivieren.
(Bei VR ist es üblich, dass nur einer die „aktive“ Brille bekommt.
Alle anderen Teilnehmer sehen das 3D-Bild mehr oder weniger fehlerhaft.)