I know it’s late, but the end of the year just got a little too busy for me.
Here is my LEGO MINDSTORMS EV3 version of ‘Carol of the Bells’. I found a version of the song in 3 parts and assigned each voice to an EV3. Timing was particularly difficult as while the notes played as expected, things like Loop and Bluetooth functions all take a finite time, which can throw out the timing of the song. In the end I sent a bluetooth message from the Master EV3 (left hand one) to the two Slaves ever 4 bars of the song. It does a pretty good job of keeping it roughly in time.
To make the Brick Lights flash in time with each note, requires some multi-tasking. I start the musical note and turn on the brick light at the same time. Then as the note is still playing, I take the note duration, divide by 3 and wait for that amount of time before turning the light off. This gives a nice effect whereby longer notes have the light left on for a longer period of time. Rather than do this for every single note, I used the My Block Builder to create my own block. It accepts inputs of Note name, Note Duration and Volume and then send all those variables to the right places.
![]()
This is a screenshot of one of the programs. You can download the full project file here – carol_of_the_bells.ev3

6 Comments
Comments are closed.

Did you use three part music sheets to program notes correctly? Where did you look to find it if you did? I have groups of four and would like to have them create a song in four parts. I can't imagine programming w/o note song sheets. Great challenging project for students.
This is just amazing and a nerdy robot thing to do. I love it.
Cool program. Great lights
This made me smile!
I love the fact that this is a totally novel way to use multiple EV3s.
: )
Awesome, I'm going to show my students tomorrow. Thanks for that. Happy holidays.
PS – If you want to see and hear an amazing Carol of the bells, listen to Carol of the Bells by Pentatonix. Enjoy.
https://www.youtube.com/watch?v=WSUFzC6_fp8
Very cool for carol of the bells