Thank you Iskandar. Your results with your experiment show
- The lower temperature from air box sensor caused the ECU to lookup a different value in the map and then in closed loop (idle in your case) the STFT was adjusted negative because of the O2 sensor feedback.
- This is expected behaviour.
I have a interesting update
I live in a warm climate, it's winter here, 29 degrees outside in the day.
If I plug my cloned device (front) I get to around 3C on the dash, the STFT reading does not change, it fluctuates around 0%. But that was to be expected if we hypothesise that the ECU is using the air box sensor for lookup values.
Now 26C is massive drop, more than other that I've seen (thermistors are not linear), but it's a relative value, it's not the -10C dash figure that was in the video for example.
After sniffing the CAN bus with an Arduino I found that the dash a) puts the front sensor reading on the bus with PID 0x0300 (first byte) and b) buts the value of 255 (which should be the error state) if the connector is unplugged. That means that the information is there if the ECU wants it.
So what if I just hard code a resistor to get the dash and the CAN value to -10C. A 10K + 6.8K resistor in series should do it if my maths is correct.
Dash now reads -9C, close.
Start the bike and the STFT NOW fluctuates around -5%! Similar to a modification to the air box sensor.
There's a few pieces of information that I've found research but parked.
The OBD system isn't disabled, but....
So no testing is required below -7C.
Is the front sensor acting as a binary switch? Below a temperature threshold the ECU switches into a different mode? It was still reporting closed loop at ide, but is that even true if we're in unregulated territory?
Tests for tomorrow: ride with the bike at -9C. Test a series of resistors to find the switch point.
If this is true, what this means is that this device would stop working at a specific (real) temperature, around 16C I think. Not good at all.