Audio Input Expander

Add 4 extra line level inputs to your amplifier

Similar projects worth following
This project allows you to add four more inputs to an amp using a NJM2744 4 to 1 switch IC. The inputs are selectable by using a rotary switch (SP4T), push button or I2C commands, with the unit automatically choosing which setup it is used in. The I2C address can be set via a solder jumper or just by changing the Arduino based firmware. A programming header is provided for easier programming. A 3D printable case is also provided for the rotary switch, more will be provided as the project progresses!

The project has been updated to use an ATMEGA328 to control the audio switch IC from either push buttons, rotary switch (1P4W) or I2C. It has been designed to integrate into my amplifier via I2C and can be controlled via that allowing the LCD display to be updated with the correct names and pre-amplifier amount. It doesn't need to be connected via the I2C and can be used by any amplifier using the push buttons or rotary switch. 

4 Input Exander

KiCad Schematic and PCB

application/x-zip-compressed - 46.56 kB - 06/16/2020 at 08:25



Printable Case - Includes STLs and 3MF files for some parts The "Case Front.stl" has two options for the LED lenses. For single extruder you can print "Case Front.stl" and then 4x "Lens - Push Fit.stl" and insert them manually. If you have access to a multi-extruder printer then you can use "Lens - Print In Place.stl" to have them printed together.

application/x-zip-compressed - 331.75 kB - 06/16/2020 at 08:24



Arduino listing for the system

- 6.63 kB - 05/28/2019 at 21:06


Audio Selector - Rotary Switch.skp

3D Printable case for using rotary switch selector

SSEYO Koan Play File - 418.14 kB - 05/28/2019 at 21:34


  • PCB Update - "J9" header

    smartroad06/19/2020 at 11:19 0 comments

    Since completing the PCB and building the first version I have further updated the circuit. For some reason I had put in the crystal oscillator for the ATMEGA. I have no idea why because it was always going to be driven by the internal RC oscillator, mostly as it doesn't have any specific need to accurate timing and the I2C bus is clocked so again is independent of the ATMEGA's clock. I am using MCUdude's MiniCore and with the RC OSC in use the XTAL pins can become additional IO pins. 

    With the removal of the crystal an amount of board real-estate was freed and I have used that space to implement the "J9" connector. This connector simply connects to the unused pins, D0, D1, D10, D20, D21, [A]REF, A6 and A7 and breaks them out for any other uses. D0 and D1 are the UART pins, although given the internal OSC probably not that reliable in that mode. There seems to be no ham in bringing them out and someone might find a use for them as well.

    As a side note for anyone who doesn't know, the A6 and A7 pins are analogue input exclusive so can not be used as digital IO.

  • Finally Working!

    smartroad06/15/2020 at 17:36 0 comments

    Finally I have got the new circuit designed and the PCB has arrived! Here is the board:

    And it built:

    Finally it works! The unit is able to take the push buttons on the front and select the right input. I have also used 6x2 phono connectors rather than individual connectors as I have used on my amplifier. These are cheap versions and you can see that the 1st port (the output) has fallen out. You can see a small tang that needed to be pushed 'up' for it to lock in correctly. Not seen in the above photo is the second power connector and the I2C connector (a 3.5mm stereo jack). The I2C port allows the unit to be controlled from the amplifier as well.

    You may notice that the crystal (and associated capacitors) are missing. This is a cost saving exercise as the ATMEGA doesn't need the timing precision to do it's job. My original idea was to use the internal RC oscillator so not sure why I put the crystal on there!

    I'll see about getting the new PCB and Arduino code uploaded soon.

  • New circuit design and PCB on order

    smartroad06/03/2020 at 14:44 0 comments

    I ordered the old PCB and it really didn't work. I didn't need the adjustable resistors as the issue they were there to resolve was actually a programming error on my amp (doh!). I think accommodating those caused issue with the audio signals so it just didn't work.

    The new circuit design has been implemented and ordered so hopefully this one will work correctly. I will update once I have them in hand!

View all 3 project logs

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates