Author Archives: R-B

Starling: A wifi enabled LED matrix display

Explore Embedded, a Banglore, India based startup has introduced a modular and wifi enabled LED matrix display named Starling, that can not only showcase text messages but also notifications from social networking websites, live scores from sports events websites, weather data from online weather services, and more. Starling comes in an easily cascadable modular design with one master module that features the ESP8266 device for Wifi connection and other slave modules to expand the display size horizontally. Each module is powered by Atmega8 microcontroller that stores fonts and custom characters LED patterns in a look up table, drives its own 8×8 LED matrix, and also communicates with other modules along the chain. In fact, the master module is smart enough to recognize the number of slave modules connected along the row and to receive the display data from anywhere using mobile and web apps. For those of you who would like to grab one of these displays in hands at discounted price, you may want to support their crowd-funding campaign. This project is only seeking $5000 on Crowd Supply. Also check out my portable bluetooth-enabled LED matrix display project that I build a while ago.

Starling: A Wifi enabled LED matrix display

Starling: A Wifi enabled LED matrix display

Dual USB-to-UART/I2C interface board

Jesus Echavarria‘s new project is a dual USB-to-UART/I2C serial interface board using two MCP2221 chips. This board can be used for debugging UART TX and RX lines as well as providing an USB connectivity in applications that have UART and I2C interfaces. With the help of Microchip’s free PC utilities, you can customize the MCP2221 identifiers and GPIO pins as well as directly communicate with any UART and I2C devices from its GUI interface for rapid prototyping with those devices.

MCP

MCP2221 USB-to-UART/I2C converter

MCP221 USB/Serial bridge (A): the basic connection for the MCP2221 converter. It has a small R-C filter on USB lines and a Reset pushbutton. In addition to USB/Serial converter, MCP2221 also has the feature to convert from USB to I2C master device. So, you can connect I2C slaves to this device and communicate with they (check the SW point). For the I2C communications, I let two jumpers to enable/disable the I2C pull-up resistors. Finally, I use GP0,GP1 and GP3 signals as a led’s indicators (low level active, default configuration). So GP0 lights when it receives a data over the serial port (red led). GP1 lights when transmit a data over the serial port (yellow led). And GP3 lights when there’s communication on the I2C port (green led).

RGB LED matrix clock with IR control

Sam Miller and Craig Andres designed a wall-mounted RGB LED matrix clock as their final project for the ECE 4760 course on Designing with Microcontrollers at Cornell. The clock consists of a 32×32 RGB LED matrix, which is controlled using the PIC32MX250F128B microcontroller. The clock also features stopwatch operation and alarm that can be customized through an IR remote. The clock also connects to a PC through a serial interface to synchronize the time with the RTC running on the PC.

RGB clock

RGB LED matrix clock

They write,

Our project runs off of a PIC32MX250F128B microcontroller, which handles all the controls and processing of data for the 32×32 LED Matrix. An Oscillator crystal handles the realtime-keeping component of the clock, and an IR reciever handles the input from our IR Remote Controller. We also have a serial connection to a PC so we can update the time to match the internet-regulated standards that most PCs sync with on a daily basis. All of these components come together to create the LED Matrix Clock we have designed, and we will go into more detail on these below.

The software is the largest part of our project and is almost more of a deliverable than the device itself. We spent a large amount of time creating a standalone library for the LED Matrix display as well as making the project as well broken into logical components as possible. The idea is that anyone can fork our GitHub Repository and easily start customizing the system as they see fit. Towards that goal it was heavy priority to make the project as clean as possible and modular so that in order to changing the use of any component (display being drawn, serial use, rtcc use, IR input, or other) is very simple.

PIC32 Project: Hand gesture lock

Rex Chen and Ziqi Yang have built a hand gesture lock system that utilizes a series of hand signs as a password to authenticate. The pattern of hand signs are imaged through a CMOS image sensor, and are analyzed using a PIC32 microcontroller to determine whether the observed sequence of the gestures match with the one that is pre-recorded into the system.

Hand gesture lock

Hand gesture lock

The Hand Sign Lock demonstrates the high-level design of the project and can be divided into four main parts: CMOS camera, control, PIC32 microcontroller, and thin film transistor (TFT) screen. The OV7670 CMOS camera provides images for the PIC32 microcontroller, and the buttons in the control module allows the user to select the appropriate mode and to perform actions when calibrating or resetting the password. The PIC32 microcontroller utilizes Otsu’s method for thresholding to transform the grayscale image to a binary (black and white) image. In addition, the microcontroller has multiple modes for a more intuitive user interface and constantly updates the TFT screen with the appropriate messages. Depending on the mode, after a image is received from the CMOS camera, the image is printed to the TFT screen for the user to view as well as for debugging purposes, which is helpful for determining functionality of the calibration step and evaluating the results from the thresholding algorithm.

See the demo video of this project below:

Another tutorial on using NRF24L01 wireless modules with Arduino

educ8s.tv has posted a new video tutorial on how to connect two Arduino modules with low-cost NRF24L01 wireless modules.

The NRF24L01 module is a low cost bi-directional transceiver module. The cost of it is less than 3$! You can find a link for it in the description of the video. It operates at the 2.4GHz band and it can achieve at a data rate of 2Mbits! Impressive isn’t it? It uses the SPI interface in order to communicate with Arduino, so it is very easy to use with it. We have to connect 7 of the 8 pins of the module in order to make it work with Arduino.

Unfortunately we can’t plug the module in the breadboard so we are going to use male to female wires in order to connect the module to Arduino. Pin number 1 of the module is GND. You have to connect it to Arduino Ground. The next pin is Vcc. You have to connect it to the 3.3V output of the Arduino Uno. Be careful! Do not connect it to 5V or you will destroy your module! The third pin is named CE and you can connect it to any digital pin you like. In this example I am going to connect it to digital pin 7. Pin 4 is CS and you can connect to any digital pin as well. I am going to connect to digital pin 8. The next pin is SCK which goes to digital pin 13 of the Arduino Uno. The next pin is MOSI which goes to digital pin 11 and the last pin in MISO which goes to digital pin 12. That’s it!

« Older Entries Recent Entries »