I'm looking at the INA170 data sheet (high side current monitor, with offset current for bidirectional measurements).
I'm looking at page 4 of the data sheet (SBOS193D), at the middle graph on the right (It would help if someone bothered to number the figures!)
This graph (and possibly many others) looks to have been copied from the INA169 datasheet (SBOS181D)
The problem is that the INA170 has an adjustable offset current, so Vin can range from a negative number to a positive number , so the graph might , perhaps, be close to what would be achieved with Ros set to infinity. .
What I was hoping to see was a graph, say , ranging from -125mV to +125mV , annotated as "Ios=125uA"
This would hopefully move the nasty nonlinearity off to -125mV.
Also on page 3 , the Electrical Characteristics table, The nonlinearity needs to be better specified , what is in the table is only relevant with pin 5 open (Ros=infinity) , and clearly the input can go positive and negative unlike the 10mv to 150mV in the table.
Also the conditions in this table may need to be reworded , as being over the range 10uA to 300uA of OUTPUT rather than 10-150mV of INPUT ?
The other problem with the datasheet is that equation 4 is completely wrong, what gives with the "+/-" sign in the middle?, and you have wrongly added the offset?.
Equation 4 should read
Vout = (IS.Rs.RL/1k) - (Vref.RL/Ros)
It would be nice to mention in the datsheet that if Ros is numerically equal to RL then the offset just becomes Vref. , and if using a differential input ADC it can be connected across pins 6 and 5.
Likewise using a ( diff ) ADC , and making Ros exactly twice RL , one can elegantly connect pin3 (Vref) to the reference of the ADC, and remove a lot of drift and second order effects.