{"id":2549,"date":"2020-09-26T13:00:00","date_gmt":"2020-09-26T12:00:00","guid":{"rendered":"https:\/\/chewett.co.uk\/blog\/?p=2549"},"modified":"2020-09-20T21:31:48","modified_gmt":"2020-09-20T20:31:48","slug":"using-the-128x64-i2c-sh1106-oled-display-module-screen-with-a-wemos-d1-mini-esp8266","status":"publish","type":"post","link":"https:\/\/chewett.co.uk\/blog\/2549\/using-the-128x64-i2c-sh1106-oled-display-module-screen-with-a-wemos-d1-mini-esp8266\/","title":{"rendered":"Using the 128\u00d764 I2C SH1106 OLED Display Module Screen with a WeMos D1 Mini (ESP8266)"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"678\" height=\"254\" data-attachment-id=\"2550\" data-permalink=\"https:\/\/chewett.co.uk\/blog\/2549\/using-the-128x64-i2c-sh1106-oled-display-module-screen-with-a-wemos-d1-mini-esp8266\/wemos_128x64_i2c_sh1106_lcdmodule\/\" data-orig-file=\"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/07\/wemos_128x64_i2c_sh1106_lcdmodule.jpg?fit=800%2C300&amp;ssl=1\" data-orig-size=\"800,300\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"wemos_128x64_i2c_sh1106_lcdmodule\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/07\/wemos_128x64_i2c_sh1106_lcdmodule.jpg?fit=300%2C113&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/07\/wemos_128x64_i2c_sh1106_lcdmodule.jpg?fit=678%2C254&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/07\/wemos_128x64_i2c_sh1106_lcdmodule.jpg?resize=678%2C254&#038;ssl=1\" alt=\"\" class=\"wp-image-2550\" srcset=\"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/07\/wemos_128x64_i2c_sh1106_lcdmodule.jpg?w=800&amp;ssl=1 800w, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/07\/wemos_128x64_i2c_sh1106_lcdmodule.jpg?resize=300%2C113&amp;ssl=1 300w, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/07\/wemos_128x64_i2c_sh1106_lcdmodule.jpg?resize=768%2C288&amp;ssl=1 768w, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/07\/wemos_128x64_i2c_sh1106_lcdmodule.jpg?resize=50%2C19&amp;ssl=1 50w\" sizes=\"auto, (max-width: 678px) 100vw, 678px\" \/><\/figure>\n\n\n\n<p>In this blog post I talk about how you can use a 128\u00d764 I2C&nbsp;SH1106 OLED Display Module Screen with a WeMos D1 Mini (ESP8266) using the Arduino IDE.<\/p>\n\n\n\n<!--more-->\n\n\n\n<h2 class=\"wp-block-heading\">Summary of the 128\u00d764 I2C&nbsp;SH1106 OLED Display Module Screen<\/h2>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"alignleft size-large is-resized\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1567\" data-permalink=\"https:\/\/chewett.co.uk\/blog\/1517\/128x32-i2c-ssd1306-oled-display-module-screen-for-arduino-review-and-code\/128x64_oled_main_image\/\" data-orig-file=\"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x64_oled_main_image.jpg?fit=800%2C800&amp;ssl=1\" data-orig-size=\"800,800\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"128x64_oled_main_image\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x64_oled_main_image.jpg?fit=300%2C300&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x64_oled_main_image.jpg?fit=678%2C678&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x64_oled_main_image.jpg?resize=322%2C322&#038;ssl=1\" alt=\"\" class=\"wp-image-1567\" width=\"322\" height=\"322\" srcset=\"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x64_oled_main_image.jpg?w=800&amp;ssl=1 800w, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x64_oled_main_image.jpg?resize=300%2C300&amp;ssl=1 300w, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x64_oled_main_image.jpg?resize=768%2C768&amp;ssl=1 768w, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x64_oled_main_image.jpg?resize=50%2C50&amp;ssl=1 50w\" sizes=\"auto, (max-width: 322px) 100vw, 322px\" \/><\/figure><\/div>\n\n\n\n<p>The SH1106 OLED display module is a nice 128&#215;64 pixel screen. This unit provides a single colour allowing each pixel to either be on or off individually.<\/p>\n\n\n\n<p>One of the useful features is that this is an OLED screen which draws much less power compared to a standard LED screen. This is useful in IoT devices which may be powered by batteries where power draw is important.<\/p>\n\n\n\n<p>This OLED display uses the SH1106 driver IC which is a standard supported library on Arduino and WeMos systems. This library provides the ability to draw text and primitives (triangles, rectangles, etc) to the screen.<\/p>\n\n\n\n<p>Another useful feature is that this unit supports being powered by 3.3V and 5V supply which means the WeMos can power it using its 3.3V line.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Important differences compared to using the 128\u00d764 I2C&nbsp;SH1106 OLED Display Module Screen on an Arduino<\/h2>\n\n\n\n<p>Before wiring up the WeMos it is important to note that there are some differences between the WeMos D1 Mini (ESP8266) and an Arduino.<\/p>\n\n\n\n<p>The Arduino IDE is configured to use pin constants for the Arduino. This means that the WeMos Digital pin 1 is not referred to as <code>1<\/code> as you would using an Arduino. Instead to refer to digital pin 1 you need to use the special constant <code>D1<\/code>.<\/p>\n\n\n\n<p>I go into more details for this in my blog post&nbsp;<a href=\"https:\/\/chewett.co.uk\/blog\/1066\/pin-numbering-for-wemos-d1-mini-esp8266\/\">Pin numbering for WeMos D1 Mini (ESP8266)<\/a>. If you haven\u2019t read this and are having trouble connecting your 128\u00d764 I2C&nbsp;SH1106 OLED Display Module Screen properly I recommend having a read.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Wiring it up to a WeMos D1 Mini<\/h2>\n\n\n\n<p>This OLED screen has four pins which are GND, VCC, SCL, SDA (left to right). The GND will be wired to the GND on the WeMos and the VCC is attached to the 3.3 volts.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"678\" height=\"316\" data-attachment-id=\"2598\" data-permalink=\"https:\/\/chewett.co.uk\/blog\/2549\/using-the-128x64-i2c-sh1106-oled-display-module-screen-with-a-wemos-d1-mini-esp8266\/128x64_oled_wiring_diagram_wemos\/\" data-orig-file=\"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/08\/128x64_oled_wiring_diagram_wemos.jpg?fit=800%2C373&amp;ssl=1\" data-orig-size=\"800,373\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"128x64_oled_wiring_diagram_wemos\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/08\/128x64_oled_wiring_diagram_wemos.jpg?fit=300%2C140&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/08\/128x64_oled_wiring_diagram_wemos.jpg?fit=678%2C316&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/08\/128x64_oled_wiring_diagram_wemos.jpg?resize=678%2C316&#038;ssl=1\" alt=\"\" class=\"wp-image-2598\" srcset=\"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/08\/128x64_oled_wiring_diagram_wemos.jpg?w=800&amp;ssl=1 800w, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/08\/128x64_oled_wiring_diagram_wemos.jpg?resize=300%2C140&amp;ssl=1 300w, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/08\/128x64_oled_wiring_diagram_wemos.jpg?resize=768%2C358&amp;ssl=1 768w, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/08\/128x64_oled_wiring_diagram_wemos.jpg?resize=50%2C23&amp;ssl=1 50w\" sizes=\"auto, (max-width: 678px) 100vw, 678px\" \/><\/figure>\n\n\n\n<p>The SCL and SDA pins need to be connected to the I2C pins on the WeMos. Reading on <a href=\"https:\/\/chewett.co.uk\/blog\/2543\/i2c-connection-pins-on-the-wemos-d1-mini-esp8266\/\" data-type=\"URL\" data-id=\"https:\/\/chewett.co.uk\/blog\/2543\/i2c-connection-pins-on-the-wemos-d1-mini-esp8266\/\">I2C Connection Pins on the WeMos D1 Mini (ESP8266)<\/a> will tell you which these are.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Programming the WeMos to use the 128\u00d764 I2C&nbsp;SH1106 OLED Display Module Screen<\/h2>\n\n\n\n<p>To program the OLED screen I am using the&nbsp;<a rel=\"noreferrer noopener\" href=\"https:\/\/github.com\/olikraus\/u8g2\" target=\"_blank\">U8glib library for monochrome displays<\/a> library. When using the Arduino IDE it can be installed by pressing &#8220;Manage Libraries&#8221;. The library name is &#8220;U8g2 by oliver&#8221;.<\/p>\n\n\n\n<p>This library makes it easier to program the OLED screen by providing functions to create text and standard primitives (squares, triangles, etc).<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\n#include &lt;U8g2lib.h&gt;\nU8G2_SH1106_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0);\n\nvoid setup(void) {\n  u8g2.begin();\n}\n<\/pre><\/div>\n\n\n<p>The first line imports the library which we will be using to control the OLED screen. Then once it is imported an object for the screen is instantiated. This uses the default I2C ports on the WeMos which are D1 and D2.<\/p>\n\n\n\n<p>The parameter passed in the constructor of this is <code>U8G2_R0<\/code> which defines the rotation of the screen.<\/p>\n\n\n\n<p>The setup function then begins communication with the screen on the I2C bus.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\nvoid loop(void) {\n  u8g2.firstPage();\n  do {\n    \/\/keep this the same as it pages through the data generating the screen\n    u8g2.setFont(u8g2_font_ncenB14_tr);\n    u8g2.drawStr(0,20,&quot;Hello World!&quot;);\n  } while ( u8g2.nextPage() );\n\n  delay(1000); \n}\n<\/pre><\/div>\n\n\n<p>Inside the loop function <code>firstPage<\/code> is called on the <code>u8g2<\/code> variable. This triggers the start of drawing the OLED screen.<\/p>\n\n\n\n<p>To optimise drawing and reduce the hardware requirements of rendering the images the screen is split up and paged across the I2C bus.<\/p>\n\n\n\n<p>This is done by looping over each created page and calculating the piece of the image which needs to be drawn. All drawing code should be kept inside the loop so that each page is drawing the same image.<\/p>\n\n\n\n<p>Inside the do while loop I perform two operations. The first just configures which font to use. The second then draws a string as position <code>(0, 20)<\/code> of &#8220;Hello World!&#8221;.<\/p>\n\n\n\n<p>This will be looped over depending on the number of pages. Once all loops are created the buffered image is then displayed. Once this is done we ask the WeMos to wait a second and redraw the image. This is less important for static images but will be useful when animating or changing the text.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Summary<\/h2>\n\n\n\n<p>Since the OLED screen works at 3.3 volts and 5 volts it is ideal to use with the WeMos D1 mini. The low power features also mean that if the WeMos is battery powered it will be able to run for longer. This small screen works really well with the WeMos.<\/p>\n\n\n\n<p>For a full review and guide to use the sensor with an Arduino please <a href=\"\/blog\/1521\/128x64-i2c-sh1106-oled-display-module-screen-for-arduino-review-and-code\/\">read my previous post<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this blog post I talk about how you can use a 128\u00d764 I2C&nbsp;SH1106 OLED Display Module Screen with a WeMos D1 Mini (ESP8266) using the Arduino IDE.<\/p>\n","protected":false},"author":1,"featured_media":2596,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"Todayn I am talking about using the 128\u00d764 I2C SH1106 OLED Display Module Screen with a #WeMos D1 Mini (#ESP8266)","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[97],"tags":[295,296,288,294,298,209,237],"class_list":["post-2549","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-electronics","tag-display-module","tag-i2c","tag-lcd","tag-oled","tag-sh1106","tag-wemos","tag-wemos-d1-mini"],"wppr_data":{"cwp_meta_box_check":"No"},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/08\/wemos_128x64_sh1106_oled_screen_output.png?fit=1200%2C628&ssl=1","jetpack_shortlink":"https:\/\/wp.me\/p2toWX-F7","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":2543,"url":"https:\/\/chewett.co.uk\/blog\/2543\/i2c-connection-pins-on-the-wemos-d1-mini-esp8266\/","url_meta":{"origin":2549,"position":0},"title":"I2C Connection Pins on the WeMos D1 Mini (ESP8266)","author":"Chewett","date":"July 18, 2020","format":false,"excerpt":"This blog post details the I2C connections on the WeMos D1 Mini (ESP8266). Using I2C connections with the WeMos D1 Mini (ESP8266) Within IoT devices the I2C protocol is used a lot for multi-master multi-slave communication as a relatively simple serial bus. You will find that small sensors will report\u2026","rel":"","context":"In &quot;Electronics&quot;","block_context":{"text":"Electronics","link":"https:\/\/chewett.co.uk\/blog\/category\/electronics\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/08\/wemos_i2c_pin_numbering_posticon_output.png?fit=1200%2C628&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/08\/wemos_i2c_pin_numbering_posticon_output.png?fit=1200%2C628&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/08\/wemos_i2c_pin_numbering_posticon_output.png?fit=1200%2C628&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/08\/wemos_i2c_pin_numbering_posticon_output.png?fit=1200%2C628&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2020\/08\/wemos_i2c_pin_numbering_posticon_output.png?fit=1200%2C628&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":1521,"url":"https:\/\/chewett.co.uk\/blog\/1521\/128x64-i2c-sh1106-oled-display-module-screen-for-arduino-review-and-code\/","url_meta":{"origin":2549,"position":1},"title":"128&#215;64 I2C\u00a0SH1106 OLED Display Module Screen for Arduino Review and Code","author":"Chewett","date":"December 8, 2018","format":false,"excerpt":"Today I review the 128x64 I2C\u00a0SH1106 OLED Display Module Screen for Arduino and provide example code. Overview of the 128x64 I2C\u00a0SH1106 OLED Display Module This rectangular OLED display module gives you a 128x64 pixel screen to display content on. This is a single colour model allowing for each pixel to\u2026","rel":"","context":"In &quot;Electronics&quot;","block_context":{"text":"Electronics","link":"https:\/\/chewett.co.uk\/blog\/category\/electronics\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x64_oled_post_icon.jpg?fit=800%2C800&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x64_oled_post_icon.jpg?fit=800%2C800&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x64_oled_post_icon.jpg?fit=800%2C800&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x64_oled_post_icon.jpg?fit=800%2C800&ssl=1&resize=700%2C400 2x"},"classes":[]},{"id":1517,"url":"https:\/\/chewett.co.uk\/blog\/1517\/128x32-i2c-ssd1306-oled-display-module-screen-for-arduino-review-and-code\/","url_meta":{"origin":2549,"position":2},"title":"128&#215;32 I2C\u00a0SSD1306 OLED Display Module Screen for Arduino Review and Code","author":"Chewett","date":"September 29, 2018","format":false,"excerpt":"Today I review the 128x32\u00a0I2C\u00a0SSD1306 OLED Display Module Screen for Arduino and provide example code. Overview of the 128x32\u00a0I2C\u00a0SSD1306 OLED Display Module This OLED display module allows you to display any content you want on a small display screen. This unit is a single colour display. Using OLED technology this\u2026","rel":"","context":"In &quot;Electronics&quot;","block_context":{"text":"Electronics","link":"https:\/\/chewett.co.uk\/blog\/category\/electronics\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x32_oled_post_icon.jpg?fit=800%2C800&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x32_oled_post_icon.jpg?fit=800%2C800&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x32_oled_post_icon.jpg?fit=800%2C800&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/09\/128x32_oled_post_icon.jpg?fit=800%2C800&ssl=1&resize=700%2C400 2x"},"classes":[]},{"id":937,"url":"https:\/\/chewett.co.uk\/blog\/937\/configuring-wemos-d1-mini-pro-esp8266-arduino-ide\/","url_meta":{"origin":2549,"position":3},"title":"Configuring the Wemos D1 Mini Pro ESP8266 for Arduino IDE","author":"Chewett","date":"December 30, 2017","format":false,"excerpt":"This guide runs you through a basic set of steps to configure the Aduino IDE to program a Wemos D1 Mini Pro ESP8266. What is the Wemos D1 mini Pro The Wemos D1 mini Pro is an Arduino-like board that runs using the ESP8266 microcontroller. One of the key differences\u2026","rel":"","context":"In &quot;Electronics&quot;","block_context":{"text":"Electronics","link":"https:\/\/chewett.co.uk\/blog\/category\/electronics\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/01\/wemos_d1_mini_post_icon.jpg?fit=800%2C800&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/01\/wemos_d1_mini_post_icon.jpg?fit=800%2C800&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/01\/wemos_d1_mini_post_icon.jpg?fit=800%2C800&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/01\/wemos_d1_mini_post_icon.jpg?fit=800%2C800&ssl=1&resize=700%2C400 2x"},"classes":[]},{"id":1856,"url":"https:\/\/chewett.co.uk\/blog\/1856\/using-the-sw-18010p-motion-vibration-sensor-with-a-wemos-d1-mini-esp8266\/","url_meta":{"origin":2549,"position":4},"title":"Using the SW-18010P Motion Vibration Sensor with a WeMos D1 Mini (ESP8266)","author":"Chewett","date":"February 2, 2019","format":false,"excerpt":"In this blog post I talk about how you can use a SW-18010P Motion Vibration sensor with a WeMos D1 Mini (ESP8266) using the Arduino IDE. Summary of the SW-18010P Motion Vibration sensor This motion sensor works by encasing a small spring inside a metal casing. Whenever the sensor moves\u2026","rel":"","context":"In &quot;Electronics&quot;","block_context":{"text":"Electronics","link":"https:\/\/chewett.co.uk\/blog\/category\/electronics\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2019\/02\/sw18010p_vibration_sensor_wemos.jpg?fit=800%2C800&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2019\/02\/sw18010p_vibration_sensor_wemos.jpg?fit=800%2C800&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2019\/02\/sw18010p_vibration_sensor_wemos.jpg?fit=800%2C800&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2019\/02\/sw18010p_vibration_sensor_wemos.jpg?fit=800%2C800&ssl=1&resize=700%2C400 2x"},"classes":[]},{"id":1066,"url":"https:\/\/chewett.co.uk\/blog\/1066\/pin-numbering-for-wemos-d1-mini-esp8266\/","url_meta":{"origin":2549,"position":5},"title":"Pin numbering for WeMos D1 Mini (ESP8266)","author":"Chewett","date":"March 17, 2018","format":false,"excerpt":"Here I explain the difference in pin numbering for the WeMos D1 Mini compared to an Arduino and include a sample blink sketch. Setting up the Arduino IDE for the WeMos D1 mini This tutorial assumes that you have set up the Arduino IDE to able to compile the\u00a0Wemos D1\u2026","rel":"","context":"In &quot;Electronics&quot;","block_context":{"text":"Electronics","link":"https:\/\/chewett.co.uk\/blog\/category\/electronics\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/03\/pin_numbering_wemos_d1_mini.jpg?fit=800%2C800&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/03\/pin_numbering_wemos_d1_mini.jpg?fit=800%2C800&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/03\/pin_numbering_wemos_d1_mini.jpg?fit=800%2C800&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/chewett.co.uk\/blog\/wp-content\/uploads\/2018\/03\/pin_numbering_wemos_d1_mini.jpg?fit=800%2C800&ssl=1&resize=700%2C400 2x"},"classes":[]}],"_links":{"self":[{"href":"https:\/\/chewett.co.uk\/blog\/wp-json\/wp\/v2\/posts\/2549","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/chewett.co.uk\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/chewett.co.uk\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/chewett.co.uk\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/chewett.co.uk\/blog\/wp-json\/wp\/v2\/comments?post=2549"}],"version-history":[{"count":5,"href":"https:\/\/chewett.co.uk\/blog\/wp-json\/wp\/v2\/posts\/2549\/revisions"}],"predecessor-version":[{"id":2641,"href":"https:\/\/chewett.co.uk\/blog\/wp-json\/wp\/v2\/posts\/2549\/revisions\/2641"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/chewett.co.uk\/blog\/wp-json\/wp\/v2\/media\/2596"}],"wp:attachment":[{"href":"https:\/\/chewett.co.uk\/blog\/wp-json\/wp\/v2\/media?parent=2549"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/chewett.co.uk\/blog\/wp-json\/wp\/v2\/categories?post=2549"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/chewett.co.uk\/blog\/wp-json\/wp\/v2\/tags?post=2549"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}