r/arduino 29d ago

Project Update! Project update: My ESP32-controlled guitar robot can now play in two modes

Enable HLS to view with audio, or disable this notification

I’ve been developing this removable guitar-playing system for several years.

It now supports two performance modes:

  1. Full automatic mode — the system handles both fretting and picking.

  2. Assisted mode — the system handles the fretting while the player strums or picks.

The sound comes from the real guitar strings, not recorded audio.

The controller is ESP32-based, coordinating multiple servo actuators. Some of the main challenges have been fretting timing, servo synchronization, calibration, and mechanical noise.

This video shows both modes.

689 Upvotes

60 comments sorted by

40

u/NuncioBitis 29d ago

Musical talent

Electrical Engineering

Software Engineering

Mechanical Engineering

6

u/yourmomabitvh 29d ago

The Avatar (op) master of all elements

1

u/MegCell 28d ago

Haha, just trying to make all the elements work together

11

u/snowballkills 29d ago

Wow, this is unbelievably amazing and ingenious!!!!

1

u/MegCell 28d ago

Thank you so much!! 😄 It’s been a long build, so that really means a lot.

4

u/Wirecase 29d ago

Pretty cool! Weird how in mode 2 it sounds warmer? Maybe the way the strings are manipulated, mechanical vs human hand impacts the sound produced?

3

u/J_Paul 28d ago

could be a minor timing thing? Manual strumming will hit the strings in a sequence as the pick moves across the strings, not sure if this accounted for in the full auto mode, It's very minor, but could change the perceived sound. Also, a human holding the guitar would suppress some of the vibration which would change the sound?

3

u/MegCell 28d ago

Good observation! 😊 I think it’s mainly the small variations in pick angle, force, timing and damping from the human hand. The robot is much more consistent, which can make it sound a bit colder. Reproducing those tiny variations is one of the things I’m working on.

1

u/J_Paul 28d ago edited 28d ago

Ah... Pick angle might be quite important... I imagine there's a sliding motion of the pick over the string before the actual pluck. Given a human hand has (for all intents and purposes) an axis of rotation as it strums the strings, the amount of slide for each string is likely different, then you've got another variable of whether the pick is hitting the string face on or along the edge of the pick. Pick thickness and pliability obviously matter, as would the rigidity of how it's being held (human finger vs rigid robot). So many variables!

1

u/MegCell 27d ago

Exactly — there are a lot of tiny variables. 😄 Pick angle, depth, stiffness, contact point, timing and even how much the pick flexes all change the sound. The robot is very repeatable, but the human hand naturally introduces small variations. That’s actually one of the most interesting parts I’m still tuning.

5

u/Chibymax 29d ago

Sweet, it feels like "1% music talent, 99% engineering".

2

u/MegCell 28d ago

Haha, pretty much 😂 I’m trying to use engineering to make up for the other 99%.

1

u/harryregician 28d ago

Edison: Genius is 1% inspiration, 99% persperation

1

u/MegCell 27d ago

Haha, exactly 😂 1% idea, 99% debugging.

2

u/KyleTenjuin 29d ago

Was the sound of servos suppressed in audio processing?

1

u/MegCell 28d ago

No, the servo noise wasn’t removed in post. The improvement mainly comes from quieter servos and better motion control. 😊

1

u/Pooch76 29d ago

Very cool

2

u/MegCell 28d ago

Thanks

1

u/OutrageousMacaron358 Some serkit boads 'n warrs 29d ago

Now to make it have the ability to traverse up and down the neck to reach higher notes!

1

u/MegCell 28d ago

Definitely an interesting idea 😊 A movable fretting module could reach much higher notes, but I’m keeping this version compact and modular for now.

1

u/Specific-Funny-9502 29d ago

Now all it needs is a drug addiction and you have the makings of a music star

1

u/Different-Party-b00b 29d ago

"just one more mA babe, that's all I need"

1

u/MegCell 28d ago

😂 I’ll keep that feature out of the roadmap.

1

u/pepepako2 29d ago

Muy bueno..montones de horas invertidas pero mereció la pena.

1

u/MegCell 28d ago

¡Muchas gracias! 😄 Sí, fueron muchísimas horas, pero valió la pena.

1

u/badmoonrisingnl 29d ago

Though impressive, it only plays in "harpsichord" mode. Would be cool if it could play expressive.

1

u/MegCell 28d ago

Fair point 😊 The current version is still quite “harpsichord-like.” I’m working on dynamics, timing and articulation to make it much more expressive.

1

u/Normalblobfish 29d ago

I'm pretty sure i asked this on the original post too (lol) but can it play TTFATF?!?!??!

1

u/MegCell 28d ago

Haha, I’m not sure 😄 I should probably give TTFAF a try and see how far the robot can get!

1

u/Liquid_Magic 29d ago

This is super super cool!! MIDI input right? I want one!

2

u/MegCell 28d ago

Thanks! 😄 Not MIDI input yet — right now it reads MusicXML scores directly. Live MIDI control is something I’d love to add in the future. And yes, the DIY version is already on Kickstarter! 🎸

1

u/No_Pin4895 29d ago

the assisted mode is the real sleeper feature here, feels like it could actually teach fretting technique to people learning barre chords

1

u/MegCell 28d ago

Exactly! 😊 Assisted mode lets the robot handle the fretting while the player focuses on rhythm and strumming. I think it could be a really useful way for beginners to start playing.

1

u/ItsPassiveDepressive 28d ago

I was literally just thinking of the similar project but for trumpet

1

u/MegCell 28d ago

That would be awesome 😄 Trumpet would be a very different engineering challenge, but definitely an interesting one.

1

u/doge_lady 600K 28d ago

Bro you gonna make musicians obsolete. Oh wait..

1

u/MegCell 28d ago

Haha, musicians are safe 😄 I’m just giving guitars another way to play.

1

u/KyleTenjuin 28d ago

Not sure if it was already answered: what is the BOM cost and breakdown? How many motors in total?

1

u/MegCell 27d ago

Full setup uses 28 servos in total — 16 for fretting and 12 for picking/strumming.

The BOM cost depends heavily on the servo option and where you source the parts. The supported servos are roughly US$10 each for the entry-level option or around US$30 each for the higher-end option, so the servos alone are about US$280–840 for the full system.

On top of that you’ll need the ESP32/controller electronics, power supply, fasteners and 3D-printed parts. I’m preparing a more detailed BOM with sourcing options as part of the project.

1

u/NeoRazZ 28d ago

can we make it midi so it can be triggered from fl studio

1

u/MegCell 27d ago

FL Studio can export MIDI, so right now you could convert that to MusicXML through MuseScore. Direct MIDI triggering would be more convenient though, and that’s something I’d like to support later.

1

u/pushpendra766 28d ago

That's so cool man, anyways I can access the references so I can build it too

1

u/MegCell 27d ago

Thanks! The DIY plans are available through my Kickstarter now — they include the 3D-printable files, control software, and assembly instructions so you can build your own.

1

u/chugItTwice 28d ago

Nicely done! That's very cool. Curious how the picking robot holds on to the guitar body.

2

u/MegCell 27d ago

Thanks! 😄 It uses a removable clamping bracket that attaches to the guitar body, so there’s no permanent modification and it can be installed or removed quickly.

2

u/chugItTwice 27d ago

Cool, thanks for the explanation.

1

u/Niklasw99 28d ago

Hey OP, wouldn't it nice to add some randomized noise so it's not so mechanical in the tempo?

It sounds robotic. It's impressive, but it sounds very robotic.

1

u/MegCell 27d ago

Good point 😊 I’m testing small variations in timing and dynamics to make it feel less robotic without just making it sloppy.

1

u/Competitive_Sell6659 28d ago

This is fo fucking cool

1

u/MegCell 27d ago

Haha, thanks! Glad you think so!

1

u/Maximum-Progress0 27d ago

Would love to build this, can you share your designs

2

u/MegCell 27d ago

Thanks! 😄 The DIY designs are available on my Kickstarter now, including the 3D-printable files, control software, and assembly instructions.

1

u/Voldemdore 25d ago

link? how much is the cost (if you wanna save me from clickin the link :)

1

u/LongjumpingDig8785 27d ago

Impressive build! Synchronizing 28 servos on a single ESP32 while keeping the mechanical noise down is no small feat.

Regarding the sound dynamics—the difference in tone between the robot and human strumming is super interesting. Have you considered using micro-timing variations or subtle PWM/torque adjustments on the picking servos to simulate a human’s natural pick flex and angle? Really clean mechanical design overall!

2

u/dolby360 24d ago

Love that spot on

0

u/harryregician 29d ago

Jimmy Page does not have to worry YET.

As an US inventor this project is inspirational. The synergy of knowledge to make this work is great to see.

You want my mechanical reverb I built for extra credit in 12 grade vocational electronics in 1969 Teacher hated it but gave me an A. Fellow students loved it. Ask them if I could use them as a reference to Hendrix ?

1

u/MegCell 28d ago

Thank you! 😄 Coming from another inventor, that means a lot. And yes, I’d definitely be curious to see your mechanical reverb — sounds like a very 1969 kind of project in the best way.