Note this that is the NodeMCU pin number and not the ESP8266 GPIO number. Unfortunately, the LiquidCrystal_I2C library is hard wired to the defaults. Moreover, the ESP8266 has also been upgraded from ESP-12 to ESP-12E (a few extra pins). I am trying to get my ESP8266's connect and send messages over an i2c bus. Re: Sharing I2C pins of a Heltec WIFI_Kit_8 (OLED-NodeMcu) #79254 UART1 is used to upload the firmware/program. NodeMCU I2C LCD Display Library Modifications. It provides a way to get noticed by external events. The values of each are the value to be set onto the respective GPIO line. This interfacing should also work with DFRobot I2C LCD displays. SPI is much simpler than I2C. I2C Pins NodeMCU has I2C functionality support but due to the internal functionality of these pins, you have to find which pin is I2C. Now I want to connect to a second I2C device, a DS3231 RTC, sharing the same SDA/SCL pins. For example { [1] = gpio.HIGH } would set pin 1 to be high. Master and slave are linked by three data wires, usually called MISO, (Master in, Slave out), MOSI (Master out, Slave in) and M-CLK. NodeMCU V3 NodeMCU has two UART interfaces, UART0 (RXD0 & TXD0) and UART1 (RXD1 & TXD1). Each digital enabled GPIO can be configured to internal pull-up or pull-down, or set to high impedance. In this, 8 pins are related to power and 2 are reserved. NodeMCU has four pins available for SPI communication. TXD0, RXD0, TXD2, RXD2. Go Down. I2C can be used to connect up to 127 nodes via a bus that only requires two data wires, known as SDA and SCL. Pages: 1 [2] Topic: ESP8266 Change i2c pins (Read 44114 times) previous topic - next topic. The remaining 20 pins are associated with pins of ESP-12E Module. SDA => D2. By default, the NodeMCU uses pins D1 and D2 for I2C serial communications. Recent Posts. The following image shows the pinout for NodeMCU board. Multiple pins can be set at the same time. All numeric keys are considered to be pin numbers. The I2C bus uses only two pins: SDA (serial data) and SCL (serial clock). ESP8266 Change i2c pins - Page 2. UART Pins. You can run the I2C bus on any two of D1 through D8, but not D0. Will this work, or will there be a resource conflict (because two libraries share the same i2c connection)? The NodeMCU should talk exactly to one slave device at the same time by setting that SS pin LOW while the other SS pins are high. The second generation of the NodeMCU is arguably the most popular one. A brief description of the pins is given in the following table. SCL => D1; SPI. Arduino Forum > Using Arduino > Programming Questions > ESP8266 Change i2c pins; Print. If you like to know how you can reduce the number of input pins for a keypad from 8 to only 2 I2C pins, with the help of the I2C multiplexer, then visit the keypad tutorial for Arduino, ESP32 and ESP8266. hutje. NodeMCU has Interrupts functions on its GPIO pins. Amica (the company that created both V0.9 and V1.0) made this board narrower to fit a breadboard. But changing this is easy. WeMos Mini D1 - Default I2C & SPI pins; I2C. GPIO Pins NodeMCU/ESP8266 has 17 GPIO pins which can be assigned to functions such as I2C, I2S, UART, PWM, IR Remote Control, LED Light and Button programmatically. You might want to switch this to another set of pins. A typical NodeMCU board (if it is based on the original NodeMCU Devkit design) has 30 pins. The 1602 LCD used in this project is connected to PCF8574 I2C I/O expander which allows it to communicate with NodeMCU board via I2C bus, this minimizes number of pins required and also may simplify the circuit.