I have been working on some games for the ESP32 and needed some decent quality audio with a minimum number of additional components. I was bouncing between using the DAC and using the I2S bus. The DAC requires less external parts, so I went that way. I ended up creating a very simple library for use in he Arduino IDE. (Note: This only works with ESP32)
Like a million other people on the Internet, I’ve been experimenting with home weather logging. I roll my eyes at the phrase “Internet of Things”, but it’s hard to deny the potential of cheap networked sensors and switches, and a weather logging system is like this field’s Hello World application. Back in June I posted about my initial experiments in ESP8266 weather logging. Since then I’ve finalized the hardware setup, installed multiple nodes around the house, organized a nice web page to analyze all the data, and integrated everything with Amazon Alexa. Time for an update.
Using e-paper for a weather station is an ideal solution, as the data does not need to be updated often. By default, the station reaches out every 20 minutes for new data over WiFi and then updates the display. Daniel Eichhorn already has published kits for OLED (see “WiFi OLED Mini Weather Station with ESP8266“) and touch display (see “WiFi TFT Touch LCD Weather Station with ESP8266“). I like them both, but especially the TFT one is very power-hungry and not really designed to work from batteries. What I would like is a station which can run for weeks.
After the “WiFi OLED Mini Weather Station with ESP8266“, here is another one: this time with Touch LCD :-) In the previous article (“WiFi OLED Mini Weather Station with ESP8266“) I have used the OLED kit from blog.squix.org. And as promised, this time it is about the “ESP8266 WiFi Color Display Kit”
I admit to being a tiny bit obsessed with monitoring utility bills and gathering data on my usage patterns blow-by-blow. The energy monitoring has reduced my electricity bills, so I wanted to have a go at the water usage. Granted a lot of the water bill is fixed supply costs and sewerage charges which I can’t do much about.
A while ago I made some pulse counting breakouts with the DS1682+ RTC. I have finally got a chance to put them to good use interfacing with my mechanical water meter. The water meter has a spinning permanent magnet and in principle this can trigger a reed switch and generate pulses for accumulation by the RTC.
It is powered by USB, it can also be powered by the router USB port.
It’s built on a pretty old ESP-01 board.
It has two led, one is the ESP-01 WiFi connection status embedded one, the other is connected to the GPIO2 port, and it’s used for the DNS update status.
Recently, I completed a mini project together with two of my friends. So I am going to take this opportunity to share the project that we have made, we named it the Bridge Monitoring System (BMS) using Wireless Sensor Network (WSN). We are required to design an embedded system that is related with disaster management, either mitigation, preparedness, response or rehabilitation. To give you a high level overview of this project, basically we created three sensor nodes that acquire sensor measurement and transmit to central hub through wireless network. The sensor network works in a many-to-one fashion and data processing is done on the central hub. All the sensor measurement from each node is also displayed on the Host PC for user interface. Therefore, in this article, I am going to walk through some details of the project and how it works.
This is my first time designing a PCB for MSP430. I really like the NRF24L01+ booster pack but I would like something smaller to use for remote temperature sensors. With that in mind I’ve designed a 24.5 x 50 mm PCB (2 on a 5×5 cm prototype) featuring MSP430G2553 and an adapter for a 8-pin NRF24L01+ module using essentially the same pinout, with the intention of using the Spirilis library. There’s a jack socket to connect a 1-wire sensor (e.g. DS18B20), a 4-pin header to connect a temperature/humidity sensor (SHT22 or similar), a programming header that gives serial access, and 3 other general purpose I/O pins.