My AltStick rocket altimeter is designed around a digital absolute pressure sensor from Freescale – MPL3115A. I chose this part because 1. it’s small 2. it’s low power and 3. it outputs readings in height (meters) or pressure. The previous generation part, MPL115A, only provided pressure outputs. They are both the same size and about the same power, but I really liked the fact that I didn’t have to do any additional calculations in my software to get a height reading. It wouldn’t have been difficult but it just comes for free with the MPL3115A. The data sheet states that the accuracy could be as good as 0.3 meter or about 1 foot, so I wanted to see if that could be achieved. Unfortunately, I was never able to get close to that – readings were all over the place most of the time – so I thought I was using it wrong. Then a discovery was made today…
I was at the Sensors Expo and Freescale had a booth there. They are featuring the MPL3115A on just about every development kit and eval board now. I noticed that one of these boards had black fabric over the top. I thought it might have had to do with this pressure sensor and I was right but for the wrong reason. Absolute pressure sensors like the ones from Freescale and other suppliers typically have a small port or opening in the top of the device where the sensor element can sense the ambient air. I had seen people use foam or other material over the top of such sensors to help prevent erroneous readings from turbulent air, say on a quadcopter, for example. However, when I asked about the fabric I was told it was instead to keep the light out of the sensor. “What does light have to do with it?” I asked. Well, apparently the sensor die is light sensitive as are those for other sensors like accelerometers, I was told. The difference is that the pressure sensors have a hole to let air/light in while the accelerometers are completely encapsulated. Now, this would not normally be an issue since they expect the sensor to be embedded within an end-item, say a cell phone. However, in my case, I have be experimenting and testing with the board out in the open, mainly so I can access the buttons easily. I was assured that this was a well-known characteristic of these types of sensors but I’ve read the MPL3115A datasheet back and forth many many times and I know I didn’t see any mentions about light.
After the show I dug out the datasheet and searched for the word “light” – nothing. It does refer to an App Note which talks about handling and soldering their pressure sensors but it had really no relevance to this part and again had no mention about precautions with light exposure. I then went to the other similar part – MPL115A – and searched through that datasheet. Lo and behold it did mention the light precaution: The sensor die is sensitive to light exposure. Direct light exposure through the port hole can lead to varied accuracy of pressure measurement. Avoid such exposure to the port during normal operation. So it is true! However, my complaint is that, had I never known about that other part or had the helpful people at the Freescale booth not informed me of this, how would I know about the light sensitivity? On top of that, for design engineers who are using Freescale’s Xtrinsic Freedom development platforms that feature the MPL3115A (totally exposed, by the way), they may not be aware of this. If you are wondering, I have already mentioned this to the Freescale reps and they are going to see about updating the documentation.
Now that I am aware of the light-sensitive nature, I did find another (brief) mention of it in a presentation about this sensor (a really good read, by the way, if you are interested in this device, along with the Pressure Altimetry App Note). I also went ahead and covered my sensor on the AltStick with a small piece of foam as you can see in the picture below. It sufficiently blocks out light without preventing the sensor from measuring the ambient pressure. Again, this really wouldn’t be an issue when the board is enclosed or contained within a rocket. I had planned on using heat shrink or some other material before using it in a rocket anyway to protect it against hot ejection gasses and landing impact. The great news is that, after over a dozen ground-based tests, I am now reliably getting +/- 1 foot accuracy – achievement unlocked! Thank you Freescale for making such a great part! I think it is finally time for me to do some test launches to learn more about how this board holds up and what sort of measurements I can get from a much more dynamic environment.