Service-Kabel z.B. für Wago-Controller sehr günstig „selbst gemacht“

In einem meiner letzten Beiträge schrieb ich noch darüber, wie das Kommunikations-Kabel von Wago (ein USB-Kabel mit proprietärem Stecker für die Service-Schnittstelle auf diversen Controllern) unter Virtualbox genutzt werden kann und auch, dass es sich eigentlich nur um einen USB-zu-TTL-Adapter handelt.

Patrik stellte per Kommentar die Frage, ob man dann nicht auch statt des teuren Kabels einen normalen USB-zu-TTL-Adapter nutzen kann. Natürlich kann man.

Wer also statt des etwa 50€ teuren Kabels, das dann an 364 Tagen im Jahr irgendwo in einer Kiste verstaubt, lieber einen kleinen USB-Adapter für 2€ nutzen möchte, kann das problemlos tun.

USB-zu-TTL-Converter FTDI FTD1232 am Service-Port einer Wago 750-841
Einfacher USB-zu-TTL-Converter an einer Wago 750-841

Ich habe hier einen FTDI-Adapter für 2,20€ aus China, der per Mini-USB (da musste ich erstmal nach einem Kabel suchen, alles Micro-USB inzwischen) an den Computer angeschlossen wird. Er wird erkannt als:

ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC

Benötigt werden die Pins VCC, GND, TX und RX. Die Belegung am Wago-Controller ist von oben nach unten:

  • TxD
  • RxD
  • +5V
  • GND
Pinout der Wago-Service-Schnittstelle
Pinout der Wago-Service-Schnittstelle

TxD und RxD werden logischerweise mit TX und RX verbunden, jedoch üblicherweise gekreuzt (was natürlich darauf ankommt, ob der genutzte Adapter auf der „Pin-Seite“ noch 1:1 belegt ist), VCC wird mit +5V verbunden, GND mit GND.

Pinout des FTDI USB-zu-TTL-Adapters
Pinout des FTDI USB-zu-TTL-Adapters

Das wars, mehr ist nicht zu tun. Das Kabel wird unter Windows beispielsweise in den Wago Ethernet Settings erkannt und kann zur Kommunikation genutzt werden.

Das Low-Cost Kabel wird in den Ethernet Settings erkannt und kann zur Kommunikation genutzt werden
Der USB-zu-TTL-Adapter in den Ethernet Settings

Selbst gemacht steht übrigens aus dem Grund in Anführungszeichen, weil man ja hier nicht wirklich etwas selbst macht, außer einen FTDI-Adapter zu kaufen und anzuschließen.

WAGO USB Service Cable unter Linux in einer Virtualbox benutzen

Um mit SPS-Komponenten zu kommunizieren gibt es verschiedene Wege und fast alle führen zum Ziel. Bei bestimmten Einstellungsarbeiten oder Firmware-Updates ist es aber sinnvoll, die meistens vorhandene Service-Schnittstelle der Controller zu nutzen.

Jeder Hersteller bietet Service-Kabel an, die zu den eigenen Schnittstellen passen, die Kabel sind natürlich immer unterschiedlich.
Auch WAGO bietet ein „WAGO USB Service Cable“ an. Für Windows gibt es einen speziellen Treiber für dieses Kabel, für Linux nicht. Ich bin mir ziemlich sicher, dass dieser Artikel auch auf Siemens S7 und LOGO, sowie auf die meisten anderen SPS-Hersteller anwendbar ist, davon habe ich allerdings keine Altgeräte zum Basteln da.

Ich bin mir sicher, außer mir gibt es noch viele andere SPS-Menschen, die Zuhause Linux nutzen und zum Herumprobieren eine Virtuelle Maschine mit Windows laufen haben, in der die Entwicklungsumgebung läuft. Das Kommunikationskabel läuft allerdings in z.B. Virtualbox nicht ohne nachzuhelfen, wobei es sich wirklich um eine Kleinigkeit handelt.
Denn: Auch wenn jeder Hersteller ziemlich teure Kommunikationskabel in verschiedenen Ausführungen anbietet, eines haben sie gemeinsam: Es sind ziemlich stinknormale USB (oder RS232) auf TTL Konverter, die unter Debian als ttyUSB erkannt werden. Es muss lediglich der Virtualbox-Benutzer in die Gruppe dialout aufgenommen werden, damit er es benutzen darf:

usermod -aG dialout BENUTZERNAME

In der Virtualbox erscheint es bei installiertem Windows-Treiber dann ganz normal in der USB-Geräte-Auswahl:

WAGO USB Service Cable in den USB-Geräten von Virtualbox
WAGO USB Service Cable in den USB-Geräten von Virtualbox

Aktiviert man es dort, kann man es beispielsweise in den WAGO Ethernet Settings als Kommunikationsschnittstelle nutzen:

Virtualbox: WAGO USB Service Cable in den Ethernet Settings
Virtualbox: WAGO USB Service Cable in den Ethernet Settings

Distributionsunabhängige Hardware mit Windows-Exklusiven Updates

Update: Der ASRock-Support hat sich zu dem Thema geäußert. Siehe unten.

Um in meinen PC einen Prozessor einer neueren Generation (Ivy Bridge) einbauen zu können, brauchte das etwas angestaubte BIOS ein Update.

Es ist jetzt auch nicht das erste Mal, dass ich so etwas mache, normalerweise gibt es ein ROM zum Download beim Hersteller des Mainboards, manchmal auch deutlich komfortablere Lösungen, die direkt im BIOS vom USB-Stick geflasht werden können. Alles kein Problem.

Anders bei meinem Mainboard. ASRock (H67M-GE/HT) stellt nämlich ausschließlich ein Update-Tool für Windows bereit, die ausführbare Datei ist dabei gleichzeitig Tool und ROM und muss aus einem nativ laufenden Windows ausgeführt werden. Einen Teil der Daten tauscht die Software bei laufendem System aus, bootet dann ins BIOS und flasht den Chip dann vollständig. Eigentlich auch sehr komfortabel. Aber eben nur für Windows. Der Hersteller bietet keinerlei Möglichkeit an, das BIOS über einen DOS-Stick oder über das automatische Update, das auch in diesem BIOS schon vorhanden ist zu flashen.

Da steht man also mit einem Rechner, auf dem nur verschiedene Linuxe laufen und versucht ein völlig distributionsunabhängiges Stück Hardware zu aktualisieren, für das es der Hersteller offensichtlich nicht für nötig erachtet, einen einigermaßen distributionsunabhängigen Update-Weg zur Verfügung zu stellen.

Ich habe letztendlich auf einer bis dato leeren Partition Windows 8 als Evaluationsversion installiert, das BIOS geflasht und die Partition wieder geplättet. Wohl dem, der einen USB-Stick mit einer guten Geschwindigkeit an seinen PC stecken kann.

Update:

Der Support hat sich gemeldet und erklärt, wieso es nur das Windows-Tool gibt, nicht aber die Dateien zum Flashen oder InstantFlash-Datei. Es gab 2011 eine Rückrufaktion von Intel, der Verbaute Chipsatz hatte wohl Probleme mit dem SATA-Controller und es wurden keine Ivy-CPUs unterstützt.
Damit sichergestellt ist, dass das Update des BIOS nicht zu diesen Problemen führt, wurde nur dieses Tool veröffentlicht, das erst prüft, ob ein Update möglich ist und dieses erst dann ausführt. Und das Tool gibt es eben in diesem Fall nur für Windows.

Der Support prüft aber offensichtlich bereitwillig, ob das jeweilige Board davon betroffen ist und sendet die InstantFlash-Datei zu, wenn alles okay ist.

Debian – Windows 10 in VirtualBox: Gasterweiterungen für bessere Integration installieren

Vor ein paar Tagen schrieb ich schon davon, wie Windows 7 in einer VirtualBox-VM unfallfrei auf das kürzlich erschienene Windows 10 aktualisiert werden kann, heute geht es darum, dieses Windows 10 möglichst Anwenderfreundlich nutzbar zu machen.

Denn wer eine laufende Windows 10 Instanz unter der VirtualBox-Version 4.3.x hat, wird feststellen, dass sich die Größe der virtuellen Maschine nicht an die Größe des VirtualBox-Fensters anpassen lässt, gemeinsame Ordner nicht verfügbar sind (also quasi mit dem Host geteilte Netzlaufwerke) und es auch sonst mit der Host-Integration nicht besonders weit her ist.

Das liegt daran, dass Windows 10 in der VirtualBox-Version 4.3.x noch nicht wirklich unterstützt wird und es auch keine funktionierenden Gasterweiterungen für Windows 10 gibt (die Gasterweiterungen stellen eine Art Treiberpaket für die Integration des Gastsystems in das Hostsystem dar).

Abhilfe schafft hier die Deinstallation der bisherigen VirtualBox-Software (Achtung: Nur deinstallieren, nicht vollständig entfernen, wir brauchen ja die Konfigurationen noch!) und die anschließende Installation von VirtualBox 5.0 aus den offiziellen Oracle-Quellen. Falls diese Quellen noch nicht Teil der Paketquellen des Rechners sind, sollten sie hinzugefügt werden:

deb http://download.virtualbox.org/virtualbox/debian jessie contrib

Der öffentliche Schlüssel für dieses Repository kann wie folgt installiert werden:

wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -
VirtualBox 5.0 unterstützt Windows 10 offiziell
VirtualBox 5.0 unterstützt Windows 10 offiziell

Das neue VirtualBox-Paket unterstützt dann auch Windows 10 32bit und 64bit (kann in den Einstellungen der virtuellen Maschine geändert werden) und stellt die passenden und aktuellen Gasterweiterungen in der Windows-Maschine dann als virtuelles CD-Laufwerk zur Installation bereit.

VirtualBox 5.0: Gasterweiterungen und geteilte Ordner mit Windows 10
VirtualBox 5.0: Gasterweiterungen und geteilte Ordner mit Windows 10

Nach der Installation der Treiber können die gemeinsamen Ordner wieder verwendet werden, auch das Anpassen der Fenstergröße und die saumlose Mauszeigerintegration funktionieren einwandfrei.

(Ja, ich weiß, meine Platten sind bald voll…)

Windows 7 auf Windows 10 upgraden in einer VirtualBox VM

Dass Windows 10 erschienen ist, wird inzwischen wohl jede/r mitbekommen haben. Dass das Upgrade auf Windows 10 von einem Rechner mit aktivierten Windows 7 in fast allen Fällen kostenlos ist vermutlich auch.

Es gibt aber sicherlich auch viele, die Windows 7 bisher als virtuelle Maschine in einer Software wie VirtualBox verwendeten. Mich zum Beispiel.
Da das nicht immer klappt und eventuell ein paar Tricks notwendig sind, kommt jetzt hier eine kleine Hilfestellung.

  • Zuerst sollte sichergestellt sein, dass Windows 7 ordentlich und fehlerfrei läuft. Danach sollten alle anliegenden Updates eingepflegt werden, im Update-Center kann auch manuell nach neuen Updates gesucht werden.
  • Ist dies geschehen, möchte man eventuell nicht die tatsächliche VM upgraden, sondern einen Klon. Diesen kann man leicht anlegen, wenn die virtuelle Maschine ausgeschaltet ist. Das ganze hat allerdings den Nachteil, dass die Produktaktivierung eventuell nicht mehr gültig ist. Die Reaktivierung kann einfach über das Programm „Windows aktivieren“ (ist Teil des Systems) durchgeführt werden und sollte problemlos funktionieren.
  • Nun muss Windows erneut ausgeschaltet werden. In den Einstellungen von VirtualBox muss nun die Windows-Version in Windows 8.1 64bit geändert werden. Danach kann Windows wieder gestartet werden. Hier sollte erneut die korrekte Aktivierung von Windows geprüft werden.

Eigentlich sollte nun in der Symbolleiste das Windows 10 Logo erscheinen. Wenn das nicht der Fall ist, kann einfach das MediaCreationToolx64 heruntergeladen und ausgeführt werden. Dieses Tool wird von verschiedenen Seiten angeboten, z.B. Chip.de.
Dieses Tool lädt Windows 10 herunter, was je nach Anbindung eine Weile dauern kann (auch weil eine virtuelle Maschine ja oft nicht besonders schnell ist).

Windows 7: Download des Upgrade auf Windows 10
Windows 7: Download des Upgrade auf Windows 10

Nachdem dann das Upgrade heruntergeladen ist, prüft das Tool, ob die Hardware überhaupt geeignet ist. Wer vorher nicht die virtuelle Maschine auf Windows 8.1 umgestellt hat, wird hier abbrechen und von Vorne beginnen müssen.
Auch wird erst hier geprüft, ob die aktuelle Windows-Version gültig lizensiert ist. Wer also vergaß, dies im Vorfeld zu erledigen, wird nun eventuell das Upgrade nach dem zweiten kompletten Download erneut abbrechen müssen.

Wenn das Tool nichts mehr auszusetzen hat, wird es ein paar Fragen stellen und dann Dinge tun:

Das Upgradetool von Windows 10 bereitet Dinge vor
Das Upgradetool von Windows 10 bereitet Dinge vor

Ist dies geschehen werden erneut ein paar Fragen gestellt, bevor die Installation dann tatsächlich startet. Dieser Vorgang kann nun sehr lange dauern:

Installation von Windows 10 beginnt
Installation von Windows 10 beginnt

Danach läuft Windows 10 jedoch auch auf einer VirtualBox.

Windows 10 fertig installiert in der VirtualBox
Windows 10 fertig installiert in der VirtualBox