Business Card Bluetooth Speaker

ESP32 controlled business card that connects to your phone or laptop and plays sound on a built in speaker.

Similar projects worth following
2024 Business Card Competition Entry: CardTunes

I've wanted to make some sharp looking business cards for my side gig for awhile now, and I've also had a concept for a low profile speaker design I've wanted to try out.

The controller and programming portion of this project is nothing novel. In fact the code is simply running one of the ESP-IDF examples from Espressif. The uniqueness in this project is the speaker coils. Awhile back I made some coil PCBs for another project, and I had the thought - I wonder if I can make an audio speaker from two separated FPC coils and no permanent magnet. This is my attempt to do just that!

This business card utilizes:
-ESP32-WROOM-32 module
-MAX98357a I2S Audio Amplifier
-Some LEDs for some lighting effects
-USB plug built in to the board
-FPC coil speakers

Thank you for checking out my project! This was a fun little experiment that allowed me to test out the feasibility of a speaker design I had and play around with I2S audio. Considering the sound is coming from a 2-layer FPC soldered to a business card size PCB, I'm pleased with the audio quality I was eventually able to get, and I hope you enjoy it as well!


  • Can you make a audio speaker from two oppositely polarized FPC coils?
  • Play the audio over Bluetooth


Admittedly, the only code I touched in this project was modifying the name displayed on Bluetooth. The code is a demo provided from Espressif which can be found here:

The code works without modification with the MAX98357a I2S Audio Amplifier.

To wire the MAX98357a, I pulled some information from Adafruit with their board, but in reviewing the component datasheet, decided to omit the filter components and instead placed a 0ohm resistor on the outputs of the amplifier.


  • 5V from USB plug routed to MAX98357a and 3V3 linear regulator
  • ESD protection on USB pads
  • The center pads of the USB were connected to RX/TX and then to a FTDI programmer, rather than using the default D+ and D- of the USB. This removed having to put a USB to UART chip on the board.
  • ESP32 connections
  • FPC Coil design

Round 1: There's Audio...but not much

With the device powered and bluetooth connected, you could hear sound from the speaker if you held it directly to your ear. Anything that could be heard was extremely garbled. I was disappointed with these results, but I figured most speakers use a permanent magnet, so let's see what I'm missing with that. As soon as I held a permanent magnet from the fridge up to the coil that audio was magnitudes louder. 

Doing some research, it was suggested that what I was lacking was a permanent magnetic field in which the coil carrying the current from the audio could actually vibrate. By having both coils energizing and deenergizing at the same time, I don't think I was generating enough of a field for the coils to vibrate in. 

I didn't want to add a permanent magnet to my design, so I took the next best approach. I rotated the backside FPC coil by 90 degrees so it's input and output were connected to pads that were not connected to any other nets. I then jumpered one side to +3.3V and the other to GND. Now the backside coil was a permanent electromagnet and I had my constant magnetic field. 

Round 2: Clearer but Not Louder

Testing with the new wiring to the back coil resulted in some improvement to the audio quality, but there was no noticeable change in volume. The magnetic field just wasn't strong enough to generate the volume I desired, so I conceded and tested with the single audio coil, the permanent electromagnetic coil on the back, and placing a permanent magnet on the backside with a polarity the same as the electromagnet.

Round 3: Not Bad

With the permanent magnet in place, I get some real music from this. It's comparable to the audio quality of a dollar store speaker, and the max volume is comparable to a phone earpiece, but for a first attempt with only a 2 layer FPC, I'm pleased with the results. With more layers and more coils, modifying the gain, and getting a permanent magnet that covers the entire surface area of the speaker, I think the potential sound output could be much higher. 


JPEG Image - 2.54 MB - 06/29/2024 at 04:54



JPEG Image - 3.22 MB - 06/29/2024 at 04:54



JPEG Image - 2.98 MB - 06/29/2024 at 04:54



JPEG Image - 3.71 MB - 06/29/2024 at 04:54



JPEG Image - 3.38 MB - 06/29/2024 at 04:54


View all 7 files

  • 1 × ESP32-WROOM-32E
  • 1 × MAX98357a I2S Audio Amplifier
  • 2 × FPC Coil

  • Hardware Received

    Schwimmflugel06/24/2024 at 15:45 0 comments

    Hardware Has Arrived

    I received the boards and reflowed all of the components in place. Next step is to flash the device and see if there's any sound 🤞

    Instructions and details to follow once I have some success.

    Functional Overview 

    I thought it would be worthwhile to give a high level blurb about the intended speaker function. Basically I have two, double-sided FPC coils wired in parallel with opposite polarity. The coils are soldered apart from each other on opposite sides of the main PCB and cover the round cavity. The thought is that the opposite polarity with the sound signal will cause the two coils to either repel or attract each other as would occur with a traditional speaker with a coil and permanent magnet. I haven't been able to find similar designs online and maybe they exist or maybe there's a fundamental issue that will result in these not working, but even garbage audio would be a fantastic result for this concept! 

    More updates to come! 

View project log

Enjoy this project?



Mitchell Baldwin wrote 06/23/2024 at 06:51 point

I love where this project could possibly go and I will be keeping my eye close to this one. In my line of business; Licensed Insurance Specialist, you need to optimize every aspect of your brand and your personality. By being able to provide something like this along, people will more than likely share it within their family for two reasons. First, If I do my job as I always do, they will want to send referrals (plus I always reward referrals), and secondly if you have a business card in your hand of that caliber…who are you not going to show how cool it is; right???

My only thought on this type of card, after looking through your picture gallery, is how great it would be to figure out a way to put a logo, call to action or a ridiculous picture of my face over the speaker covering. It just felt like too much negative space sitting there in the open. I don’t know what material you are using or thinking of using, so I don’t know if something like that would work…but I would definitely buy as many as I could depending on price point. You have a really cool thing going here. I can speak to my future client before we ever meet! 

  Are you sure? yes | no

soni wrote 06/21/2024 at 19:57 point

Meybe create a mesh network (ad hoc) send and receive data. 

Imageine. Big conference, a lot of people in one place. The ability to send messages without using the Internet. Encrypt, secure and meybe anonimity.

ideal for SSB (example or other network

  Are you sure? yes | no

H3 wrote 06/19/2024 at 23:42 point

will u post a demo video when it is finished?

  Are you sure? yes | no

Does this project spark your interest?

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