Adding a (extra) Hardware Serial Port using I2C on Arduino or other MCU – SyedTips – 3

One cool thing/feature I learned from the Arduino Uno WiFi board was how to implement/add an extra hardware Serial Port to the existing MCU using a I2C to Serial Bridge.

The Atmega328P MCU on the Arduino Uno has only one Hardware Serial port. If we’re interfacing a Serial Device to this MCU and would also like to use Serial debugging, an option is to use SoftwareSerial (which comes with it’s own set of issues and limitations). A better option is to have an I2C – Serial Bridge that’d allow the host MCU to interface with another Serial Device.

The Arduino.org team did this splendidly and used this SC16IS750IBS to have the MCU talk with the on-board ESP8266 through this I2C to Serial Bridge.

img_20160910_232432_905

i2c_uart_pin

You can read more about the implementation and details on the product page: http://www.arduino.org/products/boards/arduino-uno-wifi

Thanks.