V3.3.0 firmware / configuration software - for V3 hardware
Moderators: JeffC, rdoherty, stieg, brentp
Here is a graph that shows temperature reading at each bin from 99 down to 2 degrees Celsius. I miss some values - therefor the spikes.
Somehow it seems that it's not linear, is it ?
Somehow it seems that it's not linear, is it ?
- Attachments
-
- ADC at the x-axis, temperature in degrees Celsius at the y-axis, from reading the temperature sensor at the AUX-input.
- chart temp.jpg (49.68 KiB) Viewed 39915 times
All those who believe in telekinesis, raise my hand now !
What happens if you set configurable output to 60C (or whatever) but normal, not inverted? Do the "lights" in the configurator lit up, or not? When I tried it does not activate, I described here:http://www.autosportlabs.org/viewtopic. ... 05a0#11253
'87 BMW 316 E30
1600cc M10B16
petrol + LPG, MJLJ
1600cc M10B16
petrol + LPG, MJLJ
I seem to recall that nothing happened. And that's why I tried inverted.Yvan wrote:What happens if you set configurable output to 60C (or whatever) but normal, not inverted? Do the "lights" in the configurator lit up, or not? When I tried it does not activate, I described here:http://www.autosportlabs.org/viewtopic. ... 05a0#11253
I'll check again. Hopefully I'll get some time tonight.
All those who believe in telekinesis, raise my hand now !
Ok, I tried again. I set output 1 to AUX normal and 45 dgs, and output 2 to AUX inverted and 45 dgs. Then 'write ignition configuration'
Sensor at roomtemperature, nothing happens. Poor on boiling water, nothing happens. wait a minute..... the 'write ignition configuration' button has lit up again. Click, and then - output 2 lights up on the display.
Lift up the sensor, temperature goes back to room temperature. Nothing happens, output light 2 still on. ..... weird, the 'write ignition configuration' button has lit up again. And I still haven't changed anything. Try clicking it, nothing happens - output light 2 still lit.
Wait a while, .........yes..... the 'write ignition configuration' button lights up again....
I'm not to certain I tested the presens of ground on output pin1 and output pin2 properly last time. Tonight I coupled a LED with a resistor to the +12V molex pin and to the output 1 and output 2 pin.
Output 2 lights up the LED when the temperature goes above 45 dgs. And just as the light on the display, it doesn't go off when temperature goes below the trigger point. In this case 45 dgs.
Strangely enough, if I change the inverse setting to normal on the output 2 and then write the configuration - the light in the configurator display goes off. But the LED connected to output pin 2 on the Molex keeps on shining.....
One of my suspicions as to why this isn't working properly is because we have inverted resistors in the temperature sensors. I don't know how the algebra is written in this case. But since the table in it's original form has the ADC values rising toghether with the expected scaled value also going up - maybe when the conditions for going from hight to low and vice verse is inverted, since ADC values are rising, but the scaled values are going down, since the temperature is going down - maybe the conditional sentences for switching from on to off or off to on don't work properly ? Maybe that's why only inverted setting work. And why it only works going up but not down ? Brent, maybe you could correct me here ?
Anyhow, I suspect I don't come any furhter with my research than this.
Sensor at roomtemperature, nothing happens. Poor on boiling water, nothing happens. wait a minute..... the 'write ignition configuration' button has lit up again. Click, and then - output 2 lights up on the display.
Lift up the sensor, temperature goes back to room temperature. Nothing happens, output light 2 still on. ..... weird, the 'write ignition configuration' button has lit up again. And I still haven't changed anything. Try clicking it, nothing happens - output light 2 still lit.
Wait a while, .........yes..... the 'write ignition configuration' button lights up again....
I'm not to certain I tested the presens of ground on output pin1 and output pin2 properly last time. Tonight I coupled a LED with a resistor to the +12V molex pin and to the output 1 and output 2 pin.
Output 2 lights up the LED when the temperature goes above 45 dgs. And just as the light on the display, it doesn't go off when temperature goes below the trigger point. In this case 45 dgs.
Strangely enough, if I change the inverse setting to normal on the output 2 and then write the configuration - the light in the configurator display goes off. But the LED connected to output pin 2 on the Molex keeps on shining.....
One of my suspicions as to why this isn't working properly is because we have inverted resistors in the temperature sensors. I don't know how the algebra is written in this case. But since the table in it's original form has the ADC values rising toghether with the expected scaled value also going up - maybe when the conditions for going from hight to low and vice verse is inverted, since ADC values are rising, but the scaled values are going down, since the temperature is going down - maybe the conditional sentences for switching from on to off or off to on don't work properly ? Maybe that's why only inverted setting work. And why it only works going up but not down ? Brent, maybe you could correct me here ?
Anyhow, I suspect I don't come any furhter with my research than this.
All those who believe in telekinesis, raise my hand now !
Patriq,
While you were testing the temperature sensor, did you bring up the Aux input gauge in the configuration software while you were monitoring the voltage on the ADC pin?
Also, did you change the aux input scaling to reflect the temperature curve of your sensor, or are you using the default scaling?
In any case- can you do this:
* In the config software, restore the aux input mapping to the factory default, if you have changed it. Ensure this is written to the controller. It may be easier to simply re-flash the firmware.
* Also in the config software, bring up the aux input gauge so it shows the actual measured voltage on the processor input pin.
* Place your volt meter on the input to the processor.
Vary the temperature applied to your sensor. Does the AUX input gauge in the software closely match your volt-meter measurements? Keep in mind a "0" in the gauge = 0 volts and "255' = 5V, so 127 = 2.5V, etc.
Next, set one of the user inputs to 'Aux' and set the activation point part way in the range you are working with. Vary the temperature again. Does the output toggle as expected?
--
Regarding your sensor curve: yes, it seems somewhat non-linear. Was this a plot you made from your volt meter?
Regarding the software repeatedly showing "write config" - this is strange, because the button only lights up when the user has changed some value in the ignition config. The controller by itself will never cause this to happen. Can you double check this, ensuring a config value wasn't being changed in the meantime?
And for testing- The V4 was tested comprehensively by us, of course, and several have tested the aux input feature- typically for reading a 0-5v input signal from other devices like a wideband meter. So far we haven't had and problem reports- you would likely see them here first!
This part of the V3.3.x firmware was tested by us as well. It seems the main part of the controller which controls ignition advance is stable- aside from the 4/6/8 cylinder issue we're looking into. So, right now we're trying to understand what problems might exist with the Aux input. Therefore, testing the above scenario would be very helpful!
Looking forward to your test results.
While you were testing the temperature sensor, did you bring up the Aux input gauge in the configuration software while you were monitoring the voltage on the ADC pin?
Also, did you change the aux input scaling to reflect the temperature curve of your sensor, or are you using the default scaling?
In any case- can you do this:
* In the config software, restore the aux input mapping to the factory default, if you have changed it. Ensure this is written to the controller. It may be easier to simply re-flash the firmware.
* Also in the config software, bring up the aux input gauge so it shows the actual measured voltage on the processor input pin.
* Place your volt meter on the input to the processor.
Vary the temperature applied to your sensor. Does the AUX input gauge in the software closely match your volt-meter measurements? Keep in mind a "0" in the gauge = 0 volts and "255' = 5V, so 127 = 2.5V, etc.
Next, set one of the user inputs to 'Aux' and set the activation point part way in the range you are working with. Vary the temperature again. Does the output toggle as expected?
--
Regarding your sensor curve: yes, it seems somewhat non-linear. Was this a plot you made from your volt meter?
Regarding the software repeatedly showing "write config" - this is strange, because the button only lights up when the user has changed some value in the ignition config. The controller by itself will never cause this to happen. Can you double check this, ensuring a config value wasn't being changed in the meantime?
And for testing- The V4 was tested comprehensively by us, of course, and several have tested the aux input feature- typically for reading a 0-5v input signal from other devices like a wideband meter. So far we haven't had and problem reports- you would likely see them here first!
This part of the V3.3.x firmware was tested by us as well. It seems the main part of the controller which controls ignition advance is stable- aside from the 4/6/8 cylinder issue we're looking into. So, right now we're trying to understand what problems might exist with the Aux input. Therefore, testing the above scenario would be very helpful!
Looking forward to your test results.
Yes, I did. And for each increase in voltage at the aux pin corresponding to a bin in the 0-255 table I entered the temperature in Celsius in the 'scaled value' column.brentp wrote:Patriq,
While you were testing the temperature sensor, did you bring up the Aux input gauge in the configuration software while you were monitoring the voltage on the ADC pin?
Also, did you change the aux input scaling to reflect the temperature curve of your sensor, or are you using the default scaling?
Ok, will try this later. It's my daughters birthday tomorrow, so it'll have to wait.....
In any case- can you do this:
* In the config software, restore the aux input mapping to the factory default, if you have changed it. Ensure this is written to the controller. It may be easier to simply re-flash the firmware.
* Also in the config software, bring up the aux input gauge so it shows the actual measured voltage on the processor input pin.
* Place your volt meter on the input to the processor.
Vary the temperature applied to your sensor. Does the AUX input gauge in the software closely match your volt-meter measurements? Keep in mind a "0" in the gauge = 0 volts and "255' = 5V, so 127 = 2.5V, etc.
Next, set one of the user inputs to 'Aux' and set the activation point part way in the range you are working with. Vary the temperature again. Does the output toggle as expected?
It's the saved txt-file for all the values of temperature I read for each bin with every voltage going from 99 dgs C to 2dgs C. I then opened the txt file in excel and used the function to generate the graph. Quiet easy actually.
--
Regarding your sensor curve: yes, it seems somewhat non-linear. Was this a plot you made from your volt meter?
I'm very certain I didn't change anything before the button lit up. And it did several times. I'll keep an eye on it next time I try your instructions above.
Regarding the software repeatedly showing "write config" - this is strange, because the button only lights up when the user has changed some value in the ignition config. The controller by itself will never cause this to happen. Can you double check this, ensuring a config value wasn't being changed in the meantime?
Ok, will post as soon as I've tried again.
And for testing- The V4 was tested comprehensively by us, of course, and several have tested the aux input feature- typically for reading a 0-5v input signal from other devices like a wideband meter. So far we haven't had and problem reports- you would likely see them here first!
This part of the V3.3.x firmware was tested by us as well. It seems the main part of the controller which controls ignition advance is stable- aside from the 4/6/8 cylinder issue we're looking into. So, right now we're trying to understand what problems might exist with the Aux input. Therefore, testing the above scenario would be very helpful!
Looking forward to your test results.
Cheers !
All those who believe in telekinesis, raise my hand now !
Ok, reflashed latest firmware.brentp wrote:Patriq,
While you were testing the temperature sensor, did you bring up the Aux input gauge in the configuration software while you were monitoring the voltage on the ADC pin?
Also, did you change the aux input scaling to reflect the temperature curve of your sensor, or are you using the default scaling?
In any case- can you do this:
* In the config software, restore the aux input mapping to the factory default, if you have changed it. Ensure this is written to the controller. It may be easier to simply re-flash the firmware.
* Also in the config software, bring up the aux input gauge so it shows the actual measured voltage on the processor input pin.
* Place your volt meter on the input to the processor.
Vary the temperature applied to your sensor. Does the AUX input gauge in the software closely match your volt-meter measurements? Keep in mind a "0" in the gauge = 0 volts and "255' = 5V, so 127 = 2.5V, etc.
In the config software brought up the Aux Input gauge. (It doesn't show voltage though - does it ? Rather which ADC bin is corresponding to the voltage read ?)
Put volt meter on the aux input on the processor.
With temperature sensor at room temperature gauge showed 126, measured 2.43mV, which corresponds to bin 124 not 126. Pretty close.
With sensor in close to boiling water, aux gauge showed 26, measured 0,51mV, which corresponds to ADC bin 26. Perfect match. This means that as the temperature rise the gauge reading goes down. This also means that if you want to trigger something above a certain value, you have to think the other way around.
Hm, no it doesn't...Next, set one of the user inputs to 'Aux' and set the activation point part way in the range you are working with. Vary the temperature again. Does the output toggle as expected?
I first set Aux at user output 2 to 'Normal' and at 60 as trigger - which is inbetween 126 and 26.
I wrote it to the controller. First sensor at room temeprature. Nothing. Then sensor in hot water, gauge goes down (passes trigger), nothing happens. Sensor out of water, gauge goes up (pases trigger), nothing happens.
I then changed user output 2 to 'inverted' and at 60 as trigger. After I had written that to the controller the light in the configurator software and the led connected to the user output 2 immediately lit up. This was at room temeprature. I then dipped sensor in hot water, gauge again went down (passed trigger), lights and leds still lit. Sensor then came out of the water, gauge again went up (and passed trigger). Lights and led still lit.
This time this didn't occur.--
Regarding your sensor curve: yes, it seems somewhat non-linear. Was this a plot you made from your volt meter?
Regarding the software repeatedly showing "write config" - this is strange, because the button only lights up when the user has changed some value in the ignition config. The controller by itself will never cause this to happen. Can you double check this, ensuring a config value wasn't being changed in the meantime?
And for testing- The V4 was tested comprehensively by us, of course, and several have tested the aux input feature- typically for reading a 0-5v input signal from other devices like a wideband meter. So far we haven't had and problem reports- you would likely see them here first!
This part of the V3.3.x firmware was tested by us as well. It seems the main part of the controller which controls ignition advance is stable- aside from the 4/6/8 cylinder issue we're looking into. So, right now we're trying to understand what problems might exist with the Aux input. Therefore, testing the above scenario would be very helpful!
Looking forward to your test results.
All those who believe in telekinesis, raise my hand now !
Thank you for doing that. I'll investigate further.
Note, with the calibration you can map the values in such a way that you can 'invert' the readings.
i.e.
ADC 0 = mapped value 255
ADC 1 = mapped value 254
...
...
ADC 255 = mapped value 0
In the meantime feel free to test out the ignition correction feature- I take it that since you're wiring up a temp. sensor you will want to tune your advance during cold startup, correct?
Brent
Note, with the calibration you can map the values in such a way that you can 'invert' the readings.
i.e.
ADC 0 = mapped value 255
ADC 1 = mapped value 254
...
...
ADC 255 = mapped value 0
In the meantime feel free to test out the ignition correction feature- I take it that since you're wiring up a temp. sensor you will want to tune your advance during cold startup, correct?
Brent
Hi Brent !brentp wrote:Thank you for doing that. I'll investigate further.
Note, with the calibration you can map the values in such a way that you can 'invert' the readings.
i.e.
ADC 0 = mapped value 255
ADC 1 = mapped value 254
...
...
ADC 255 = mapped value 0
In the meantime feel free to test out the ignition correction feature- I take it that since you're wiring up a temp. sensor you will want to tune your advance during cold startup, correct?
Brent
Yes, that was how I had managed my inverted sensor. I simply did as you suggested, and entered scaled values to suit me.
Yes, I was planning on using the temperature reading to adjust for cold start + controling the radiator fan. The fact that you could fine tune when the fan starts is a really nice feature.
Again, what seems to be an unspoken axiom, to find new aspects that relatively easily can be incorporated is what I really like with MJLJ. And also that they are backwards compatible and incorporatable ! Combine that with solid functionality and DIY - that's really nice !
All those who believe in telekinesis, raise my hand now !
All,
I have a couple of bugfixes for V3.3.x.
Aux Input fix (firmware)
found that the user output did not update for aux input mode when engine was below idle (not running or cranking). Problem was related to the Aux Peak value only being updated when the engine was running; and the user outputs were being controlled by the Aux Peak Value.
When the engine was running, aux input was updating as expected. I believe this was the point of confusion during our testings.
Cylinder count (config software)
When setting and writing a different cylinder count, the correct value was written to the controller. However, When reading back the controller data, the Config Software user interface did not reflect the updated value.
You can download the updated firmware (v3.3.1) and updated config software (v3.3.2) from the V3 downloads area:
http://www.autosportlabs.net/MJLJ_V3_Downloads
Let us know if this improves things. Thanks all for your patience (and prodding!)
I have a couple of bugfixes for V3.3.x.
Aux Input fix (firmware)
found that the user output did not update for aux input mode when engine was below idle (not running or cranking). Problem was related to the Aux Peak value only being updated when the engine was running; and the user outputs were being controlled by the Aux Peak Value.
When the engine was running, aux input was updating as expected. I believe this was the point of confusion during our testings.
Cylinder count (config software)
When setting and writing a different cylinder count, the correct value was written to the controller. However, When reading back the controller data, the Config Software user interface did not reflect the updated value.
You can download the updated firmware (v3.3.1) and updated config software (v3.3.2) from the V3 downloads area:
http://www.autosportlabs.net/MJLJ_V3_Downloads
Let us know if this improves things. Thanks all for your patience (and prodding!)
Hi Brent
Thanks for the update, hope you're not too bruised from the prodding.
I've flashed the new firmware and installed the new software today and all looks OK on my limited setup (rpm advance only and no aux input)
When I tried writing the global configuration I did get a coms time out error but it looks to have written the data and it can be read back. I don't know if it's anything to do with the advance correction because I'm not using that at the moment.
I set my advance bins to 10 and applied a -1 trigger offset and my timing mark is now spot on.
Next thing to do (excluding the vacuum requirement) is build the aux input circuit and test that, I'm sure it'll be a few months until I get round to it though.
Cheers
Dave
Thanks for the update, hope you're not too bruised from the prodding.
I've flashed the new firmware and installed the new software today and all looks OK on my limited setup (rpm advance only and no aux input)
When I tried writing the global configuration I did get a coms time out error but it looks to have written the data and it can be read back. I don't know if it's anything to do with the advance correction because I'm not using that at the moment.
I set my advance bins to 10 and applied a -1 trigger offset and my timing mark is now spot on.
Next thing to do (excluding the vacuum requirement) is build the aux input circuit and test that, I'm sure it'll be a few months until I get round to it though.
Cheers
Dave
- Attachments
-
- error.JPG (30.5 KiB) Viewed 39126 times
I can confirm that user configurable outputs problem is gone. Now it works as it should, switches on above set temperature, and off below.
I can finally use this feature to switch on/off my auxiliary fan for a/c, so that I do not have to do this by hand.
Thank you Brent!
I can finally use this feature to switch on/off my auxiliary fan for a/c, so that I do not have to do this by hand.
Thank you Brent!
'87 BMW 316 E30
1600cc M10B16
petrol + LPG, MJLJ
1600cc M10B16
petrol + LPG, MJLJ