{"id":2942,"date":"2018-04-05T16:10:37","date_gmt":"2018-04-05T16:10:37","guid":{"rendered":"https:\/\/blog.ecotronics.ch\/wordpress\/?p=2942"},"modified":"2021-12-29T20:38:52","modified_gmt":"2021-12-29T19:38:52","slug":"how-to-install-and-configure-the-display-gen4-iod-24t","status":"publish","type":"post","link":"https:\/\/blog.ecotronics.ch\/wordpress\/?p=2942","title":{"rendered":"How to Install and Configure the Display GEN4-IOD-24T"},"content":{"rendered":"<p>This week I tried to configure and program a <strong>gen4 IoD 24T<\/strong>\u00a0color display with resistive touch panel from <a href=\"https:\/\/www.4dsystems.com.au\/\" target=\"_blank\" rel=\"noopener\">4D Systems<\/a> for an IOT project. The display has an integrated <strong>ESP8266<\/strong> and therefore <strong>WIFI<\/strong>. We had bought the whole kit, which means display, universal programmer adapter and some cables. There was <strong>no quick start guide in the kit<\/strong> and I couldn&#8217;t find it on the 4D systems webite! Although there is a lot of documentation around, it was pretty hard to find out how to get the display working, because there were essential informations lacking, for example how to connect the cable between programmer and display or how to connect the programmer to your notebook (dont use the cable that came with the kit).<\/p>\n<h1>Components<\/h1>\n<ul>\n<li>SK-gen4-IoD-24T (Starter Kit) with:\n<ul>\n<li><a href=\"https:\/\/www.4dsystems.com.au\/product\/gen4_IoD\/\" target=\"_blank\" rel=\"noopener\">Display GEN4-IOD-24T<\/a><\/li>\n<li><a href=\"https:\/\/www.4dsystems.com.au\/product\/4D_UPA\/\" target=\"_blank\" rel=\"noopener\">4D universal programming adaptor<\/a><\/li>\n<li>5.5mm wide 10 pin FFC cable<\/li>\n<\/ul>\n<\/li>\n<li>Micro USB cable<\/li>\n<li>PC or Notebook with Windows 7 or 10 (I don&#8217;t know whether and how it works on Linux or Mac)<\/li>\n<\/ul>\n<h1>Hardware<\/h1>\n<p>Connect the display\u00a0with the 10 pin FFC cable\u00a0and the universal programming adaptor as shown in the image. The writing on the cable has to be on the upper side.<\/p>\n<div id=\"attachment_2951\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/ConnectionUPA-GEN4-IOD-24T_1000x563_20180405.jpg\"><img aria-describedby=\"caption-attachment-2951\" decoding=\"async\" loading=\"lazy\" class=\"size-medium wp-image-2951\" src=\"https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/ConnectionUPA-GEN4-IOD-24T_1000x563_20180405-300x169.jpg\" alt=\"Connection display GEN4-IOD-24T to 4D universal programming adaptor\" width=\"300\" height=\"169\" srcset=\"https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/ConnectionUPA-GEN4-IOD-24T_1000x563_20180405-300x169.jpg 300w, https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/ConnectionUPA-GEN4-IOD-24T_1000x563_20180405-768x432.jpg 768w, https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/ConnectionUPA-GEN4-IOD-24T_1000x563_20180405-150x84.jpg 150w, https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/ConnectionUPA-GEN4-IOD-24T_1000x563_20180405-400x225.jpg 400w, https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/ConnectionUPA-GEN4-IOD-24T_1000x563_20180405.jpg 1000w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-2951\" class=\"wp-caption-text\">Connection display GEN4-IOD-24T to 4D universal programming adaptor<\/p><\/div>\n<p>Then connect the universal programming adaptor with the micro USB cable to your PC or notebook.<\/p>\n<h1>Software and Drivers<\/h1>\n<ul>\n<li>Fetch the\u00a0Silicon Labs CP210x USB to UART Bridge Driver and install it<br \/>\n<a href=\"https:\/\/www.silabs.com\/products\/development-tools\/software\/usb-to-uart-bridge-vcp-drivers\" target=\"_blank\" rel=\"noopener\">https:\/\/www.silabs.com\/products\/development-tools\/software\/usb-to-uart-bridge-vcp-drivers<\/a><\/li>\n<li>Control in the windows device manager that the driver is correctly installed. It will be shown under &#8220;Ports (COM &amp; LPT). The COM number you see here you will need to configure your Arduino IDE (and Workshop4 if you work with this tool from 4D systems).\n<p><div id=\"attachment_2947\" style=\"width: 236px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/Verkabelung_2018-04-05_145533.jpg\"><img aria-describedby=\"caption-attachment-2947\" decoding=\"async\" loading=\"lazy\" class=\"size-medium wp-image-2947\" src=\"https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/Verkabelung_2018-04-05_145533-226x300.jpg\" alt=\"CP210x USB to UART Bridge VCP driver in windows device manager\" width=\"226\" height=\"300\" srcset=\"https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/Verkabelung_2018-04-05_145533-226x300.jpg 226w, https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/Verkabelung_2018-04-05_145533-113x150.jpg 113w, https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/Verkabelung_2018-04-05_145533-400x531.jpg 400w, https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/Verkabelung_2018-04-05_145533.jpg 537w\" sizes=\"(max-width: 226px) 100vw, 226px\" \/><\/a><p id=\"caption-attachment-2947\" class=\"wp-caption-text\">CP210x USB to UART Bridge VCP driver in windows device manager<\/p><\/div><\/li>\n<li>Download the\u00a0<strong>GFX4d library<\/strong> as a <strong>ZIP file<\/strong> from\u00a0<a href=\"https:\/\/github.com\/4dsystems\/GFX4d\" target=\"_blank\" rel=\"noopener\">https:\/\/github.com\/4dsystems\/GFX4d<\/a><\/li>\n<li>Download the newest <strong>Arduino IDE<\/strong> from\u00a0<a href=\"https:\/\/www.arduino.cc\/en\/Main\/Software\" target=\"_blank\" rel=\"noopener\">https:\/\/www.arduino.cc\/en\/Main\/Software<\/a>\u00a0and install it (mine was 1.8.5)<\/li>\n<li>Open the Arduino IDE, go to File &#8211; Preferences &#8211;\u00a0tab &#8220;Settings&#8221; and insert the following URL into the field &#8220;Additional Boards Manager URLs&#8221;:<br \/>\nhttp:\/\/arduino.esp8266.com\/versions\/2.4.1\/package_esp8266com_index.json<\/li>\n<li>Open Tools &#8211; Board:&#8230; &#8211; Boards Manager\u00a0in the Arduino IDE and search for\u00a0<strong>esp8266<\/strong>. Install the latest version of the <strong>ESP8266 Community version<\/strong> (in April 2018 this was 2.4.1)<\/li>\n<li>Configure the COM number from the windows device manager\u00a0in the menu\u00a0<strong>Tools &#8211; Port<\/strong><\/li>\n<li>Configure the board with Tools &#8211; Board:&#8230; &#8211; <strong>4D Systems gen4 IoD Range <\/strong>(nearly\u00a0at the end of the list)<\/li>\n<li>Open Sketch &#8211; Include Library &#8211; <strong>Open .ZIP library<\/strong>&#8230; and search for the ZIP file <strong>GFX4d zip file<\/strong> you have downloaded before<\/li>\n<li>Load one of the examples that come with the library to test your configuration, for example: File &#8211; Examples &#8211; GFX4d-master &#8211; Examples &#8211; TouchTest4D<\/li>\n<li>Compile and upload the sketch with Sketch &#8211; Upload. If you were successful you will see in the lower part of the IDE an orange text ending with &#8220;[ 100% ]&#8221;\n<p><div id=\"attachment_2954\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/ArduinoIDESuccessfulUpload_2018-04-05.jpg\"><img aria-describedby=\"caption-attachment-2954\" decoding=\"async\" loading=\"lazy\" class=\"size-medium wp-image-2954\" src=\"https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/ArduinoIDESuccessfulUpload_2018-04-05-300x231.jpg\" alt=\"Arduino IDE after successful upload of the sketch\" width=\"300\" height=\"231\" srcset=\"https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/ArduinoIDESuccessfulUpload_2018-04-05-300x231.jpg 300w, https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/ArduinoIDESuccessfulUpload_2018-04-05-768x591.jpg 768w, https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/ArduinoIDESuccessfulUpload_2018-04-05-150x115.jpg 150w, https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/ArduinoIDESuccessfulUpload_2018-04-05-400x308.jpg 400w, https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/ArduinoIDESuccessfulUpload_2018-04-05.jpg 927w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-2954\" class=\"wp-caption-text\">Arduino IDE after successful upload of the sketch<\/p><\/div><\/li>\n<\/ul>\n<p>The first sketch is really working:<\/p>\n<div id=\"attachment_2955\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/DisplayGEN4-IOD-24TWithTouchTestSketch_1000x398.jpg\"><img aria-describedby=\"caption-attachment-2955\" decoding=\"async\" loading=\"lazy\" class=\"size-medium wp-image-2955\" src=\"https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/DisplayGEN4-IOD-24TWithTouchTestSketch_1000x398-300x119.jpg\" alt=\"Display GEN4-IOD-24T with TouchTest example sketch\" width=\"300\" height=\"119\" srcset=\"https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/DisplayGEN4-IOD-24TWithTouchTestSketch_1000x398-300x119.jpg 300w, https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/DisplayGEN4-IOD-24TWithTouchTestSketch_1000x398-768x306.jpg 768w, https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/DisplayGEN4-IOD-24TWithTouchTestSketch_1000x398-150x60.jpg 150w, https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/DisplayGEN4-IOD-24TWithTouchTestSketch_1000x398-400x159.jpg 400w, https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/04\/DisplayGEN4-IOD-24TWithTouchTestSketch_1000x398.jpg 1000w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-2955\" class=\"wp-caption-text\">Display GEN4-IOD-24T with TouchTest example sketch<\/p><\/div>\n<h1>Programming Tools<\/h1>\n<p>Take care: 4D Systems is suggesting, that you install their own <strong>Workshop4 IDE<\/strong> and work with it instead of the Arduino IDE. For the\u00a0GEN4-IOD-24T this is misleading:<\/p>\n<ul>\n<li>First <strong>you must have installed an Arduino IDE<\/strong> anyway because the <strong>Workshop4 IDE uses the Arduino IDE for compiling and uploading<\/strong>.<\/li>\n<li>Second the nice <strong>visual tools like VisiGen<\/strong> in the Workshop4 IDE <strong>cannot be used<\/strong> with the forementioned display (maybe later, but in April 2018 there were no wizards and graphical tools available). Basically you program your code in a text editor with the commands of the included GFX4d library. That is the same what you would do in the Arduino IDE. Therefore I see no advantage\u00a0in installing and using the Workshop4 IDE. If you want to have an <strong>IDE with code completion<\/strong> take <strong>Visual Studio Code<\/strong> and the Arduino plugin (currently Arduino 0.2.11 from Microsoft). With some configuration you can develop and upload your code directly into the display from there.<\/li>\n<li>Third there is <strong>no single code example<\/strong> for the GEN4-IOD displays in the\u00a0large collection of samples integrated in the Workshop4 IDE. The samples you have come with the\u00a0GFX4d library and you can load them\u00a0in the Arduino IDE as any other library samples. Absolutely no need to install the Workshop4 IDE for this.<\/li>\n<\/ul>\n<h1>SD-Card<\/h1>\n<p>There is another problem when using the samples or programming your own interface: Many of these examples and programs use the SD card. This card has to be formatted in <strong>FAT16<\/strong>. Unfortunately <strong>newer Windows version no longer support FAT16<\/strong>. Fortunately I had an old notebook where I could format FAT16 and read and write the card. And with the tool integrated in Workshop4 I could test the card with the uSD tester on the tools menu, but I found nothing to\u00a0copy the necessary files to the card.<\/p>\n<h1>4Duino as an alternative<\/h1>\n<p>After playing around with this display I came to the conclusion that it is not the best choice for our project. The only interface you have is this 10 pin FFC cable. There is no plug for power and there are no pins to connect any sensors and actors. Therefore you need another microcontroller anyway. And\u00a0there are only 6\u00a0examples that come with the library and\u00a0none of them is\u00a0really useful for our task.<\/p>\n<p>At the moment the <a href=\"https:\/\/www.4dsystems.com.au\/product\/4Duino_24\/\" target=\"_blank\" rel=\"noopener\">4Duino<\/a> from 4D Systems seems to be the much better choice. It is a Arduino compatible microcontroller with integrated display, WIFI, SD card on board and 20 pins (7 with PWM and 12 with analog input).<\/p>\n<h1>Useful documentation<\/h1>\n<p>You will not only need the official\u00a0gen4-IOD datasheet (which is not a pure datasheet but also a tutorial), but also the Universal programmer Adaptor datasheet.<\/p>\n<ul>\n<li>4d systems official datasheet and tutorial for the display:\u00a0<a href=\"http:\/\/www.4dsystems.com.au\/productpages\/gen4-IoD\/downloads\/gen4-IOD_datasheet_R_1_1.pdf\">http:\/\/www.4dsystems.com.au\/productpages\/gen4-IoD\/downloads\/gen4-IOD_datasheet_R_1_1.pdf<\/a><\/li>\n<li>4d systems official datasheet and configuration guide for the universal programmer:\u00a0<a href=\"http:\/\/www.4dsystems.com.au\/productpages\/4D-UPA\/downloads\/4D-UPA_datasheet_R_1_2.pdf\" target=\"_blank\" rel=\"noopener\">http:\/\/www.4dsystems.com.au\/productpages\/4D-UPA\/downloads\/4D-UPA_datasheet_R_1_2.pdf<\/a><\/li>\n<li><a href=\"http:\/\/www.4dsystems.com.au\/productpages\/gen4-IoD\/downloads\/IoD_Arduino_Libraries_R_1_0.pdf\">IoD Arduino Library Documentation<\/a>\u00a0is the main source for programming this display.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>This week I tried to configure and program a gen4 IoD 24T color display with resistive touch panel from 4D Systems for an IOT project. The display has an integrated ESP8266 and therefore WIFI. We had bought the whole kit, which means display, universal programmer adapter and some cables. There was no quick start guide [&#8230;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[160,130,325,158],"tags":[342,341,338,327,340,339,343],"_links":{"self":[{"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/2942"}],"collection":[{"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2942"}],"version-history":[{"count":14,"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/2942\/revisions"}],"predecessor-version":[{"id":3321,"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/2942\/revisions\/3321"}],"wp:attachment":[{"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2942"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2942"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2942"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}