Difference: WeMosD1Mini (1 vs. 13)

Revision 132020-05-23 - TWikiAdminUser

Line: 1 to 1
 
META TOPICPARENT name="AFNOGWorkshop2019"

The WeMos D1 mini and its sensor and actuator shields

Introduction

Line: 69 to 69
 
  • The SHT-30 shield with a SHT-30 I2C digital temperature and humidity sensor
  • The DHT11 shield with a DHT11 digital temperature and humidity sensor. This device uses its own private serial communication protocol
Here is an overview table showing the devices and their connections:
Changed:
<
<
Module Connections Functionality
1 button shield D3: GPIO 0 on / off push button
WS2812B RGB shield D2: GPIO 4 addressable rgb LED

DS1307 RTC and data logger

D1: GPIO 5 I2C SCL
D2: GPIO 4 I2C SDA

D5: GPIO 14 SPI Clock
D6: GPIO 12 SPI MOSI
D7: GPIO 13 SPI MISO
D8: GPIO 15 SPI CS

Real Time Clock

SD card interface

Buzzer shield D5 (default GPIO 14
D6 GPIO 12
D7 GPIO 13
D8 GPIO 15
passive buzzer
BMP180 shield D1 GPIO 5 I2C SCL
D2 GPIO 4 I2C SDA
I2C barometric pressure sensor and
temperature sensor
DHT11 shield D4 GPIO 2 temperature and humidity sensor
OLED shield D1 GPIO 5 I2C SLC
D2 GPIO 4 I2C SDA
64x48 pixel display with SSD1036 I2C controller
DD18B20 shield D2 GPIO 4 1-wire digital temperature sensor
SHT30 shield D1 GPIO 5 I2C SCL
D2 GPIO 4 I2C SDA
I2C temperature and humidity sensor
LED Matrix shield D5 GPIO 14 CLK
D7 GPIO 13 Din
8x8 LED Matrix
>
>
Module Connections GPIO on ESP8266 GPIO on ESP32 Functionality
1 button shield D3 GPIO 0 GPIO 17 on / off push button
WS2812B RGB shield D2 GPIO 4 GPIO 21 addressable rgb LED
WS2812B RGB ring D0 GPIO 16 GPIO 26 7 LED WS2812 ring

DS1307 RTC and data logger

D1
D2

D5
D6
D7
D8

GPIO 5 I2C SCL
GPIO 4 I2C SDA

GPIO 14 SPI Clock
GPIO 12 SPI MOSI
GPIO 13 SPI MISO
GPIO 15 SPI CS

GPIO 22 I2C SCL
GPIO 21 I2C SDA

GPIO 18 SPI clock
GPIO 19 SPI MOSI
GPIO 23 SPI MISO
GPIO 5 SPI CS

Real Time Clock

SD card interface

Buzzer shield D5
D6
D7
D8
GPIO 14 (default)
GPIO 12
GPIO 13
GPIO15
GPIO 18 (default)
GPIO 19
GPIO 23
GPIO 5
passive buzzer
BMP180 shield D1
D2
GPIO 5 I2C SCL
GPIO 4 I2C SDA
GPIO 22 I2C SCL
GPIO 21 I2C SDA
I2C barometric pressure sensor and
temperature sensor
DHT11 shield D4 GPIO 2 GPIO 16 temperature and humidity sensor
OLED shield D1
D2
GPIO 5 I2C SCL
GPIO 4 I2C SDA
GPIO 22 I2C SCL
GPIO 21 I2C SDA
64x48 pixel display with SSD1036 I2C controller
DS18B20 shield D2 GPIO 4 GPIO 21 1-wire digital temperature sensor
SHT30 shield D1
D2
GPIO 5 I2C SCL
GPIO 4 I2C SDA
GPIO 22 I2C SCL
GPIO 21 I2C SDA
I2C temperature and humidity sensor
LED Matrix shield D5 GPIO 14 CLK
D7 GPIO 13 Din
GPIO 14: CLK
GPIO 13: Din
GPIO 18: CLK
GPIO 23: Din
8x8 LED Matrix
PIR sensor D4 (default) GPIO 2 GPIO 16 Passive Infrared Switch
BH1750 sensor D1
D2
GPIO 5 I2C SCL
GPIO 4 I2C SDA
GPIO 22 I2C SCL
GPIO 21 I2C SDA
Ambient light sensor
Relay        
IR receiver/transmitter        
 For each of the devices I create 2 directories:
  • a driver directory containing programs testing the module without Cayenne communication
  • a cayenne directory for the final program

Revision 122020-05-01 - UliRaich

Line: 1 to 1
 
META TOPICPARENT name="AFNOGWorkshop2019"

The WeMos D1 mini and its sensor and actuator shields

Introduction

Line: 13 to 13
  wemosd1mini.png
Changed:
<
<
You will find a description of the pinout at https://www.likecircuit.com/wemos-d1-mini-pinout
>
>
You will find a description of the pinout at https://www.teachmemicro.com/getting-started-wemos-d1-mini
  For convenience I copied the basic information here.

Revision 112020-02-23 - UliRaich

Line: 1 to 1
 
META TOPICPARENT name="AFNOGWorkshop2019"

The WeMos D1 mini and its sensor and actuator shields

Introduction

Line: 54 to 54
 

Sensor Shields

Changed:
<
<
A big number of sensor and actuator boards are available. You will find a complete list with their description at https://wiki.wemos.cc/products:d1_mini_shields
>
>
A big number of sensor and actuator boards are available. You will find a complete list with their description at https://docs.wemos.cc/en/latest/d1_mini_shiled/
  Here are the sensor shields and their test programs for the workshop:

Revision 102019-05-29 - UliRaich

Line: 1 to 1
 
META TOPICPARENT name="AFNOGWorkshop2019"

The WeMos D1 mini and its sensor and actuator shields

Introduction

Line: 35 to 35
 ESP8266
  RESET RST Tx GPIO 1  
  ADC0 A0 Rx GPIO 3  
Changed:
<
<
SCK GPIO 16 D0 D1 GPIO 5 SCL
MISO GPIO 14 D5 D2 GPIO 4 SDA
>
>
  GPIO 16 D0 D1 GPIO 5 SCL
SCK GPIO 14 D5 D2 GPIO 4 SDA
 
MOSI GPIO 12 D6 D3 GPIO 0  
Changed:
<
<
SS GPIO 13 D7 D4 GPIO 2  
  GPIO 15 D8 GND GND  
>
>
MISO GPIO 13 D7 D4 GPIO 2  
SS GPIO 15 D8 GND GND  
 
  3.3V 3V3 5V 5V  

ESP32

  RESET RST Tx    
ADC1 channel 0 GPIO 36 SVP Rx    
Changed:
<
<
SCK GPIO 26 IO26 IO22 GPIO 22 SCL
MISO GPIO 18 IO18 IO21 GPIO 21 SDA
>
>
  GPIO 26 IO26 IO22 GPIO 22 SCL
SCK GPIO 18 IO18 IO21 GPIO 21 SDA
 
MOSI GPIO 19 IO19 IO17 GPIO 17  
Changed:
<
<
SS GPIO 23 IO23 IO16 GPIO 16  
  GPIO 5 IO5 GND GND  
>
>
MISO GPIO 23 IO23 IO16 GPIO 16  
SS GPIO 5 IO5 GND GND  
 
  3.3V 3V3 5V 5V  

Sensor Shields

Revision 92019-05-28 - UliRaich

Line: 1 to 1
 
META TOPICPARENT name="AFNOGWorkshop2019"

The WeMos D1 mini and its sensor and actuator shields

Introduction

Changed:
<
<
We have seen that the ESP01 can be programmed with micro Python and that there are add-on sensor boards available. However, when we connect the sensor board we loose the serial connection to the PC. This can be corrected by soldering extra connectors to the top of the ESP01 board but this is fiddly and needs good soldering equipment and good soldering skills. The other option is to get access to the ESP01 through WiFi using WebRepl
>
>
We have seen that the ESP01 can be programmed with micro Python and that there are add-on sensor boards available. However, when we connect the sensor board we lose the serial connection to the PC. This can be corrected by soldering extra connectors to the top of the ESP01 board but this is fiddly and needs good soldering equipment and good soldering skills. The other option is to get access to the ESP01 through WiFi using WebRepl
 
Changed:
<
<
A better and only slightly more expensive solution (we are talking about ~ 3.5 US$ instead of 2.5 US$) is the Wemos D1 mini board. This boards gives up more I/O connections and many more sensor and actuator shields are readily available on the market.
>
>
A better and only slightly more expensive solution (we are talking about ~ 3.5 US$ instead of 2.5 US$) is the Wemos D1 mini board. This board gives us more I/O connections and many more sensor and actuator shields are readily available on the market.
 

The processor board

ESP8266

Changed:
<
<
The processor board uses an Espressif ESP8266 processor chip and 4 MBytes of flash are installed on the board.
>
>
The processor board uses an Espressif ESP8266 processor chip and provides 4 MBytes of flash memory.
  wemosd1mini.png
Line: 19 to 19
  d1MiniPinout.png
Changed:
<
<
In contrast to a PC the WeMos D1 mini has only very limited memory resources. While 4 MBytes of flash memory is rather comfortable, the amount of RAM (80 K) is a very limiting factor. When running micro Python a mere 30 kBytes is left for your Python programs. There are essentially 2 ways to make most out of the small amount of RAM:
>
>
In contrast to a PC the WeMos D1 mini has only very limited memory resources. While 4 MBytes of flash memory is rather comfortable, the amount of RAM (80 K) is a very limiting factor. When running micropython a mere 30 kBytes is left for your Python programs. There are essentially 2 ways to make most out of the small amount of RAM:
 
  • You can pre-compile your programs to byte code, which takes less space in RAM
Changed:
<
<
  • You can code freeze driver libraries, which means you integrate their byte code into The micro Python image. This however means that you must compile your own version of micro Python and flash it into the WeMos D1 CPU.
>
>
  • You can code freeze driver libraries, which means you integrate their byte code into The micropython image. This however means, that you must compile your own version of micropython and flash it into the WeMos D1 CPU.
 

ESP32

As an alternative you have a CPU board based on the more powerful ESP32:

wemosEsp32.png

Changed:
<
<
As for the ESP8266 there is a Micropython port for the ESP32. The drivers are essentially the same, the pinout of the board however (GPIO numbers for the pins) is different. This means that for every driver we must only change the GPIO number. Since it is possible to find out from Micropython on which platform we run (sys.platform tells you if your CPU is a "esp8266" or a "esp32") we can check for the CPU type and adapt the pin numbering as a consequence.
>
>
As for the ESP8266 there is a micropython port for the ESP32. The drivers are essentially the same, the pinout of the board however (GPIO numbers for the pins) is different. This means that for every driver we must only change the GPIO number. Since it is possible to find out from micropython on which platform we run (sys.platform tells you if your CPU is an "esp8266" or an "esp32") we can check for the CPU type and adapt the pin numbering as a consequence.
  Here is a comparison of the pin assignments for the 2 CPUs:
Line: 80 to 80
 
DD18B20 shield D2 GPIO 4 1-wire digital temperature sensor
SHT30 shield D1 GPIO 5 I2C SCL
D2 GPIO 4 I2C SDA
I2C temperature and humidity sensor
LED Matrix shield D5 GPIO 14 CLK
D7 GPIO 13 Din
8x8 LED Matrix
Deleted:
<
<
 For each of the devices I create 2 directories:
  • a driver directory containing programs testing the module without Cayenne communication
  • a cayenne directory for the final program

You can find the code written for the workshop on github: https://github.com/uraich/MicroPython_IoTDemos.

Changed:
<
<
There is a second repository also with directories drivers and cayenne containing the same type of programs but written in C++ for the Arduino IDE. The IDE must be set up to work with the ESP8266 and ESP32 which means that the cross-compilers for these machines must be installed.
>
>
There is a second repository also with directories "drivers" and "cayenne" containing the same type of programs but written in C++ for the Arduino IDE. The IDE must be set up to work with the ESP8266 and ESP32, which means that the cross-compilers for these machines must be installed.
  https://github.com/uraich/C-IoTDemos

Comments

Revision 82019-05-18 - UliRaich

Line: 1 to 1
 
META TOPICPARENT name="AFNOGWorkshop2019"

The WeMos D1 mini and its sensor and actuator shields

Introduction

Line: 45 to 45
 ESP32
  RESET RST Tx    
ADC1 channel 0 GPIO 36 SVP Rx    
Changed:
<
<
  GPIO 26 IO26 IO22 GPIO 22 SCL
SCK GPIO 18 IO18 IO21 GPIO 21 SDA
MISO GPIO 19 IO19 IO17 GPIO 17  
MOSI GPIO 23 IO23 IO16 GPIO 16  
SS GPIO 5 IO5 GND GND  
>
>
SCK GPIO 26 IO26 IO22 GPIO 22 SCL
MISO GPIO 18 IO18 IO21 GPIO 21 SDA
MOSI GPIO 19 IO19 IO17 GPIO 17  
SS GPIO 23 IO23 IO16 GPIO 16  
  GPIO 5 IO5 GND GND  
 
  3.3V 3V3 5V 5V  

Sensor Shields

Line: 68 to 68
 
  • The LED matrix shield
  • The SHT-30 shield with a SHT-30 I2C digital temperature and humidity sensor
  • The DHT11 shield with a DHT11 digital temperature and humidity sensor. This device uses its own private serial communication protocol
Changed:
<
<
Here is an overview table showing the devices and the
>
>
Here is an overview table showing the devices and their connections:
 
Module Connections Functionality
1 button shield D3: GPIO 0 on / off push button
WS2812B RGB shield D2: GPIO 4 addressable rgb LED
Line: 80 to 80
 
DD18B20 shield D2 GPIO 4 1-wire digital temperature sensor
SHT30 shield D1 GPIO 5 I2C SCL
D2 GPIO 4 I2C SDA
I2C temperature and humidity sensor
LED Matrix shield D5 GPIO 14 CLK
D7 GPIO 13 Din
8x8 LED Matrix
Deleted:
<
<
ir connections:
  For each of the devices I create 2 directories:
  • a driver directory containing programs testing the module without Cayenne communication
  • a cayenne directory for the final program

You can find the code written for the workshop on github: https://github.com/uraich/MicroPython_IoTDemos.

Added:
>
>
There is a second repository also with directories drivers and cayenne containing the same type of programs but written in C++ for the Arduino IDE. The IDE must be set up to work with the ESP8266 and ESP32 which means that the cross-compilers for these machines must be installed.

https://github.com/uraich/C-IoTDemos

 

Comments

<--/commentPlugin-->

Revision 72019-05-07 - UliRaich

Line: 1 to 1
 
META TOPICPARENT name="AFNOGWorkshop2019"

The WeMos D1 mini and its sensor and actuator shields

Introduction

Line: 7 to 7
  A better and only slightly more expensive solution (we are talking about ~ 3.5 US$ instead of 2.5 US$) is the Wemos D1 mini board. This boards gives up more I/O connections and many more sensor and actuator shields are readily available on the market.

The processor board

Added:
>
>

ESP8266

  The processor board uses an Espressif ESP8266 processor chip and 4 MBytes of flash are installed on the board.
Line: 21 to 22
 In contrast to a PC the WeMos D1 mini has only very limited memory resources. While 4 MBytes of flash memory is rather comfortable, the amount of RAM (80 K) is a very limiting factor. When running micro Python a mere 30 kBytes is left for your Python programs. There are essentially 2 ways to make most out of the small amount of RAM:
  • You can pre-compile your programs to byte code, which takes less space in RAM
  • You can code freeze driver libraries, which means you integrate their byte code into The micro Python image. This however means that you must compile your own version of micro Python and flash it into the WeMos D1 CPU.
Added:
>
>

ESP32

As an alternative you have a CPU board based on the more powerful ESP32:

wemosEsp32.png

As for the ESP8266 there is a Micropython port for the ESP32. The drivers are essentially the same, the pinout of the board however (GPIO numbers for the pins) is different. This means that for every driver we must only change the GPIO number. Since it is possible to find out from Micropython on which platform we run (sys.platform tells you if your CPU is a "esp8266" or a "esp32") we can check for the CPU type and adapt the pin numbering as a consequence.

Here is a comparison of the pin assignments for the 2 CPUs:

ESP8266

  RESET RST Tx GPIO 1  
  ADC0 A0 Rx GPIO 3  
SCK GPIO 16 D0 D1 GPIO 5 SCL
MISO GPIO 14 D5 D2 GPIO 4 SDA
MOSI GPIO 12 D6 D3 GPIO 0  
SS GPIO 13 D7 D4 GPIO 2  
  GPIO 15 D8 GND GND  
  3.3V 3V3 5V 5V  

ESP32

  RESET RST Tx    
ADC1 channel 0 GPIO 36 SVP Rx    
  GPIO 26 IO26 IO22 GPIO 22 SCL
SCK GPIO 18 IO18 IO21 GPIO 21 SDA
MISO GPIO 19 IO19 IO17 GPIO 17  
MOSI GPIO 23 IO23 IO16 GPIO 16  
SS GPIO 5 IO5 GND GND  
  3.3V 3V3 5V 5V  

Sensor Shields

 A big number of sensor and actuator boards are available. You will find a complete list with their description at https://wiki.wemos.cc/products:d1_mini_shields

Here are the sensor shields and their test programs for the workshop:

Line: 60 to 93
 
META FILEATTACHMENT attachment="wemosd1mini.png" attr="" comment="" date="1553073633" name="wemosd1mini.png" path="wemosd1mini.png" size="321062" user="UliRaich" version="1"
META FILEATTACHMENT attachment="d1MiniPinout.png" attr="" comment="" date="1553074041" name="d1MiniPinout.png" path="d1MiniPinout.png" size="555945" user="UliRaich" version="1"
Added:
>
>
META FILEATTACHMENT attachment="wemosEsp32.png" attr="" comment="" date="1557251361" name="wemosEsp32.png" path="wemosEsp32.png" size="218419" user="UliRaich" version="1"

Revision 62019-05-01 - UliRaich

Line: 1 to 1
 
META TOPICPARENT name="AFNOGWorkshop2019"

The WeMos D1 mini and its sensor and actuator shields

Introduction

Line: 53 to 53
 
  • a driver directory containing programs testing the module without Cayenne communication
  • a cayenne directory for the final program
Added:
>
>
You can find the code written for the workshop on github: https://github.com/uraich/MicroPython_IoTDemos.
 

Comments

<--/commentPlugin-->

Revision 52019-03-25 - UliRaich

Line: 1 to 1
 
META TOPICPARENT name="AFNOGWorkshop2019"

The WeMos D1 mini and its sensor and actuator shields

Introduction

Line: 18 to 18
  d1MiniPinout.png
Added:
>
>
In contrast to a PC the WeMos D1 mini has only very limited memory resources. While 4 MBytes of flash memory is rather comfortable, the amount of RAM (80 K) is a very limiting factor. When running micro Python a mere 30 kBytes is left for your Python programs. There are essentially 2 ways to make most out of the small amount of RAM:
  • You can pre-compile your programs to byte code, which takes less space in RAM
  • You can code freeze driver libraries, which means you integrate their byte code into The micro Python image. This however means that you must compile your own version of micro Python and flash it into the WeMos D1 CPU.
 A big number of sensor and actuator boards are available. You will find a complete list with their description at https://wiki.wemos.cc/products:d1_mini_shields

Here are the sensor shields and their test programs for the workshop:

Revision 42019-03-23 - UliRaich

Line: 1 to 1
 
META TOPICPARENT name="AFNOGWorkshop2019"

The WeMos D1 mini and its sensor and actuator shields

Introduction

Line: 32 to 32
 
  • The LED matrix shield
  • The SHT-30 shield with a SHT-30 I2C digital temperature and humidity sensor
  • The DHT11 shield with a DHT11 digital temperature and humidity sensor. This device uses its own private serial communication protocol
Added:
>
>
Here is an overview table showing the devices and the
Module Connections Functionality
1 button shield D3: GPIO 0 on / off push button
WS2812B RGB shield D2: GPIO 4 addressable rgb LED

DS1307 RTC and data logger

D1: GPIO 5 I2C SCL
D2: GPIO 4 I2C SDA

D5: GPIO 14 SPI Clock
D6: GPIO 12 SPI MOSI
D7: GPIO 13 SPI MISO
D8: GPIO 15 SPI CS

Real Time Clock

SD card interface

Buzzer shield D5 (default GPIO 14
D6 GPIO 12
D7 GPIO 13
D8 GPIO 15
passive buzzer
BMP180 shield D1 GPIO 5 I2C SCL
D2 GPIO 4 I2C SDA
I2C barometric pressure sensor and
temperature sensor
DHT11 shield D4 GPIO 2 temperature and humidity sensor
OLED shield D1 GPIO 5 I2C SLC
D2 GPIO 4 I2C SDA
64x48 pixel display with SSD1036 I2C controller
DD18B20 shield D2 GPIO 4 1-wire digital temperature sensor
SHT30 shield D1 GPIO 5 I2C SCL
D2 GPIO 4 I2C SDA
I2C temperature and humidity sensor
LED Matrix shield D5 GPIO 14 CLK
D7 GPIO 13 Din
8x8 LED Matrix
ir connections:
  For each of the devices I create 2 directories:
  • a driver directory containing programs testing the module without Cayenne communication

Revision 32019-03-22 - UliRaich

Line: 1 to 1
 
META TOPICPARENT name="AFNOGWorkshop2019"

The WeMos D1 mini and its sensor and actuator shields

Introduction

Line: 21 to 21
 A big number of sensor and actuator boards are available. You will find a complete list with their description at https://wiki.wemos.cc/products:d1_mini_shields

Here are the sensor shields and their test programs for the workshop:

Added:
>
>
 
Added:
>
>
 For each of the devices I create 2 directories:
  • a driver directory containing programs testing the module without Cayenne communication
  • a cayenne directory for the final program

Revision 22019-03-22 - UliRaich

Line: 1 to 1
 
META TOPICPARENT name="AFNOGWorkshop2019"

The WeMos D1 mini and its sensor and actuator shields

Introduction

Line: 19 to 19
 d1MiniPinout.png

A big number of sensor and actuator boards are available. You will find a complete list with their description at https://wiki.wemos.cc/products:d1_mini_shields

Added:
>
>
Here are the sensor shields and their test programs for the workshop: For each of the devices I create 2 directories:
  • a driver directory containing programs testing the module without Cayenne communication
  • a cayenne directory for the final program
 

Comments

<--/commentPlugin-->

Revision 12019-03-20 - UliRaich

Line: 1 to 1
Added:
>
>
META TOPICPARENT name="AFNOGWorkshop2019"

The WeMos D1 mini and its sensor and actuator shields

Introduction

We have seen that the ESP01 can be programmed with micro Python and that there are add-on sensor boards available. However, when we connect the sensor board we loose the serial connection to the PC. This can be corrected by soldering extra connectors to the top of the ESP01 board but this is fiddly and needs good soldering equipment and good soldering skills. The other option is to get access to the ESP01 through WiFi using WebRepl

A better and only slightly more expensive solution (we are talking about ~ 3.5 US$ instead of 2.5 US$) is the Wemos D1 mini board. This boards gives up more I/O connections and many more sensor and actuator shields are readily available on the market.

The processor board

The processor board uses an Espressif ESP8266 processor chip and 4 MBytes of flash are installed on the board.

wemosd1mini.png

You will find a description of the pinout at https://www.likecircuit.com/wemos-d1-mini-pinout

For convenience I copied the basic information here.

d1MiniPinout.png

A big number of sensor and actuator boards are available. You will find a complete list with their description at https://wiki.wemos.cc/products:d1_mini_shields

Comments

<--/commentPlugin-->

META FILEATTACHMENT attachment="wemosd1mini.png" attr="" comment="" date="1553073633" name="wemosd1mini.png" path="wemosd1mini.png" size="321062" user="UliRaich" version="1"
META FILEATTACHMENT attachment="d1MiniPinout.png" attr="" comment="" date="1553074041" name="d1MiniPinout.png" path="d1MiniPinout.png" size="555945" user="UliRaich" version="1"
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback