Hardware-Related Content

In 2017 I wished to become more involved with hardware-related projects, so I ordered a bunch of Arduino-components and related hardware. Quite quickly I realized that the ESP8266 devices, most notably the "Wemos D1-Mini", was better hardware for me:

  • Smaller.
  • Cheaper.
  • With on-board wifi

I documented a couple of very very simple arduino projects, but then moved on exclusively to work with the ESP8266-based devices.

Software Defined Radio

Software Defined Radio

A brief overview of SDR, for tracking aircraft, and decoding commonly used 433Mhz transmissions.

Useful ESP8266 Tools

Backup & restore an ESP8266

This guide shows how to download the (compiled) code which has previously been uploaded to your Arduino, or ESP8266 device.

Command-Line OTA Uploader

This guide shows how to upload a compiled (hex) program to your ESP8266 device, via the command-line, without the use of the Arduino studio.

WeMos D1 Mini / ESP8266 Projects

The ESP8266 is a low-cost WiFi chip with full TCP/IP stack and MCU (Micro Controller Unit) capability. There are several common development-boards which use this chip, and the WeMos D1 is one of the most common.

The D1 boards are small, cheap (approximately €3.00), and easy to code for in Lisp, FORTH, (micro) Python, or plain C.

Absolute WeMos D1 Mini (ESP8266) Basics

This brief guide describes the basics of getting started; connecting the board, discovering its name, installing the appropriate software, and getting a WiFi example working.

Alarm Button

This brief guide describes the creation of an "alarm button", which will trigger an alarm sound on a PC when pressed.

Later I switched to using 433Mhz-based radio transmitters to allow using multiple cheap and reliable buttons.

Default Pins: WeMos D1 Mini

Brief overview of pins, for SPI & I2C.

ePaper: Efficient Displays

ePaper is very power-efficient, and allows you to produce clear, crisp, and readable output containing images and text.

Flash: Reading/Writing Files

The WeMos D1 Mini comes with 4Mb of on-board flash. Here we show how to use it for reading/writing files. Useful for HTTP-servers, for example.

Helsinki Tram Time Display

This project combines a simple I2C LCD display with an ESP8266 - to produce something that shows local tram-times, along with the current date & time. The tram-times are retrieved via HTTP from the Helsinki Transport API.

Message Publishing & Subscribing via MQTT

Simple example of how to configure an MQTT server, and work with it from the command-line, Perl, and the Mini D1.

NTP-Based Clock

This is a simple project which uses NTP to recive the current date & time, and then displays the latter on an set of 7-segment displays, complete with blinking : symbol.

Pixel Editor

Attaching an 8x8 LED Matrix to a WeMos Mini D1, and using a web-based pixel-editor to control what is displayed upon it.

Temperature & Humidity

This project builds upon the previous message-publishing example, and records the temperature & humidity, allowing it to be graphed and viewed via the message-queue.

Washing Machine Alarm

Wiring up a vibration-sensor to a ESP8266 board allows you to be alerted when your laundry has been washed.

Weather Station

This project combines a simple OLED display with an ESP8266, to show the local weather conditions, along with a three-day forecast. The details are fetched from a remote API so there is no need to add hardware for temp/humidity detection.

Web-controlled LED

This project demonstrates controlling the on-board status LED via your browser - no additional hardware required.

Web-based Radio

This project integrates a TEA5767-based FM-radio receiver with the Wemos Mini D1, allowing you to listen to the radio, and control it via your browser.