Skip to main content


Generate DTMF tones only using Arduino

Dual-tone multi-frequency (DTMF) is a common signaling system used in telephone networks and other communication devices. It uses a mixture of two sine waves to generate tones which represent ten digits, the letters A to D, and the symbols # and *.

While I’m examining other Arduino based DTMF generators I noticed most of the designs are based on Holtek HT9200 DTMF generator IC. After a couple of experiments, I figure out that Arduino itself is capable enough to generate DTMF tones without using any external IC or generator.

The design which I explained in this article is based on R-2R ladder DAC. I did this design using Arduino Uno board and still this library support only for this board. But it can easily extend to other AVR MCU based Arduino boards.

The R-2R ladder is attached to the PORTD of the MCU which is Digital out 0 to 7 in Arduino Uno board. In this design, I used 100Ω and 220Ω resistors to construct the R-2R ladder circuit.

In MCU, waveforms are generated using precalculat…
Recent posts

Arduino interface for TFA9842AJ Power Amplifier

TFA9842AJ is quiet old 7.5W audio power amplifier introduced by NXP. This amplifier IC is no longer produced by NXP, but still, it's available to purchase in many places, which including eBay, AliExpress, Amazon, etc.

I tested a couple of TFA9842AJ based amplifiers in the last couple of years. The main reason I liked TFA9842AJ is its simple, clean design, wide operating voltage, and high-quality bass-rich audio output.

Thanks to it's built-in DC volume control circuit this audio amplifier can easily interface with MCU. In this article, we provide a generic TFA9842AJ module which works with most of Arduino boards, MCUs and SOCs.

As illustrated above, this system consists of LM321 operational amplifier and TFA9842AJ IC. To support both 5V and 3.3V logic inputs we introduce logical level selection jumper (J2) into this design. To control the volume PWM input must apply to the J1.

In this system volume of the power-amplifier is proportional to the duty cycle of the PWM input. In …

Replacement motor driver for mini drills

In my workshop, I got a couple of INGCO power tools. INGCO is a Chinese power tool manufacturer, and this brand is quite popular in Sri Lanka. Out of those tools I frequently used INGCO MG1502.2 mini drill. I purchased this drill three years back and mainly use for engraving and for precision drilling.

A few days ago while I'm using this drill, it suddenly stopped. As a first thing, I checked brushes and mains-lead. After a few minutes of inspections, I found out that both brushes and mains lead are in perfect order. To further examine I decided to open the drill.

The internal layout of this drill is quite simple. It mainly consists of an AC motor and electronic speed controller circuit. After a few checkups, I determined that the electronic speed controller is dead. In speed controller board I notice some unknown microcontroller, 74HC595 shift register, and Z0409MF TRIAC. As like many Chinese products here also they erased the IC number and other markings of the MCU. After exam…

Programmable light controller

The main objective of this project is to design a maintenance free and low-cost light which automatically turns on and off at the predetermined time of the day.

To meet the above requirement I designed this controller using ATmega8 MCU and DS1307 RTC. The driver stage of this light controller is intended to work with commonly available 7W LED modules.

The core component of this programmable light is ATmega8 low power CMOS microcontroller. The main reason to select this microcontroller is it’s lower cost and higher availability. Except for the above two reasons this microcontroller also bundled with a rich set of peripherals which including 23 GPIOs, 3 independent timers, Two-wire serial interface, EEPROM, etc.

Apart from ATmega8 microcontroller, this system uses DS1307 real time clock to maintain system time. Like ATmega8, DS1307 is also a very popular RTC in the market.

This controller is designed to work with a 24V DC power supply. The main reason to select 24V is that most of the…

Lightning arrester installation

Recently I build my new house near Maharagama town. While building this house I allocate space for my antennas and observation equipment. Before installing antennas, I decided to install a lightning rod into the house. The main reason to install a lightning rod is because of the height of the building. It nearly 48 feet (approximately 15m) high, and located in open space, because of those reasons there is a very high probability to hit lightning into my antennas and other equipment.

At the time of this writing, in here in Sri Lanka mainly two types of lightning arrestor systems are in use. The first type is a conventional lightning rod. This type of lightning rod is very common in Sri Lanka and it made with copper rods. The second type is ESE (Early Streamer Emission) type lighting arrestor. This ESE type is now getting popular in here and I saw it in a couple of new buildings. As I noticed most of the lightning arrestor installation companies are now moving into this ESE type soluti…

TCS230 based Bluetooth color picker

This is TCS230 based Bluetooth color picker prototype which we build to test the concept. In here the idea is to extract color from any physical object and transfer it to PC / mobile. To test this concept, we use low-cost TCS230 color sensor.

TCS230 is programmable color light-to-frequency convert IC. This chip produces square wave output with frequency directly proportional to the light intensity. To drive this sensor and capture its output we used PIC16F628A microcontroller. The processed output is then transferred to the host using the HC-05 Bluetooth SPP (Serial Port Protocol) module.

In PC we wrote small Python script to display captured value and color in a Window.

In this design, we drive the TCS230 sensor with 20% frequency scaling. The entire circuit is built using commonly available modules and components. For the color sensor, we use the 8-pin TCS230 sensor module which is commonly found in eBay and other online electronic component stores. This module comes with 4 white LEDs…

13.8V 5A Power Supply

13.8V power supplies are commonly used in amateur radio experiments. Most of the portable amateur radio transceivers are designed to work with a 13.8V power source. We mainly build this power supply unit to power some of our amateur radio circuits and modules.

This design is based on the popular LM338 5A voltage regulator. We choose this regulator because of to it’s higher current rating, short-circuit protection feature and higher availability.

Apart from that, we include MC3423 based crowbar sensing circuit to preventing an over-voltage condition of a power supply unit.

We design this circuit by using commonly available 18V×2 (5A) + 12V (1A) transformer. This transformer is available in the market because it’s commonly used with some AF power amplifier systems/kits. We use its 12V terminal to drive 120mm - 12V cooling fan.