Duet Web Control

From RepRap
Revision as of 18:29, 12 March 2016 by PRZ (talk | contribs) (First start: ref to DHCP)
Jump to: navigation, search

The web interface

While Duet board could be handled with a command program on your PC communicating by USB with the board as traditional in 3D printing, a web server (Duet Web Control – DWC) exist on the Duet, is the choice of most users and a major asset of the RepRap firmware. A capable server integrated in the main printer board is now (March 2016) without equivalent [1]. Connecting via Ethernet allow communication with the web server to drive the printer. Installing an Ethernet Wi-Fi bridge will allow connection with any Wi-Fi enabled device. All printing is done after uploading G-code file on the board SD card, which benefits from the fast Ethernet communication of the Duet (up to 350~400 kb/sec with a good SD card).

Principle of operation

This web server, operated by program files located on the SD card, is somewhat independent from the firmware stored on the board flash memory. First, the web server shall connect to the firmware, which is automatic while opening the web server, and could be forced with the button "Connect" if communication is lost (which occurs regularly). The server send commands to the board firmware and get information from answers to a small set of commands ( M408, M105, M20, M36) according to a specific protocol. The browser window layout adjustment is mainly automatic, based upon the printer configuration as reported by firmware.

How does it looks

Main tab is : "Machine control" tab. Note that if the calibration button is not available, you will restore it with a "Zoom out" of the window.

Machine Control tab

While you could upload files to print in the "G-codes Files" tab, it is often wise for up-to-date files to use the first line button "upload and print".

Print Status tab opens automatically while the printing starts.

Print Status tab

There is three time estimates, based upon filament use, file progress and layer progress, with not very accurate values.

To send G-code or check calibration result, you will use the G-code console tab

G-code Console tab

View all user commands and the result of some server sent command (notably calibration)

To upload or execute G-code file, the G-code Files tab:

G-code Files tab

Files could be organised in directories

To configure the web server, the 'Settings' tab:

Settings tab

Modify configuration or upload system files


First start

If Netbios names are recognized on your network (most network do), you can simply connect to the web server using the printer name as defined in the 'config.g' file. e.g. http://lily. Name is not case sensitive. Note that in the config.g file the first letter ‘P’ indicates a parameter and is not part of the name.

Alternatively, you can connect to your printer with its IP address, e.g. http://192.168.1.14 . In that case, it is more practical to define a static IP address (and IP mask) in config.g file instead of relying on address attributed by DHCP server.

Note that you could open multiple sessions of the web server and could operate from multiple machines.

Many printer can coexist in the same network, provided you define a specific MAC address for each printer.

Languages

Default language is English, but other languages are available (in Settings tab): German, French, Spanish, Swedish and Chinese. New translation could be added while modifying the '/www/language.xml' file.

Configuration

In the "settings" tab, you could modify some parameters, but these modifications are not permanent and you shall modify the file "/www/js/model.js" to have permanent modifications. This file replace the former "interface.js" file which was splitted in "model.js" (configuration) and "viewmodel.js" (execution) from DWC version 1.08. Updating this file is done like updating the config.g file

Note that the web server use a password, which shall be the same as the one defined in the config.g (default password: RepRap). A modified password is needed if your network is connected to wifi.

Author

Christian Hammacher (Chrishamm) write and maintain the present web server on GitHub. It also maintain own fork of the RepRap firmware, as the web server improvement may need new firmware functions or modifications. DC42 firmware fork have frequent exchanges with the Chrishamm fork and they are very similar. Chrishamm also added useful functions on the RepRap firmware, notably recently the capability to do firmware update from the web interface.

References

  1. There is a web server on the Smoothieboard, but with limited capabilities. The low speed of the Smoothie Ethernet link will also limit usability.