paparazzi/paparazzi — pull request #292 by gtoonstra (2012-10-05 22:00:57+00:00)
Title: ezosd current sensor integration

This is a draft integration of the ezosd current sensor. It outputs voltage, current and mAh consumed. For every i2c request on the bus, it reads only 10 bytes. Every sensor has a slightly different configuration on current gain etc., so some calibration may be required (see immersionrc product page). Most important here are accurate readings for voltage, but current and mAh consumed can become useful in the future for mWh calculations and knowing when to go for home. This sensor is also useful as a regulator for a +5V power supply directly off the battery (with reasonable current consumption) and there is another terminal at +VBATT that can be spliced up for other equipments like 12V tx's and such.

I've got the GND, DAT, CLK connected during testing, but *only* connect +5V when USB is not connected on the LIsa for obvious reasons.

In this commit I also disabled the regular "electrical" module, which assumes voltage and current measurement on analog pins, as these would otherwise regularly overwrite the ezosd measurements. There may be better ways to do this, as now it probably depends on compiler optimization for the code not to be included.

The ezcurrent module is implemented as a standard sensor module in xml, so it can be 'loaded' as a module in the airframe. What may be necessary is a standard define on the port it's expected:

Testing:
- voltage output correct.
- current not fully tested in this implementation, but observed correct in other implementations of the same module on arduino.
- consumption not fully tested in this implementation, but observed correct in other implementations of the same module on arduino.

Unsure:
- Whether the sensor SCL/SDA are 5v/3.3v. the lisa pins are definitely 5V tolerant though, but not sure if the other side was built for either 5v or 3.3v.