Using Artnet DMX and the ESP32 to Drive Pixels

I like to make things glow probably far more than a colorblind person should, and I’ve been looking for new and interesting ways to control the output of different lighting applications without having to hard-code in different color sequences. I’d like to be able to have some sort of complex visual, and then have that be able to play on the lights without having to think about which LED needs to be which color in a display.

Read more…

How to work with a Real Time Operating System and is it any good? (FreeRTOS, ESP32)

Using a real operating system to simplify programming with the Arduino IDE. Is this possible and how? Let’s have a closer look!
Operating systems were invented to simplify our lives. But, because they need a lot of resources, they only run on reasonable computers like the Raspberry Pi or a PC. Right? Wrong. Nowadays, we also get operating systems running on our small MCUs. Particularly interesting in this respect is the ESP32 because it has enough power and memory to accommodate such an additional burden. And the best: It already runs a version of FreeRTOS with all our Arduino sketches, and it is easier than you think. Is this useful?

How to Configure an ESP Mesh Network using Arduino IDE – Communicate among and between ESP32, ESP8266, and NodeMCU

Internet of Things (IoT) has seen exponential growth over the past couple of years. A new study from International Data Corporation (IDC) estimates that there will be almost 42 billion connected devices within the year 2025, generating over 80 zettabytes (ZB) of data. As the number of IoT devices grows; the amount of data grows, along with that, grows the need for superior network instruments; which can support this load.

However, if we consider a common host (like a generic router), it can connect to a limited number of nodes, less than 32 to be exact. And with an increasing number of IoT devices that could be in our home or industry, this is not sufficient. Currently, there are two solutions to this problem: The first one is to use a Mesh Router that can handle a lot more connections compared to a generic one, or we can use a network protocol known as Mesh Network.

Read more…

Controlling a ESP8266 with Alexa

Here is an easy project using a Echo Dot (Alexa) to control my ESP8266. I give it simple commands (Alexa, lights, off) and the command shows on the LCD screen attached to the ESP8266. Actual relays will be the next step to attach.

The project is based on the Adafruit tutorial at https://learn.adafruit.com/easy-alexa-or-echo-control-of-your-esp8266-huzzah/overview

with LCD and other modifications made by me. My code is found at https://pastebin.com/NjMcsTRh

Read more…

Autonomous Home Robot to Help Around the House!

A low-cost home robot that can do tasks around the house.

I have been developing an autonomous home-assistant robot. This robot was entirely designed, created, and built from scratch with no use of a kit or directions. In the process of creating this, I taught myself how to use ROS, Python, C, HTML, CSS, OpenCV, and other complex systems/languages.

The robot is able to travel around the house independently using Simultaneous Localization and Mapping (SLAM) with Robot Operating System (ROS) for navigation. It knows where to go based on pre-set waypoints. This machine is a prototype of a low-cost robotic assistant for the average person to use in their home. It combines facial recognition, navigation, and a web-control page, as well as other easy-control options such as gesture-control, Wii remote, and even hand-guided. The robot uses many Proportional Integral Derivative (PID) control systems which allows the robot to self-balance, making it more user-friendly, lighter weight, and maneuverable.

Read more…