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.

NXP TFA9842AJ Power amplifier IC.

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.

Schematic of the TFA9842AJ module.

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 0% duty cycle the amplifier is in standby mode. At 100% duty cycle it performs with its maximum gain.

This module is designed to work with 12V 3A DC power source. At the testing stages, we share this power source with the Arduino board.

We successfully test this module with the following development boards and MCUs:
  • Arduino UNO
  • Arduino MEGA 2560
  • Arduino Due
  • Orange Pi 3
  • ATmega8
  • ATmega328
  • ATmega640
In Arduino platforms, we produce PWM output using analogWrite() function. In other platforms and ICs, we generate PWM output using inbuilt hardware PWM generators.

In this design, we use SMD components to miniaturize this module. If you plan to build this using through-hole type components, use LM358 as an operational amplifier (U1).

This module is released under the terms of CC BY 4.0. The KiCad design files of this module are available to download in here.