Hi Linuxer,
für meinen brother Drucker-Scanner wird ein Firmwareupdate angeboten, allerdings nur unter Windows.
Ich habe schon viele Firmwareupdates gesehen, die aber alle nur unter Windows laufen.
Gibt es denn überhaupt Firmwareupdates, die unter Linux funktionieren oder braucht man dazu grundsätzlich den Segen vom großen Bill?
Besten Gruß
Hans
Hallo Hans,
ich vermute mal, dass dein Drucker-Scanner unter Linux läuft?
Was soll diese (ggfs. neue) Firmware denn leisten?
Ich habe ein solches Gerät unter Linux in Benutzung. Der Scanner wird softwareseitig von Xsane unterstützt, der Drucker von CUPS.
Es grüßt
Thomas
Manchmal werden Firmwares garnicht auf das Gerät gespielt, sondern liegen auf dem Rechner herum und
werden zusammen mit dem Treiber geladen. Das ist u.A. bei vielen USB-Peripherie-Geräten (TV-Sticks,
Soundkarten) der Fall. Vielleicht handelt es sich ja bei dem Drucker auch nur um eine Firmware, die per
Datei irgendwo auf dem Rechner liegt. Dann müsste man das Firmware-Update für Windows nur
extrahieren und die entsprechende Datei auf dem Rechner ersetzen.
Firmware-Dateien von einzelnen Geräten sind teilweise Bestandteil der Distributionen und tragen die Endung .fw und/oder das Wort firmware im Dateinamen. Sie liegen manchmal auch in einem speziellen Firmware-Verzeichnis, z.B. /usr/lib/firmware oder /etc/firmware. Das hängt von der Distribution und vom entsprechenden Treiber ab.
Um das Windows-Update zu entpacken, muß setup.exe -e (kann man mit WINE machen) oder eine .cab-Datei mit cabextract entpackt werden.
Hi GoaSkin,
danke für die interessanten Infos. Wußte nicht, dass die firmware nicht grundsätzlich aufs Gerät gespielt wird, sondern auch “irgendwo rumliegen” kann. Damit ist man dann ja auf die Aktualität der jeweiligen Distribution (bei mir OpenSuse) angewiesen.
Wenn ich das alles richtig verstanden habe, brauchen wir Linuxer diese Firmwareupdates unter Windows dann grundsätzlich nicht, weil notwendige updates in einem neuen Kernel enthalten sein werden.
Vielen Dank
Hans
Ob Firmware-Updates in neuen Kernel-Modulen erhalten sind, hängt davon ab, wie gut sich jemand um diese Module kümmert und wie die Firmenpolitik des Herstellers aussieht. Ein neuer Kernel bedeutet nicht automatisch, daß an jedem Treiber eine Veränderung in der Funktionsweise stattfindet. Oftmals beschränken sich Aktualisierung darauf (sofern notwendig), daß der Treiber überhaupt mit dem neuen Kernel läuft. Firmware-Dateien gibt ein Hersteller entweder grundsätzlich frei, dann können sie auch unter alternativen Betriebssystemen immer aktuell gehalten werden, aber manchmal auch einmalig (Hersteller konnte einmal dazu überredet werden, einem Linux-Projekt die Firmware herauszugeben, möchte aber keine regelmäßige Kommunikation mit den Entwicklern) oder garnicht (dann gibt es Kernel-Module mit einem README, die dem User erklären, wie er sich die Firmware besorgen kann). Zu dem sind Firmware-Dateien oftmals nicht Bestandteil des Kernel selbst, sondern eines separaten Paketes (bei den meisten Distributionen liegen reine Firmware-RPMs bzw. DEB-Pakete bei, die zwar dazu bestimmt sind, daß ein Kernel-Modul läuft aber nicht Bestandteil des Kernels selbst sind) – aufgrund von Inkompatibilität der Lizenzen.
Zur Funktion: Viele Geräte verfügen nicht mehr über Controller, die durch ihre elektronische Beschaffenheit eingehende Signale nach bautechnisch bedingten Algorithmen verarbeiten sondern haben ihre eigene kleine CPU mit rudimentärem Betriebssystem, sodaß letzendlich der Rechner mit einem Kleinstrechner über eine Schnittstelle kommuniziert, dessen Aufgabe es ist, seine Bauteile zu betreiben (z.B. die Motoren und Düsen im Drucker). Diese Kleinstrechner muß man sich aber in der Regel rudimentärer als einen C64 vorstellen und verfügen meist über keine Möglichkeit zur Datenspeicherung. Die Firmware ist nichts weiter als deren Betriebssystem. Das Host-System (der eigentliche Rechner) sendet die Firmware über die Schnittstelle und teilt dem Peripherie-Gerät mit boote das mal. Nachdem das Gerät die Firmware gebootet hat, läuft auf dem USB-Port des Gerätes eine Art Server, mit dem per USB kommuniziert werden kann.
Je schlechter ein Gerät gebaut ist, desto mehr Aspekte werden über die Software gesteuert. Bei den ganz billigen Scannern ist sogar die Firmware dafür verantwortlich, zu verhindern, daß der Motor den Scanner versuchen kann, über den Gehäuserand hinauszubewegen (musste dazu bei einem Scanner vor Jahren schon einmal die Firmware updaten, weil dies sonst u.U. möglich war).
Hallo GoaSkin,
das ist ja nun wirklich eine sehr umfassende Information zu diesem Thema. Damit habe ich jetzt eine konkrete Vorstellung, wie das alles funktioniert und zusammenhängt.
Herzlichen Dank für dieses kleine Firmware-Seminar.
Hans
Hallo Thomas,
richtig, läuft wie bei dir unter Linux (OpenSuse 11.0).
Firmwareupdates gibt es normalerweise um technische Fehler zu beseitigen oder die Leistungsfähigkeit eines Gerätes anzupassen bzw. zu verbessern. Wird ja wohl auch nicht spasshalber vom Hersteller nachgeschoben. Allerdings schreibt brother nicht, was das update beinhaltet.
Besten Gruß
Hans