≡
[20:26:27] <kuldeep> im trying to set a gain of 8. problem is the, result is 2 time smaller than the actual result
[20:26:46] <kuldeep> for gain 1, 2, 4 the result are calculated ok
[20:27:29] <kuldeep> im caching the CFG register in the driver (+ sending a reset on driver load)
[20:27:59] <kuldeep> for gain = 1, 2, 4, 8: result = actual voltage
[20:28:11] <kuldeep> *for gain = 1, 2, 4: result = actual voltage
[20:29:44] <kuldeep> for gain = 8, 16, (and other need testing): result = (actual_voltage * 4 / GAIN)
[20:31:28] <kuldeep> this is the driver that im trying to add gain support (with addition to facility for returning floating value instead of raw value)
[20:31:29] <kuldeep> https://gitlab.com/madresistor/libbox0/blob/master/libbox0/driver/ads1220/ads1220.c
[20:32:15] <kuldeep> and this is the demo code. (no gain, just the previous code that im refactoring)
[20:32:15] <kuldeep> https://gitlab.com/madresistor/libbox0/blob/master/demo/ads1220-test/main.c
[20:36:14] <kuldeep> the arduino code provided on website do not calculate for gain > 1
[20:37:20] <kuldeep> ^^ sorry, i meant: is the code tested for gain> 1 ?
[20:37:40] <kuldeep> (specially gain >= 8)
[22:34:44] <kuldeep> looks like i caught the problem: "The outputs of both amplifiers (A1 and A2) in Figure 39 can not swing closer to the supplies (AVSS and AVDD) than 200 mV. If the outputs OUT P and OUT N are driven to within 200 mV of the supply rails, the amplifiers saturate and consequently become nonlinear. To prevent this nonlinear operating condition the output voltages must meet Equation 7:"
[22:36:47] <kuldeep> i use two single ended (from the aout of device) to produce input for the differential channels
IRC #olimex 2016-05-04
[20:25:12] <kuldeep> https://github.com/OLIMEX/BB-ADS1220[20:26:27] <kuldeep> im trying to set a gain of 8. problem is the, result is 2 time smaller than the actual result
[20:26:46] <kuldeep> for gain 1, 2, 4 the result are calculated ok
[20:27:29] <kuldeep> im caching the CFG register in the driver (+ sending a reset on driver load)
[20:27:59] <kuldeep> for gain = 1, 2, 4, 8: result = actual voltage
[20:28:11] <kuldeep> *for gain = 1, 2, 4: result = actual voltage
[20:29:44] <kuldeep> for gain = 8, 16, (and other need testing): result = (actual_voltage * 4 / GAIN)
[20:31:28] <kuldeep> this is the driver that im trying to add gain support (with addition to facility for returning floating value instead of raw value)
[20:31:29] <kuldeep> https://gitlab.com/madresistor/libbox0/blob/master/libbox0/driver/ads1220/ads1220.c
[20:32:15] <kuldeep> and this is the demo code. (no gain, just the previous code that im refactoring)
[20:32:15] <kuldeep> https://gitlab.com/madresistor/libbox0/blob/master/demo/ads1220-test/main.c
[20:36:14] <kuldeep> the arduino code provided on website do not calculate for gain > 1
[20:37:20] <kuldeep> ^^ sorry, i meant: is the code tested for gain> 1 ?
[20:37:40] <kuldeep> (specially gain >= 8)
[22:34:44] <kuldeep> looks like i caught the problem: "The outputs of both amplifiers (A1 and A2) in Figure 39 can not swing closer to the supplies (AVSS and AVDD) than 200 mV. If the outputs OUT P and OUT N are driven to within 200 mV of the supply rails, the amplifiers saturate and consequently become nonlinear. To prevent this nonlinear operating condition the output voltages must meet Equation 7:"
[22:36:47] <kuldeep> i use two single ended (from the aout of device) to produce input for the differential channels