Monday, March 15, 2021

A DIY ESP8266 I2C Testing Board

Introduction

ESP8266 is a system on a chip (SoC) specializing for Internet of Things (IoT) programming. It's very popular, and ease of programming. Most this chip is programmed using Arduino IDE with a lot of programming examples.

A DIY ESP8266 I2C Testing Board
Nodemcu V3 module #1

A DIY ESP8266 I2C Testing Board
Nodemcu V3 module #2

Nodemcu is single board computer containing esp8266 chip. It's ready to use with a factory programmed firmware. As shown in picture above, it has I/O connections, UART bridge for serial communication/program uploading, and on-board LED.

My Design

I'm interested in I2C devices communication with this module. I copped with I/O expanding while I was programming for my IoT project. I select MCP23017 for port expanding cause of it uses I2C requiring only two wires on a single bus. 

A DIY ESP8266 I2C Testing Board
My ready-to-use prototype

I added DS1307 real time clock IC, and an EEPROM chip. These three on board devices use I2C connected on a single two-wire bus. Hence other remaining I/O of esp8266 can be use for other hardware's interfacing - sensor, LCD, etc.

A DIY ESP8266 I2C Testing Board
Copper soldering side

I made this board by hands using dry film method at copper side. At components side I use toner transfer method, sticking laser printer toner text with PCB panel.

I design this PCB using Proteus as I am experienced with this software a decade now.

Schematic:

A DIY ESP8266 I2C Testing Board
Schematic diagram designed using Proteus
Finished Design:

A DIY ESP8266 I2C Testing Board
PCB design preview
Previewing in 3D:

A DIY ESP8266 I2C Testing Board
Preview of 3D design in Proteus


I put its copper layer side and legend side below.

A DIY ESP8266 I2C Testing Board
Copper layer - Normal
A DIY ESP8266 I2C Testing Board
Component side - Miror

Click here to download this PCB design package.

No comments:

Post a Comment

Search This Blog

Labels

25AA010A (1) 8051 (7) 93AA46B (1) ADC (30) Analog Comparator (1) Arduino (15) ARM (6) AT89C52 (7) ATMega32 (54) AVR (57) CCS PICC (28) DAC (1) DHT11 (2) Display (105) Distance Sensor (3) DS18B20 (3) dsPIC (2) dsPIC30F1010 (2) EEPROM (5) Environment Sensor (4) esp8266 (1) I2C (29) Input/Output (67) Interrupt (19) Keil (5) Keypad (10) LCD (46) Master/Slave (1) MAX7221 (1) MCP23017 (5) MCP23S17 (4) Meter (3) MikroC (2) Motor (15) MPLABX (66) Nokia 5110 LCD (3) OLED (2) One-Wire (6) Oscillator (8) PCB (6) PCD8544 (3) PCF8574 (5) PIC (107) PIC12F (2) PIC16F628A (2) PIC16F630 (1) PIC16F716 (3) PIC16F818 (10) PIC16F818/819 (2) PIC16F84A (15) PIC16F876A (1) PIC16F877A (9) PIC16F88 (1) PIC16F887 (60) PIC18 (19) PIC18F1220 (4) PIC18F2550 (3) PIC18F4550 (12) PWM (11) RTC (8) Sensor (10) SH1106 (1) Shift Register (11) Shift Registers (2) SPI (24) STM32 (6) STM32 Blue Pill (6) STM32CubeIDE (6) STM32F103C8T6 (6) SysTick (3) temperature sensor (11) Thermometer (21) Timer/Counter (30) TM1637 (2) UART (7) Ultrasonic (4) Voltmeter (7) WDT (1) XC16 (2) XC8 (94)