Can somebody help me make sense of this phenomenon? I'm building a prototype based on the BMP180. The prototype is on a breadboard right now, with the sensor sticking out, naked. As I was working by an open window, I tried to expose the sensor to the sunlight and I immediately got an altitude reading some 20 metres higher. Shielding the sensor with a cloth mitigates the effect, and the reading is only a few metres off in that case. At first, I thought it was the temperature, but it's not. My prototype displays the temperature too, and it only got up by a degree or so while in the sun. If I hold my finger close to the sensor, the temperature will go up by 5 degrees within a few seconds, but the altitude doesn't change. It is not the draught either, because the day has been very still and moreover I can't alter the reading in any significant way by blowing on the sensor or keeping it close to a fan. When I put the sensor out of the window at night, I get no altitude change either, so I must conclude that it's really the sun, yet I can't make any sense of this (I also switched libraries: same thing). What do you think is happening?
Sunlight could get into the silicon of the chip. It is not made to be used in sunlight. Perhaps the UV or InfraRed component of sunlight makes it worse.
Some chips have a "package" or "housing" that is almost nothing. If you put that in sunlight then it will certainly have influence.
It's well know within the multi-rotor (drone) flying community that flight controller MEMS barometers need to be covered to protect them from both wind and sunlight.
On my custom flight controller, I designed the board with drill holes either side of the barometer, so that a piece of foam could be mounted over it and held in place with a small cable tie:
Yes, it's no surprise. All semiconductor devices are sensitive to light. Many of them, like phototransistors & photovoltaic panels, make use of that property, but others are normally sealed inside a package to prevent light affecting them. But sensors like bmp180 cannot be completely sealed, so are vulnerable to light affecting them and you must protect against that in the best way you can without sealing them in.
And of course this is why packages are black epoxy. (Pure epoxy resin is transparent).
Yes, it has to be the light affecting the chip. The effect is the same, albeit of smaller magnitude, when I use a UV-filtered halogen bulb. Unfortunately, I don't have a UV light source to experiment with; it would have been interesting. Anyway, when the circuit will be transferred into its final, black plastic dwelling, I'll do what I can to mitigate the sun exposure further. Thanks for your input.
You can get transparent solar panels that double as windows, and are an dark orange colour, since Si absorbs across the visible spectrum, but more efficiently in the blue/UV range. The bandgap for silicon is 1.14eV, which is just in the IR, so it absorbs from there upwards.
Large bandgap semiconductors like silicon carbide and gallium nitride only start absorbing in the UV, so are transparent to visible light (which is why SiC and GaN can be used as gemstones and Si cannot).