Breath Controller for synths w/ BC input: need design help - Page 1
Forum section: electronics / projects

author: stubbsonic
author_rank: Contributor
timestamp: November 13, 2015, 07:43:44 pm
content: Hi, this is my first post here. Here goes...GOAL:I want to build a responsive breath controller (BC) circuit using a MPX2010GSX pressure sensor, an op amp, and some other components to adjust the gain and offset. This circuit will connect to keyboards with a Yamaha-BC-compatible input. I'm hoping the project will be a good learning experience for myself and others. I'll build a working prototype and test, and do what I can (with your help) to finish with a final schematic, parts list, mechanical plan for breath tubing, and clear instructions with a wiring diagram that will be shared with other keyboardists seeking a DIY Breath Controller project.BACKGROUND:As a trombonist, I find that playing a keyboard with a breath controller feels very intuitive and expressive. Yamaha made the BC-1, BC-2, and finally, the BC3a breath controller-- which was discontinued in 2011. These connect to the BC inputs found on yamaha, kurzweil and other keyboards. Currently, used Yamaha BC's are rare, expensive and maybe unsanitaryA few companies are selling very expensive BC's that will work with USB, MIDI, or BC inputs. Based on the interest I've seen on forums and in a petition to Yamaha to bring back the BC3, I believe there is a substantial number of BC enthusiasts who would love to have a DIY plan to make a compatible BC of their own for a small fraction of the cost. I find that my current knowledge is insufficient, and I need your help.RESOURCES I HAVE NOW:1. eagerness to learn2. specs & schematics from Kurzweil for their BC input3. MPX2010GSX pressure sensors4. datasheets for sensor & possible op amps5. schematics for Yamaha BC1 and BC2 (can't find BC3a, the last/best)6. breadboard, connectors, resistors & pots (from Radio Shack electronics lab)7. multimeter, soldering iron, soldering skills & basic knowledge.WHAT I (THINK I) NEED:1. guidance with designing circuit: "soup to nuts"2. guidance with choosing component(s)- op amp, resistors/pots, caps, etc.3. some idiot-level wiring instructions, and other helpful hints.BC INPUTThe BC input on the Kurzweil K2661 is compatible with Yamaha BC1, BC2, and BC3. It is a 3.5mm stereo jack that: provides -15.32 V on tip, expects a range of -0.5V to -8.5V from BC on ring, sleeve is ground. The suggested maximum current load for the BC input is 20mA.MPX2010GSX SENSOR:Accepts 10-16V supply, outputs a range of 1-24mV, only draws 6 mA. Datasheet linked below.http://www.mouser.com/ds/2/161/MPX2010-256329.pdfYAMAHA BC1 & BC2:These appear to use a sensor and op-amp, and are powered by the BC input. The BC-1 circuit is from a CS-01 synth schematic. The BC2 schematic isn't sourced.http://www.jonstubbsmusic.com/misc/yamahabc1.jpghttp://www.jonstubbsmusic.com/misc/yamahabc2.gifKURZWEIL K2661 BC CIRCUIT SCHEMATIC:http://www.jonstubbsmusic.com/misc/k2661bcschematic.jpgADDITIONAL INFO FROM KURZWEIL ABOUT THE CIRCUIT:"The breath control jack, J708, is designed to interface with a Yamaha breathcontroller. This is an active device containing an op-amp and semiconductorpressure transducer. The active circuitry is powered by a negative voltagemagnitude greater than -8 volts supplied through the tip contact of the 1/8inch mini jack. This is supplied from -15V through R72 and C40.The output voltage of the breath controller appears on the ring connection andranges from -0.5 volts for no breath pressure to about -8.75 volts formaximum breath pressure. Op-amp U10-7 inverts this range and offsets it(R64) for a 0 to +5V range into the processor's A-to-D converter input. R71and Shottky clamp diodes D23/D24 prevent overdriving of the A-to-Dconverter's input.[EDIT: NEW INFO FROM KURZWEIL SUPPORT--"The Breath input jack supplies -15V through a 220 Ohm 1/8 wattresistor to the Tip connection. The maximum safe current is 23.8mA.Suggested maximum is 20mA. This should be enough to powerseveral standard op-amps."]Breath controller insertion detection is through the jack's tip contact. Whennot plugged in, -15V from that contact will be divided through R74 and R73 toapproximately zero volts for BRTHSNS. When plugged in, R74 is disconnectedand R73 pulls this signal up to +5V.The breath control jack and control pedal #2 jack share the same A-to-Dconverter input. U10-1 inverts control pedal #2's signal with a slight gainthen sums it with the breath control signal in U10-7. Generally only onejack at a time should be used. However it is possible to use pedal #2 toset a variable "minimum" control value when the breath controller is notbeing blown into which may be useful."CURRENT DRAW TEST ON BC2:Thanks to Chuck White for this additional info:"I measured 8ma of supply current to the BC2 in the static state….no breath applied. I see no reason that it would change significantly with breath applied but I can’t easily measure the current with the BC2 assembled….or apply breath with it disassembled. The output of the BC2 is a voltage which in the Wind Machine is connected to an op amp so there is essentially no current drawn from the BC2 output into the Wind Machine."THANK YOU (even for reading all this!!)

author: obiwanjacobi
author_rank: Super Contributor
timestamp: November 14, 2015, 10:03:50 am
content: I would just wack it together on a bread board. Start with the BC1 and see how it goes. Then perhaps expand to the BC2. Buy/get some different sensors and opamps and experiment...Would also be fun to build a BC-input to MIDI converter as a follow-up project...

author: eevlurker
author_rank: Newbie
timestamp: November 14, 2015, 03:46:32 pm
content: I use this and it works great.http://www.tecontrol.se/products/uni-midi-breath-controllerIt is a breath controller with both USB and MIDI DIN outputs. It works with either a computer or a synth (standalone with a synth, as long as it is powered through the USB connector). There is also a USB only model, for those who use virtual instrument plugins on computers:http://www.tecontrol.se/products/usb-midi-breath-controllerThere are some interesting videos on YT, for example

author: happyrat1
author_rank: Contributor
timestamp: November 14, 2015, 04:55:15 pm
content: Perhaps I can shed a bit of light on this.Both stubbsonic and myself are owners of Kurzweil Keyboards and members of a Kurzweil forum where this discussion began.One great feature of the Kurzweil is that it possesses a native breath controller port that is plug compatible with the BC2 and BC3A from Yamaha.Regrettably Yamaha discontinued production of the BC line a few years ago leaving us with tacky addon MIDI breath controllers and other kludges, or else the option of buying used (yuck!) breath controllers on Ebay.Recently a new company named Kelfar Technologies has announced the BCK-1 which it claims is plug compatible with the BC3A. Unfortunately it is priced at $199 USD.http://kelfar.net/BCK-1.htmWhat stubby and I are trying to do is reverse engineer the BC3A and whomp up home brew units for under $40 USD which is the max value of the necessary parts.Our main snag is lack of tech info from both Kurzweil and Yamaha as to what the exact specifications should be.Since these Kurzweil keyboards cost well over $2000 new we're treading as cautiously as possibly so as to not brick our boards with a home brew experiment.One might assume that the BC2 schematic is straightforward enough, but as stubby mentioned, we have no idea of the max and nominal current load of the Kurzweil's BC port and therefore are flying somewhat blind.Myself, I took a few electrotech courses back in college three decades ago and my knowledge is hopelessly rusty and out of date. While I can still read a schematic and assemble a protoboard as well as the next guy, my design skills are nowhere near up to today's standards.If I were to guess, I'd imagine we'd be safe if we kept current loading below 20 mA max, but I'm not even certain of the polarities of the current ranges required or whether or not we'd have to invert the output of the pressure sensor we've decided to go with.Myself, I have other life issues to deal with which will probably keep me from attacking the problem with a proper test bench setup for at least another year from now, but stubby is all gung ho about building one now.At any rate, neither of us wants to spend $200 plus shipping plus taxes for what amounts to a simple piece of gear containing about $15 worth of parts and realistically worth about $60 retail.If anyone out there could whomp up a proper schematic suitable for assembly on a perf board in a project box, we, and the entire Kurzweil community would be eternally in your debt.Thanks for listening,Gary

author: Andy Watson
author_rank: Super Contributor
timestamp: November 14, 2015, 05:23:47 pm
content: Quote from: happyrat1 on November 14, 2015, 04:55:15 pmAs you say, you need more information.I would start with, say, a 10k pot across the power pins and wiper to the control signal pin of the input to your Kurzweil. Use a DVM to map-out the response of the Kurzweil.I see the OP has already mapped the expected output.Then, as suggested above, I would "wack together" the BC1 circuit. Directly substitute the MPX sensor for the IT43904. I suspect the circuit will require more gain to function properly - but suck-it-and-see will be the easiest option. (perhaps that should be blow-it-and-see)As for the power supply - the partial schematic of the Kurweil shows that the -9V supply is protected by a 100 ohm resistor - so you have 9 volts available at a source resistance of 100 ohms - make of that what you will - with the right sensor it should be possible to obtain a working system.

author: helius
author_rank: Super Contributor
timestamp: November 14, 2015, 05:29:25 pm
content: positive ground and negative supply is only "tricky" when there is a shielded chassis. In your case there is no problem: simply define the sleeve as + and the rail as - and connect the sensor with the appropriate polarity. the output of the sensor goes positive with increasing pressure, so you will need to invert the signal while amplifying it. Again, no problem, since opamps couldn't care less about ground (they are "rail to rail").I'll echo obiwanjacobi, just whack it on a breadboard and adjust until you're satisfied with the output. the supply voltage range means it will run easily from a battery. schematics for inverting opamp topologies with gain are very easy to find. Start with Texas Instruments's Design Reference "Op Amps For Everyone".

author: stubbsonic
author_rank: Contributor
timestamp: November 15, 2015, 08:41:52 pm
content: [I edited the original post to consolidate info to one location.]I'm very willing to work in this with trial & error on a breadboard and with a multimeter. However, I still need a little help.Right now, I can put the MPX2010GSX sensor on a breadboard with one or two LM358 dual op-amps. However, I don't even know how to begin wiring an op-amp for this application.helius, Thanks for directing me to "Op Amps for Everyone". The PDF I found was 609 pages. I AM eager to learn, but I know I won't make it cover to cover on that one (I wouldn't live that long). Hopefully, I can find my way around it enough to get started that way.obiwanjacobi, I have a little board called a MIDI CPU which can take pots and convert them to MIDI control streams. So that would be a modified circuit (perhaps with a IR LED and LDR pairing).

author: eevlurker
author_rank: Newbie
timestamp: November 18, 2015, 11:30:38 pm
content: Quote from: stubbsonic on November 15, 2015, 08:41:52 pmThe most important thing is the smoke. Remember that smoke makes electronics work. If you let the smoke escape from any electronic component, it'll stop working.

author: stubbsonic
author_rank: Contributor
timestamp: November 19, 2015, 03:50:38 am
content: Thanks. I'll try to remember that.

author: stubbsonic
author_rank: Contributor
timestamp: November 20, 2015, 06:35:40 pm
content: Moments ago, I spoke with a Yamaha U.S. customer support manager about the project, and tried to access more technical info about the BC3. He said that as an accessory, there is no published technical info. And that the designers and manufacturers in Japan don't really talk to the US reps-- particularly about this.He did say that if I was successful at getting a working design to contact him so he could refer other customers to the project. That's seemed pretty positive.One quick op-amp question. I bought three LM358's during a recent visit to the SparkFun HQ. Do those seem like appropriate op-amps for this project?

author: cpwhite
author_rank: Newbie
timestamp: November 21, 2015, 03:32:31 am
content: I think there is some confusion here.Disassembling my Yamaha BC2 I find what is almost certainly a Hall Effect senior for IC3, not a pressure sensor. There is a rubber bladder for lack of a better term which the breath mouthpiece is connected to. On the PCB side of this bladder is a small magnet. This sits directly over IC3 when the BC is assembled. When blowing into the mouthpiece, the bladder inflates and the magnet moves closer to IC3, increasing the output voltage. Hall effect sensors, for those who don't know, vary their output according to a magnetic field. There can be a linear device like this one, or they can be magnetic switches.https://en.wikipedia.org/wiki/Hall_effect_sensorsPressure sensors generally don't like moisture and because in a breath controller, we're breathing humid air into the system, a pressure sensor would likely deteriorate over time. A moisture filter could possibly solve this problem, or a pressure sensor that has a built in moisture barrier. I think the fact that Yamaha didn't used a pressure sensor, but a rubber membrane with a magnet and hall effect sensor, reinforces the difficult in using a pressure sensor. So the iT43094 isn't a pressure sensor, but is a hall effect sensor. I couldn't find any datasheets on the web for this part number, and the part itself on my BC2 is marked 05. It's a small four pin surface mount IC.I've posted photos on my web site that show the plastic square which holds the rubber bladder and clearly shows the magnet in the center. I also took a picture of the component side of the PCB which shows the hall effect sensor in the center of the board and the case.http://www.chuckwhite.com/yamaha-bc2.html

author: cpwhite
author_rank: Newbie
timestamp: November 21, 2015, 03:34:32 am
content: LM358 will be fine. It's a good lower power opamp.

author: stubbsonic
author_rank: Contributor
timestamp: November 25, 2015, 09:08:00 pm
content: I just got word from Kurzweil support about the current maximums. It said the maximum safe current was 23.8 mA, and that the suggested maximum current is 20 mA. I'll update my initial post with that info.Also, just a note that I received a circuit design from Chuck White (THANKS CHUCK!). I just now assembled the parts and can begin wiring up and testing the design!

author: artico78
author_rank: Contributor
timestamp: November 26, 2015, 08:37:26 am
content: Very interesting, i ordered some breath sensor to made a test with my kurzweil pc3k7 and find your post searching material about BC3a, for my test i ordered MPX2010DP e MPXM2010GS they will arrive from Malesia in January, i will try to made all in smd technology. I follow your post with interest. CPwhite its interesting the all effect sensor, ive some at home that i bought for my CNC, i found a 4 pin hall sensorhttp://www.digikey.com/en/articles/techzone/2011/may/micropower-hall-effect-sensor-ics-for-mobile-apps

author: stubbsonic
author_rank: Contributor
timestamp: November 26, 2015, 10:30:16 pm
content: Thanks for chiming in, artico78. As of Nov 2015, this is an actively evolving topic.First of all, congrats to happyrat1 who guessed the max current exactly at 20 mA. That was the one missing piece of info, so we are all good to go.FIRST BUILD & TEST:I took advantage of the day off and breadboarded the circuit I got from Chuck White. My first test didn't work (read a steady voltage on the meter). I directly tested the sensor which is working as expected. Now I need to determine if I wired things correctly, AND whether I tested it correctly. I suppose there are relatively few variables, but still somewhere I didn't get it right. I'll communicate directly with Chuck to compare my wiring diagram with his circuit-- perhaps he can help me see where I got it wrong.

author: artico78
author_rank: Contributor
timestamp: November 27, 2015, 02:45:31 pm
content: I found that if its useful, i received the pressure sensor, different from the one i ordered but ok, the model is mpx2010dp, but i think it will work, first i will use it with arduino for test, then i will calculate all with the info you posted and simulate all on Proteus software.

author: artico78
author_rank: Contributor
timestamp: December 02, 2015, 11:08:01 am
content: Take a look someone had the same idea and done ithttp://mitxela.com/projects/breath_controller

author: stubbsonic
author_rank: Contributor
timestamp: December 02, 2015, 06:48:14 pm
content: Thanks for those, Artico.My choice of breath sensor was based on other projects that had different ranges. In hindsight (and perhaps down the road), more research about pressure range might be a useful step. One advantage of the MPX2010 is that though it requires 1.45 psi to max (which is blowing quite hard into a sealed tube), you can have a working operable range below that, with headroom for transient/bursts that might exceed some predicted max.The person with the similar idea seemed to be operating with the same goal, but was perhaps a bit less cautious about damage. Also, that build looks like a nightmare!I'm hoping that this build when tested and finalized will be easily breadboarded and ultimately put on a proto-board with these easily available and through-hole mounted components. My visions of the mechanical parts; hose, condensation-management, and vent adjustment, are still pretty vague.

author: artico78
author_rank: Contributor
timestamp: December 03, 2015, 09:27:39 am
content: Tomorrow i will receive in my laboratory a broken BC3 i will disassemble and take a look inside before fix it, i received also an mpxm2010gs in smd technology. I will have good time, soon i will post some pictures of open BC3

author: stubbsonic
author_rank: Contributor
timestamp: December 05, 2015, 01:29:17 pm
content: I've searched but never found either pictures or schematics from a BC3. That will be very valuable. Good luck with the repair.I finally have time today to troubleshoot my breadboard build of Chuck White's circuit.

author: artico78
author_rank: Contributor
timestamp: December 05, 2015, 06:20:26 pm
content: I received it, its the plastic pipe connection broken, i think i will made it with 3D printer, the tube glue don't work. Ive seen inside an Hall sensor and a magnet with a rubber connection. There are 2 operational in smd tecnology and smd resistor and capacitors like the schematic of BC2 i think the difference is only with the outside package, its different than sensor we are using. ive to made some photos.

author: artico78
author_rank: Contributor
timestamp: December 21, 2015, 08:41:39 am
content: Like i promised, some pictures, schematics is the same as BC2 if u take a look at resistors under hall sensor u can see two 152 (1.5k) and two 103 (10k) u can control on pictures i sent.I forget to take the code of op amps

author: artico78
author_rank: Contributor
timestamp: December 22, 2015, 08:32:38 am
content: Here all the things we need for a BC3 clonehttp://hardwarium.ru/?p=26i've that pressure sensor and i will try to do all in smd technology

author: stubbsonic
author_rank: Contributor
timestamp: December 28, 2015, 04:58:49 pm
content: Thanks for all those images & links, Artico78. That's very useful. I'll have to see what I can glean from the Russian web-page using some kind of translator.I got a circuit design from Chuck White (THANK YOU, CHUCK!!). I have assembled it on breadboards a half-dozen times, but have not gotten it to work yet. At some point I got busy with other stuff and was waiting for a block of time to work uninterrupted and troubleshoot.More soon.

author: artico78
author_rank: Contributor
timestamp: December 28, 2015, 06:22:50 pm
content: I'm waiting for some components, i've already the sensor in 2 versions, i made this BC3 in photos work and i'm really happy, all go fine.I translated russian site in Italian, when components will arrive i will assemble on a bread board, for now i will simulate all on proteus ISIS to see all the parameters

author: fmartins777
author_rank: Newbie
timestamp: April 03, 2016, 04:45:30 pm
content: Hi, I´m from Brazil and have interesting in help on that. My electronic knowledge is a little outdated but I´ll review everything said / complile and see where I can help!Good initiative!Best Regards,

author: stubbsonic
author_rank: Contributor
timestamp: December 27, 2016, 10:11:02 pm
content: Hi fmartins777. This thread started over a year ago. I have assembled all the parts but have gotten quite busy with work. When I have had down-time, I've been catching up on other stuff.I'd welcome any help you can offer. If you have made any progress, please report. Would love to hear how its going. Same to all others involved in this thread. If I get any time, it is next on my list.

author: fmartins777
author_rank: Newbie
timestamp: February 04, 2017, 10:18:21 pm
content: I'll let you know any result I have. Hopefully I can make it works and share with you and more people can have BC again... Abraço

author: eevlurker
author_rank: Newbie
timestamp: January 21, 2019, 08:10:34 am
content: It looks like there is now a Yamaha BC3 compatible breath controller. With so many asking about it (there is even a petition athttps://www.ipetitions.com/petition/yamaha-bc3a/) I wonder why it took so long!http://www.tecontrol.se/products/analog-breath-controller