Find yourself with a journey



DIY Sensor-equipped cello bow
Gyro/accel-based controller on a
cello bow
Elide Sulsenti © 2021
Investigating interactions between gesture and sound; guide how to build the instrument; future projects & more
How to build a sensor-wifi device for a string instrument's bow
This guide explains how to build a bow equipped with motion sensors (gyroscope and accelerometer), using an MPU6050 module and two ESP8266 boards. The system captures the bow’s movement data and sends it via Wi-Fi to Max/MSP through the OSC protocol.
⸻
Required Materials
• 1 × MPU6050 module (gyroscope + accelerometer)
• 2 × ESP8266 modules
• 1 × 3.7 V LIR2032H rechargeable battery
• 1 × CR2032 battery holder (compatible with LIR2032H)
• 1 × 3.7 V battery charger
• Thin jumper wires
• Soldering iron and tin
• (Optional) Strong double-sided tape or Velcro
⸻
Step 1. Uploading the Codes
The two ESP8266 boards must run two different sketches:
• Serverino → creates the Wi-Fi network and receives data.
• Bowerino → collects motion data from the MPU6050 sensor and sends it via Wi-Fi.
Steps:
1. Connect the first ESP8266 to your computer.
2. Upload the Serverino code using the Arduino IDE.
⚠️ ALERT! To make both sketches work, make sure to install all the required libraries.
If you have any doubts, feel free to contact me [here].
3. Connect the second ESP8266 and upload the Bowerino code.
The Serverino code can be downloaded [here].
The Bowerino code can be downloaded [here].
⸻
Step 2. Connecting the MPU6050 Sensor
On the ESP8266 board running the Bowerino code, connect the MPU6050 as follows:
MPU6050 ESP8266
VCC → 3.3 V
GND → GND
SCL → D1
SDA → D2
You can either solder the wires directly or use female-to-male connectors.
In my setup, I soldered a wire inside the MPU module’s loop and connected it to the corresponding pins on the ESP8266.
⸻
Step 3. Power Supply
Connect the 3.7 V battery to the Bowerino module:
Battery ESP8266
+ 3.3 → V
– → GND
Double-check the polarity before soldering!
Once connected, the sensor circuit will be autonomous and portable.
⸻
Step 4. Mounting on the Bow
There are two options for attaching the sensor to the cello bow:
• Embedded: drill a small cavity in the bow and insert the sensor module inside.
• Non-invasive: fix the module with strong double-sided tape or Velcro, so it can be removed easily.
This system can also be adapted to other instruments (bows, guitars, drumsticks, etc.).
⸻
Step 5. Connection and Operation
1. Turn on the Serverino module (connect it to power or via USB).
→ It will automatically create a Wi-Fi network visible from your computer.
2. Turn on the Bowerino module (powered by the battery).
→ It will automatically connect to the Wi-Fi network generated by Serverino.
3. On your computer, connect to the Wi-Fi network created by the ESP8266 (Serverino).
At this point, the two modules communicate with each other and transmit motion data via Wi-Fi.
⸻
Step 6. Receiving Data in Max/MSP
In Max, open the dedicated patch that receives OSC data from the module.
The patch displays in real time the acceleration and rotation values and can be linked to other functions (triggering, mapping, synthesis, etc.).
It also includes a 3D model that visualizes the bow’s movements in real time, and a connection to Wekinator for machine learning applications.
The Max patch can be downloaded [here].
⸻
Notes
This circuit was designed to fit the physical structure of a bow but can easily be customized.
It’s lightweight, battery-powered, and suitable for live performances where gesture becomes sound.
The circuit:
