NXP MPVZ4006GW7U as Breath Sensor/Controller

Hi Everyone

Apologies, because I know this has been disgusted in many threads I’ve been looking through quite a few to find an answer that I can adopt my project. But I haven’t managed to find what I’m looking for

I am wanting to use the NXP MPVZ4006GW7U precious sensor as the sensor component for a wind controller/breath sensor on a musical instrument.

I’m looking for an example of code that I’ll need for the Arduino to read the Pressure Sensor as I blow into a tube attached to it.

I just haven’t been able to understand if there’s any particular library I might need, and where I can find the appropriate code for the Arduino. I need this to send out to Max MSP or pure data through the serial

So far I’ve followed these links:

And this (though the code is mainly for MIDI, whereas I just want to stream the data into MaxMSP or Pure Data and use it from there)

Any help, pointing to other threads or links greatly appreciated

Thanks
Drew

You are going to have to explain your "project" so much more and in detail for anyone to offer any help, that you may have to write your own code for your unique project. Why do you think there is a library that will help? What links have you found relating to your project that use a library?

The red board has a HX710 chip.
The HX710 library comes with examples once you have installed it through the Library Manager.
Leo..

Thanks Wawa,

It seems it will be simplest for me to get a sensor attached to the HX710B for Arduino, that will make everything simpler. I only purchased the NXP MPVZ4006GW7U pressure sensor as the sensor component , and now realise it might require an amplifier of some sort to be readable. So best to keep it simple for me.

Thanks again

If you have a bare MPVZ4006GW7U, then use that one.
It has a built-in instrumentation amp, and can be connected directly to a 5volt-logic Arduino.
Likely better quality than the ones mounted on those red boards, although they work fine.
Mount your sensor on a piece of strip board, and simply read it's analogue value.
Post a picture of the build.
Leo..

Edit: added some test code for that sensor.

const byte pressurePin = A0;
float sensorType = 6.0; // kPa
const int offset = 54; // zero pressure adjust
const int fullScale = 970; // max pressure adjust
float pressure; // final pressure

void setup() {
  Serial.begin(9600);
}

void loop() {
  pressure = (analogRead(pressurePin) - offset) * sensorType / (fullScale - offset);
  Serial.print("Pressure: ");
  Serial.print(pressure);
  Serial.println(" kPa");
  delay(500); // testing only
}

Thanks Leo
Will definitely give your suggestion a try and post an image

Thanks so much

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.