LinuxCNC Documentation

SYNOPSIS

loadrt setsserial cmd="command parameter/device value/filename"

NOTE: This rather clunky utility is no longer needed except for flashing new smart-serial remote firmware. Smart-serial remote parameters can now be set in the HAL file in the normal way.

FUNKTIONEN

Keine

PINS

Keine

VERWENDUNG

loadrt setsserial cmd="set hm2_8i20.001f.nvmaxcurrent 750"

Die verfügbaren Befehle sind set und flash.

Dieses Dienstprogramm sollte unter halcmd verwendet werden, ohne dass LinuxCNC läuft oder irgendwelche Echtzeit-Threads laufen.

Eine typische Befehlssequenz wäre die folgende:

halrun
loadrt hostmot2 use_serial_numbers=1 loadrt hm2_pci config="firmware=hm2/5i23/svss8_8.bit"
show param
loadrt setsserial cmd="set hm2_8i20.001f.nvmaxcurrent 750"
exit

In diesem Beispiel wird die Option verwendet, die HAL-Pins und Parameter mit der Seriennummer der Fernbedienung zu kennzeichnen. Dies ist nicht notwendig, kann aber die Verwechslungsgefahr verringern. (Die Seriennummer befindet sich normalerweise auf einem Aufkleber auf dem Gerät.)

Die nächste Zeile lädt den hm2_pci-Treiber auf die übliche Weise. Der hm2_7i43-Treiber sollte genauso gut funktionieren, wie jeder zukünftige 7i80-Treiber. Wenn die Karte bereits konfiguriert und eine Firmware geladen wurde, kann der Konfigurationsstring weggelassen werden.

"show param" ist optional, liefert aber eine praktische Liste aller Geräte und Parameter. Es zeigt auch die aktuellen Werte der Parameter an, was für die Bestimmung der Skalierung nützlich sein kann. u32-Pin-Werte werden immer in Hex angezeigt, aber neue Werte können in Dezimal- oder Hexadezimalwerten eingegeben werden. Verwenden Sie das Format Ox123ABC, um einen Hex-Wert einzugeben.

Die nächste Zeile ruft setsserial auf. Dies wird auf eine etwas merkwürdige Weise ausgeführt, um auf Kernel-Ebene Zugriff auf eine Live-Hostmot2-Konfiguration zu haben. Es handelt sich im Grunde um ein HAL-Modul, das immer nicht geladen werden kann. Dies kann dazu führen, dass Fehlermeldungen an der halcmd-Eingabeaufforderung ausgegeben werden. Diese können oft ignoriert werden. Alle echten Rückmelngen erfolgen über den Befehl dmesg. Es wird empfohlen, ein zweites Terminalfenster zu öffnen, um dmesg nach jedem Befehl auszuführen.

Beim Beenden des Programms wird normalerweise eine weitere Fehlermeldung angezeigt, die sich darauf bezieht, dass der Treiber setsserial nicht entladen konnte. Dies kann ignoriert werden.

Die Parameteränderungen werden erst nach einem erneuten Laden der Treiber angezeigt.

Flashing Firmware To flash new firmware to an FPGA card such as the 5i25 or 5i20 the "mesaflash" utility should be used. Setsserial is only useful for changing/updating the firmware on smart-serial remote such as the 8i20. The firmware should be placed somewhere in the /lib/firmware/hm2 tree, where the Linux firmware loading macros can find it.

Die Flashing-Routine arbeitet in einem Echtzeit-Thread und kann nur über das Kernel-Protokoll (dmesg) Aufforderungen an den Benutzer senden. Am bequemsten ist es, zwei Terminalfenster zu öffnen, eines für die Befehlseingabe und eines zur Überwachung des Fortschritts.

Geben Sie im ersten Terminal ein

`tail -f /var/log/kern.log`

Dieses Terminal zeigt nun Statusinformationen an.

Das zweite Fenster wird zur Eingabe der Befehle verwendet. Es ist wichtig, dass LinuxCNC und/oder HAL nicht bereits geladen sind, wenn der Prozess gestartet wird. Um neue Firmware zu flashen, ist es notwendig, einen Jumper auf dem smart-seriellen Fernantrieb zu bewegen und die smart-serielle Kommunikation auf eine langsamere Baudrate umzuschalten.

Eine typische Befehlssequenz wäre dann

halrun
loadrt hostmot2 sserial_baudrate=115200 loadrt hm2_pci config="firmware=hm2/5i23/svss8_8.bit"
loadrt setsserial cmd="flash hm2_5i23.0.8i20.0.1 hm2/8i20/8i20T.BIN"
exit

In einem System, das die Karten 5i25 oder 6i25 verwendet, ist es nicht notwendig (und auch nicht sinnvoll), einen Konfigurationsstring anzugeben.

Beachten Sie, dass es notwendig ist, halrun zu beenden und die Echtzeitumgebung zu entladen, bevor Sie die nächste Karte flashen (exit)

Der korrekte Name des zu verwendenden seriellen Kanals ist in der dmesg-Ausgabe im Feedback-Terminal nach dem Schritt loadrt hm2_pci der Sequenz zu sehen.

LIZENZ

GPL