Breathe the pressure, come play my game, I'll test ya

Nice write up here!


wouah thanks a lot @MrBroccoli for the link:

  1. the video is cool (and instructive)
    2.the project is cool (and relatively cheap and hack/do"able")
  2. repo is cool too l (cause it looks complete with hw + sw sources)
  3. and the guy is cool too (see 1, 2, 3)

but I was hoping for an IRL demo in the video :slight_smile:

I was quite surprised when he gave the cost of well over $200. I was expecting it to cost 1/10 of that. I wonder if there is a lower cost sensor to be used?

1 Like

I can’t wait to see your version @riban … all very exciting isn’t it?

1 Like

“premium” parts. Yeah you can go 1/10th of that, maybe. That pressure sensor looks quite expensive at $25. But AliExpress got you covered at ~$3 :slight_smile:

Not sure about pressure sensitivity and so on, I just looked up alternatives.

1 Like

on mouser the ABPDANT005PGAA5 pressure gauge is listed at 21.50€

1 Like
1 Like

And then you have to understand theses values :wink:
For this project: TeensieWI woodwind USB MIDI controller |
It use an up to 10 kPa = 5v but for usability, a “closed” sensors is not easy to use.

Fun fact, you can make a breath sensor for cheap if it’s just for trying: Simplest Breath Sensor for a MIDI Wind Instrument EVER - From a plastic water bottle. - YouTube


Interesting project. It reminds me a little of the Eigenharp Pico, though without the pressure-sensitivity in the keys:

Another cool device is the “Open Woodwind Project” by Jeff Hopkins. His wind controller has an onboard synth using the Teensy Audio library, and can be programmed remotely using TouchOSC.

1 Like

There are a few sensors around like this, based on the HX710B. The ADC is 24-bit, so its really sensitive. Its a little prone to drift and is not temperature compensated, though there is a built in temperature sensor so I guess you could do it yourself. It has a weird serial interface in which data frames are 25 to 27 bits. 24 bits are the data, and then the number of bits determines whether the next sample is temperature or pressure, and also selects the sampling rate (10Hz, or 40Hz). I considered using this, but the pressure port on the sensor is really small and might be prone to blockage from breath condensation, etc.

Scott Harden’s web site has some useful information. He desoldered the transducer and identified it as a PS010s:


The protocol is probably the last issue I would worry about. The issue will likely come from any potential drift.
Sure, you can have the unit being calibrated at each power up, but this doesn’t account for temperature drifts, for example, as human exhaled air temperature is most likely higher than the ambient temperature that you started with.
As for the nozzle diameter being clogged, you could technically have an isolation solution for this. You’re only interested in the variation of the pressure in relation to the calibrated value.
Thus, you can have an isolation chamber with a diaphragm that passes the pressure from one side to another.
The issue with this is that you now depend on the air-tightness of the plumbing on the sensor side, plus the air pressure variation due to ambient temperature changes.
So yeah, choosing the more expensive but less hassle option may be the way to go. At least for prototyping, anyways

1 Like