The PanelDue is a full-colour touch-sensitive graphical control panel for 3D printers. Although primarily intended for use with Duet electronics, it also works with other 3D printer electronics that supports a true serial port and includes the required support in the firmware, for example RADDS. Support for PanelDue is present in RepRapFirmware and is in the process of being added to Repetier and Smoothieware.
These images shows the PanelDue controller paired with a 7 inch display.
How to get one
- You can buy the controller board from us at Escher3D with or without a cable, and add your own display panel
- You can buy a complete kit (controller, cable and display) from duet3d.com (UK).
- You can buy the controller board with or without cable and display from Filastruder (USA).
|Supported displays||4.3 inch, 5 inch and 7 inch TFT displays with resistive touch panel, SSD1963 controller, and 2×20 2.54mm pitch connector (see below).|
|Power requirement||5V power from host 3D printer|
|Supply current||Board only: 35mA
With typical 4.3 inch display: 280mA
With typical 7 inch display: 650mA
|Interface||2-wire async serial interface with 3.3V signal level (5V tolerant input). An external pullup resistor can be added to improve noise margin when driving 5V printer electronics. Connections to the SD card socket that is included on most compatible displays is available via a 10-way ribbon cable connector on version 2.0 PanelDue boards, and via 5 PCB pads on version 1.1 boards.|
|Processor||Version 3 has on-board ATSAM4S4B ARM Cortex M4 processor with 256kb flash memory and 64kb RAM. Version 2 and earlier have ATSAM3S2B or ATSAM3S4B processor.|
|Options||10-pin ribbon cable connector for making connections to the SD card holder on the back of the display. Pads provided for 3 uncommitted inputs/outputs and ground from the on-board processor.|
There are four or five components to a PanelDue setup:
- TFT screen with touch panel. See section “Obtaining a compatible display”.
- The PanelDue controller board. This sits on the back of the display. Its main components are a 32-bit ARM-core processor, a 40-pin connector for the display, a piezo sounder, a voltage regulator, a micro USB socket for programming it, and a 4-pin connector for power and communication with your 3D printer controller board.
- A 4-wire cable to connect the PanelDue to your controller board (or 3-wire cable if you use a separate power supply to power the PanelDue).
- An enclosure. You will typically print this yourself on your 3D printer. You can find some printable designs here. Some PanelDue users have done their own designs, such as this one and this one. Before printing an enclosure, check that the design is for the version of the PanelDue controller that you have (1.0, 1.1 or 2.0) and for the correct display size.
- You may need a separate power supply for the PanelDue, depending on whether your printer electronics can supply enough current on the +5V supply line for the TFT screen without overheating. If you will be connecting the PanelDue to a Duet 0.6, Duet 0.8.5 or Duet WiFi electronics board with the on-board switching regulator enabled (as in the Ormerod 1 and Fisher kits from RepRapPro and the Mini Kossel R3 kit from Think3DPrint3D), then you do not need a separate power supply. Ormerod 2, Huxley Duo and Mendel 3 owners should read the important note later in these instructions.
To update the firmware on the PanelDue, you will need a USB cable with a micro USB-B plug at the device end and a standard USB-A plug for your PC at the other. If your 3D printer uses Duet electronics, you can use the same cable that you use for connecting the Duet to your PC.
Obtaining a compatible display
Skip this section if you purchased a complete kit including display.
The key features of compatible TFT displays are:
- 480×272 (4.3-inch displays) or 800×480 pixels (5- and 7-inch displays)
- SSD1963 controller chip
- Resistive touch panel controlled by a XPT2046 or compatible chip
- 40-pin 2-row 2.54mm pitch header for making the connections.
To find suppliers of these displays on eBay, search for ‘4.3″ SSD1963’, ‘5″ SSD1963’ or ‘7″ SSD1963’ depending on which size panel you want. Then look for search results that include the resistive touch panel and show a picture of the back of the board with the correct 2×20 connector (see image). Most suppliers are in China and Hong Kong, however there are suppliers in Germany (eckstein_komponente) and the USA (nyplatform). Please note, we do not endorse any of these suppliers.
1. If you will be using the 7 inch display with a PanelDue version 1.0 controller board then you need to add a wire to the back of the PanelDue board in order to supply power to the separate backlight power pin. See the image on the right for where to connect it (click on it to enlarge). The version 1.1, 2.0 and 3.0 controllers include this connection already.
2. If the kit you purchased did not include a ready-made 4-way cable, make up the cable using the crimp pins and shells provided. Be sure to label or colour-code the wires. To connect a PanelDue to Duet electronics, see the photo on the right for the 4-way Molex pin connections at the PanelDue end, and the photo later on for the 8-way PCB header pin connections at the Duet end. Leave out the red (+5V) wire if you intend to power the PanelDue from the USB port. For other printer electronics, connect the Din pin on PanelDue to the Tx pin of the auxiliary serial port of your printer electronics, and the Dout pin to the Rx pin of the auxiliary port. Also connect the grounds of the PanelDue and the printer together. If your printer electronics includes a 5V switching regulator then you should be able to power the PanelDue’s 5V pin from it; otherwise we recommend that you provide power via the USB port.
3. Connect the 4-wire cable to the PanelDue controller board (you may not be able to get at it after you have secured the controller to the enclosure) – see photo above. If you bought a complete kit from Think3DPrint3D, the cable supplied may have a blue wire in place of the white one shown here.
4. Very important! Set the 3.3V/5V jumper to 3.3V (this is the voltage supplied to pin 2 of the 40-way connector). The 5V setting is only used with 4.3″ and 5″ displays from Itead. All other displays expect 3.3V and you are likely to damage them if you supply them with 5V. The version 3.0 board does not have a jumper, it is set to 3.3V and can only be changed to 5V by cutting a trace and adding a wire.
5. Fit the display to the enclosure using four of the 2.9mm x 6.5mm self-tapping screws supplied with the PanelDue controller board. Make sure you fit it the right way round, so that there is room in the enclosure for the PanelDue too (next to the display or below it, depending on the model of display). Hint: while doing up the screws, press the screw in firmly with the screwdriver – this will reduce the risk of the mounting pillar delaminating.
6. Plug the PanelDue on to the pins at the back of the display. Make sure it is the right way round, and mated centrally! For all PanelDue board versions, the 4-pin and USB connectors should be at the edge of the board that is to the side of the display, not underneath the display. For the version 1.0 and 1.1 boards, only a small part of the control board overlaps the display. The version 2.0 board is wider, and most of it overlaps the display. The version 3.0 board is similar to the version 2.0 board but overlaps the display a little less.
The top image on the right shows a version 1.1 board mounted on the back of a 4.3 inch display, and the lower image shows a version 2.0 board mounted on the back of a 5 inch display.
7. If you have a version 1.0 or 1.1 board, use the remaining two 2.9mm x 6.5mm self-tapping screws to secure the PanelDue to the enclosure. The version 2.0 and 3.0 boards use a single mounting hole and self tapping screw.
Testing the board and updating the firmware
The PanelDue controller is supplied as standard with firmware for driving a 4.3 inch 480 x 272 pixel display. If you use a different display, then you will need to re-program the board with firmware for that display. There may be more recent firmware available even if you are using the recommended display.
Firmware updates are done via the USB interface and the bossac program, as follows:
- Download and install bossa 1.8 from http://www.shumatech.com/web/products/bossa. Versions of bossa or bossac earlier than 1.8 will not be able to program the version 3.0 PaneDue board. Note: it appears that the GUI version (Bossa) doesn’t work on PCs and laptops with high-resolution displays, however you can still use bossac, the command line version.
- Locate and download PanelDue firmware for your display from https://github.com/dc42/PanelDueFirmware/releases. Choose firmware with 4.3 in the file name if using a 4.3 inch display, or 5.0 if using a 5 inch display, or 7.0 if using the 7 inch display (do not use the 7.0E version) Choose firmware with -v3- in the name if you have a version 3.0 PanelDue controller board, or with -v2- in the name if you have an earlier version.
- Check that the free end of the 4-wire interface cable cannot short against anything.
- Use a suitable cable to connect the micro USB connector on the PanelDue controller to a USB port on your PC. Caution! With version 1.0 and 1.1 PanelDue boards, take care not to exert too much sideways or up/down force on the USB connector, or you may pull the USB connector off the board. If the board has already been programmed then the backlight should illuminate.
- Press and hold the Erase button of the PanelDue for at least one second. You can access this button by pressing the end of a straightened-out paper clip through the hole in the enclosure.
- Release the Erase button, then press and release the Reset button. If you have a version 2.0 board then the backlight will turn off.
- Identify the COM port number or port name of the PanelDue board on your PC. If you use Windows, you can do this via Start->Control Panel->System->Device Manager. Expand Ports (COM and LPT), and look for Bossa port. Make a note of the port number. If you can’t find the port, try repeating the Erase and Reset sequence, or disconnecting and reconnecting the USB cable, or try a different USB port on your computer. Note: the port number of the Bossa port for PanelDue will not be the same as the one you use when uploading firmware to Duet electronics.
- Use bossac to program the board. Under Windows, open a command prompt and use this command:
bossac.exe --port=COM9 -e -w -v -b PanelDueFirmware.bin
Replace COM9 in this command by the COM port number you found, and PanelDueFirmware.bin by the path to your downloaded firmware file. It is possible to use the interactive version (Bossa) instead of bossac, but if you do then you must check the Erase All, Lock, and Boot from Flash boxes.
- When bossac has completed and reported “Verify successful”, press the Reset button again. If you have successfully installed firmware that is correct for the type of display you are using, the display should be legible.
- On version 2.0 and earlier boards, whenever new firmware is uploaded, the touch panel calibration and touch pad orientation is lost. Therefore, on starting up the software enters the touch panel calibration phase. Touch the spots as instructed on the screen as accurately as possible. It is more accurate to use the tip of your fingernail or a stylus (print one!) rather than the pad of your finger. If the display is upside down or inverted left-right, you can correct it after touch calibration using the options provided on the Setup page.
- Disconnect the USB cable.
After you have connected the PanelDue to your 3D printer, you can still update the firmware using the same procedure. If you have a version 3.0 PanelDue then you must disconnect it from your 3D printer first.
Connecting the PanelDue to Duet electronics
Make sure your 3D printer is completely powered down (don’t forget to disconnect the printer USB cable!).
Duet WiFi, Duet Ethernet and Duet 0.8.5
These boards provides a dedicated PanelDue connector. Connect the PanelDue cable to it as shown here. The wiring order is reversed between the two ends of the cable.
If you have a PanelDue 2.0 board and a Duet WiFi or Duet Ethernet and you want to use the SD card socket attached to the display, connect a 10 way straight-through ribbon cable between the box headers on PanelDue and on the CONN_SD socket on the Duet WiFi.
If you have a version 3 PanelDue controller and a Duet Ethernet or Duet WiFi with PCB revision 1.01 or later, then it is possible to connect the PanelDue to the Duet using just the 10-way ribbon cable if the two are close together.
Caution: the ribbon cable must be kept short, preferably no more than 200m long and certainly no more than 400mm. Using a long ribbon cable may give rise to unreliable operation of the SD card and also any PT100 or thermocouple daughter boards attached to the Duet.
If you have a Duet 0.6 board without the DueX4 expansion board, use the 8-way connector provided to connect the PanelDue to the end of the expansion connector on the Duet as shown here.
If you are using A Duet 0.6 with the DueX4 expansion board, then you need to connect the PanelDue to the 36-way expansion connector on the DueX4. You will can use the 8-way shell to connect pins 1, 4 and 5 and the 4-way header shell to connect pin 21. Here are the pin numbers:
|Name||Colour||Duet expansion connector||DueX4 expansion connector|
|URXD (for Dout)||White or blue||7||4|
|UTXD (for Din)||Green||8||5|
Important! As already mentioned, some printer electronics (e.g. Duet 0.6 if you use an external 5V linear regulator) are unable to provide the current on the 5V rail needed by the touch screen display. In these cases you should do the following:
- Cut or remove the +5V (red) wire in the cable connecting the PanelDue to your printer electronics;
- Use a 5V USB power supply rated at 500mA or greater to power the PanelDue via its USB socket.
- Double-check you have the correct connections between the PanelDue and your 3D printer electronics.
- Ensure that the firmware you are running on the Duet or other printer electronics supports communication with the PanelDue, and update it if necessary. For Duet electronics, I recommend using the 1.14 or later series of my fork of RepRapFirmware, available here. If you want to use the SD card socket on the display with the Duet WiFi, you will need version 1.15c or later of DuetWiFiFirmware.
- Power up your 3D printer electronics. The display should light up. Initially all numeric fields will be displayed as zero. However, once your printer electronics starts responding to requests from the PanelDue, the fields should show the correct values.
- Test the various functions. Note: to cancel a pop-up menu that does not have a Cancel button on it, touch the field that you touched originally to get the pop-up menu (this will be the highlighted field).
- If the PanelDue does not pick up the temperatures, machine name etc. from your printer, it may be that the baud rates do not match. You can adjust the baud rate on the PanelDue via the Setup page. You can adjust the baud rate of the serial port in RepRapFirmware using the M575 command. Both PanelDue and RepRapFirmware default to 57600 baud, so there is normally no need to adjust the baud rate.
Important note for Ormerod 2 and Huxley Duo owners
The touch panel displays draw significant current from the +5V rail. The on-board switching regulator on the Duet 0.6, Duet 0.8.5 and Duet WiFi boards can easily handle this. However, the linear regulator on the separate 5V linear regulator board used on the Ormerod 2 and Huxley Duo will not handle the load without additional heatsinking. Make sure that the heatsink and fitting screw cannot short against the enclosure, or anything else! Monitor the temperature of the 5V linear regulator for a few hours to check that the heatsink is effective enough. Alternatively, either power the PanelDue through from a 5V USB power supply as already described, or enable the internal 5V switching regulator on the Duet electronics board.
Using the PanelDue with other printer electronics
If you are using Arduino-based electronics instead of the Duet, then you will need to identify a serial port on the board with available TxD and RxD pins, and the firmware on that board must be capable of receiving gcode commands and sending replies in the required format through that port. Connect the TxD pin of that serial port to Din on the PanelDue, and the RxD pin to Dout. If your electronics uses 5V signal levels instead of 3.3V, then I recommend that you also connect a 10K pullup resistor between the Dout pin and +5V. The PanelDue will tolerate a 5V signal on its Din pin.
If your printer electronics does not already have an SD card socket, but has provision for connecting one, then you may be able to use the socket on the back of the display panel. The version 1.1 PanelDue controller boards has pads for adding a 5-way right-angle Molex connector for this purpose (labelled X5 on the printed circuit board). The version 2.0 board has a 10-way ribbon cable connector. Note that SD cards use 3.3V signal signals, therefore if your electronics uses a 5V signal levels then you will need to use level shifters.
Uncommitted I/O pins
The controller board has 3 uncommitted I/O pins which are brought out to pads for a 4-pin right angle Molex connector (labelled X4 on the printed circuit board). The 4th pin on the connector is ground.
Rolling your own firmware
If you can write C++ and wish to make your own modifications to the firmware, then you can find the firmware source and build instructions at https://github.com/dc42/PanelDueFirmware.
OEM versions of PanelDue
We can produce OEM versions of PanelDue with a company logo on the startup screen. This is a free service we offer to OEM customers who order at least 10 PanelDue controller boards directly from Escher3D. We can also do other custom firmware modifications to special order.
Last updated 2017-09-11