The analog circuitry is very simple to clarify the issue.
Both IIN+ and IIN- pins are connected to GND.
ADC0CON = 0x8000; // (ADC enabled, Gain = 1).
ADC's data are about 0. It's OK.
Then I switch on the IIN+ current source (50 uA).
ADC0CON = 0xA000;
I suppose that the ADC data will be the same (see above, IIN+ and IIN- pins are shorted).
In reality ADC data are 2380...2430 (I've got 2 PCBs).
ADC data are inversed (-2380) when the IIN- current source is switched on.
ADC0CON = 0xC000;
I read "Current ADC Diagnostics" chapter and tried other gains: 2, 4, and 8.
ADC data is scaled by corresponding factor.
My question - what is the strange 2400 data?