Hi sphinx,
For measuring current it is generally a complex task, because you need to amplify the low voltage across the shunt, so generally you will have some problems of offset due to the OP Amp, you need also a good voltage Ref for a good precision and stability of the measure.
At the end you will have some trimming to do to compensate AOP offset.
The solution I use is an low cost ADC of Microchip the MCP3421, its is an ADC 18-Bit I2C Interface with variable resolutions (15 SPS for 16 bit, 60 SPS 14bit, 3.75 SPS 18bit), it include of good Ref of 2.048v +-0.05% and a PGA with selectable GAIN (1,2,4,8)
I use it to measure the current in low side (shunt is between GND and the load) with a SHUNT of 0.1 Ohm 1% with PGA x8.
If you need an other channel for reading voltage it is possible to use the MCP3422 with 2 channels or MCP3424 4 channels (exists in SOIC package more easy to solder).
MCP3422
![](http://www.vwlowen.co.uk/picaxe/weather-station/adaptor.jpg)
The only problem, is that the MCP3421 chip exists only in SMD SOT-23-6, but if SMD is not a problem it is the best candidate for this.
Some other chip can be used but needs good Ref or have not a PGA, like : LTC2400 (not cheap), ADS1115 (easy to find on eBay), ADS1118 ...
Best regards
See:
http://interface.khm.de/index.php/lab-log/connect-a-mcp3421-18-bit-analog-to-digital-converter-to-an-arduino-board/See:
http://www.esp8266-projects.com/2015/04/18-bit-adc-mcp3421-i2c-driver-esp8266.html![](http://interface.khm.de/wp-content/uploads/2012/03/MCPsch.png)
![](https://3.bp.blogspot.com/-IsXSN1505xI/VQlLpazvobI/AAAAAAAAAWQ/RFptZBEmNz8/s1600/MCP3421%2B-%2B1%2B-%2BAdapter%2BBoard%2B-%2B1.jpg)
A project that seams at what you want to do:
![](http://obrazki.elektroda.pl/7355150900_1369415001.png)
Site:
http://www.elektroda.pl/rtvforum/topic2575274.html