non linear ac current sensor

quoted linearity of this product no way 2 %
more of a S shape
inputing to the MCP3422
def read_watts_phase2(): #left batt channel 1 0b00 alias channel 3
global ch0 #channe0
global ch1
bus.write_byte(0x69,0b10110000) #channel 1
time.sleep(.1)
data = bus.read_i2c_block_data(0x69,0b00100000,2) #channel 3
amps3 = ((data[0] & 0x0f )* 256 )+data[1]
if amps3 > 2047 :
amps3 -= 4094 #subtrct 4095
ch0 = amps3 * 2.5
ch0 = round(ch0)
print (f" Right-Amps ",amps3)
bus.write_byte(0x69,0b00000110)
return (ch0)
try varius gain values but well in range of the 1.2v ref
any body with more clues
before ask maker for there answer
thanks for looking
With the increasing of power electronic devices, the leakage current caused by electrical equipment fault not only contains power frequency AC component, but also includes more and more DC and high frequency AC components, which means that the traditional leakage current sensor is not working anymore. For example, the DC component can easily drive the traditional current sensor into saturation state. As such, a simple leakage current sensor based on magnetic modulation technology is presented in this paper to detect the current from DC to several kilohertz with low power consumption. One typical application of the proposed sensor is the type B residual current device (RCD) complying with IEC60755, in which the residual current of sinusoidal AC, pulsating DC and smooth DC should be detected properly to protect person from electrical shock.
