Making noise with a SN76489 Digital Sound Generator – Part 3

In the first part and second part we examined the basics of the SN76489 hardware and the development of a library to manage sound production from this IC.

So, after all this effort, what kind of sound does this hardware produce? In this final post I run a few tests and dig into the resulting waveforms.

Continue reading “Making noise with a SN76489 Digital Sound Generator – Part 3”

Making noise with a SN76489 Digital Sound Generator – Part 2

In the first part we examined the basics of the SN76489 hardware and how to manage it at the hardware interface between MCU and IC.

To enable sound generation experiments, the first thing I did was create a library to allow me to write sketches without worrying too much about this underlying hardware management.

Continue reading “Making noise with a SN76489 Digital Sound Generator – Part 2”

Making noise with a SN76489 Digital Sound Generator – Part 1

Most computer games from the 80’s are recognizable by the bleeps and bloops they produced for sound. The easiest way to do this to toggle a single I/O pin to generate a square wave but there are some retro sound ICs that allow us to do much better for a minimal investment.

The SN76489 is one such IC that is still available at a very modest price and is easily interfaced to modern microprocessors.

Continue reading “Making noise with a SN76489 Digital Sound Generator – Part 1”

Solenoid Driver PCB

A part of a bigger project needed control circuits for up to 16 DC solenoids. Instead of wiring up a one-off prototype, I decided to design and manufacture a PCB to do the job in a scalable manner, and with a minimum of Arduino pins, so that the same circuits could be used for future high power on/off control tasks.

Continue reading “Solenoid Driver PCB”

Using the MAX7219 in your Projects – Part 1

The MAX7219 is a common and inexpensive IC used for controlling up to eight 7-segment LED displays (or 64 individual LEDs).

Beginners are often intimidated by how to use this versatile component with a microcontroller, turning to libraries to help them solve the problem. In most simple cases, it is more efficient to run the IC directly. Here’s what you need to know to get the job done.

Continue reading “Using the MAX7219 in your Projects – Part 1”

YX5300 MP3 Player

The YX5300 MP3 module is easily interfaced to a microcontroller, creating MP3 player with a user interface. Using the MD_YX5300 library and an understanding of how the device works (see the previous posts here and here), this article describes the code for a simple MP3 player and a more complex player with an LCD module display.

Continue reading “YX5300 MP3 Player”

YX5300 Serial MP3 Player – Message Sequencing

Since my previous YX5300 post I have received a number of questions related to how the serial messages between a host and the MP3 module work. Understanding this message flow is important when writing code that uses the MP3 player in an interactive application.

Continue reading “YX5300 Serial MP3 Player – Message Sequencing”

MPS020N0040D Sensor as a Pressure Activated Switch

The MPS020N0040D pressure sensor is a cheap component readily available for purchase on sites like eBay.

I recently needed to create a blow activated switch and, as I already had a few of these at hand, decided to design a minimal circuit that would provide a digital output when a threshold pressure was detected by the sensor.

Continue reading “MPS020N0040D Sensor as a Pressure Activated Switch”

Home Automation and The Internet of Things – Controlling

In the previous part we finalised the configurations for the IoT ESPEasy devices to give local control capability. In this  instalment we complete the configuration that enables our devices to create an integrated home automation system.

Continue reading “Home Automation and The Internet of Things – Controlling”