Smart-Round-Dual was the
The manufactured version:
Features:
- 3 digit 7 segment LED (with dots)
- 4 digit 7 segment LED (with dots)
- Voltage output. High resolution (up to 5V, 12bit, programmable output curve)
- RS232 level
- directly plugs into PC
- or USB-RS232 adapter
- or small dongle for CAN-physical layer bus (will not need to be removed from network even for firmware reflash!)
- free outputs
- power
- signal level (0..5V high resolution, external ground referenced)
- extra inputs
- analog input
- RPM input, or vehicle-speed (kmh / mph) or other frequency signal
- button
Firmware features
Since this is ment as an easy-to-use device, first only very few features are supported.
- WBO2. Lambda value matches Bosch (manufacturer of the LSU4 sensor) specifications. Tested against very expensive 6-gas analyzers (with 2 - different - sensors in same exhaust stream) with very good match (showing 0.86 / 0.87 when the high-end analyzer displayed 0.86 lambda)
- EGT (with cold-junction measurement)
- null-offset calibration (egt_cal, mttg01mttc.. where replace .. with hexa number: C0 is default, 00 is maximum subtracted offset, 96C)
- onboard-temp
- Data can be logged to PC for further analysis
- Self-calibrating (no setup required, just plug and play)
RPM input (VR or HALL, several trigger-types)
- for logging
- or (RPM-dependent) boost-target
- or vehicle-speed sensor data can be sent over the network to GenBoard/VerThree even when both primary and secondary VR inputs of the v3.x are used up for the engine (the vehicle-speed and fuel consumption can be displayed and logged; also allows much better street-dyno implementation than without vehicle-speed)
==Connector Pinouts==
RS232 - DSUB9 female. Note that any extension cable needs to be straight through and not cross-over.
- 2: RX
- 3: TX
- 5: GND
Main connector - DSUB15 male. Note that the (now standard) flying loom version has the WBO2 pins on the WBO2 connector, so those 5 pins (pin 2,3,4,5 and 7) of the DSUB15 are NOT connected:
- 1: Vout (Lambda output signal +) - configurable as either Narrow band, wideband 0-1v through to 0-5v.
- 6: VBatt+ (12V)
- 8: analog input
- 9: Vout-gndref (voltage output signal) -. Connect to GND or max 2..5V potential (with higher voltage on this pin, max output voltage on Vout will be limited).
- 10: RPM/Wheel Speed input
- 11: RPM reference (input threshold can be adjusted; leave open)
- 12: 5A Power control
- 13: GND connect all GND-s
- 14: GND connect all GND-s
- 15: GND connect all GND-s
- Also wire supply voltage to WBO2 Heater to sensor pin 3 through 5A fuse (already wired this way in the supplied harness)
==Mounting==
The flying loom version allows mounting even with the tightest available space:
- +12V must be connected to the fuses (the wideband sensor internal heater consumes 1..3A). Red wire on the picture.
- GND must be connected to the DSUB15 connector (blue wire on the picture)
U-bracket mounting bracket:
==Lambda Output Signal==
===Linear WBO2 lambda output===
vout_conf set to 0x20 (=decimal 32 if set in MegaTune) or higher (0x33, 0x66 or 0x99 for 1V/lambda, 2V/lambda or 3V/lambda, respectively)
Useful with ECU-s that has no embedded WBO2 controller, but can accept linear WBO2 signal! Also useful if the other ECU has real WBO2 input but you don't want to use 2 WBO2 sensor.
This was tried with 3V/lambda wired in (connected to a motec).
0V (well, say < 0.2V) used for unknown (eg. sensor not heated yet)
- vout_conf=0x33 1V / lambda 0.65v@lambda=0.65, 1.5v@Lambda=1.5
- only when this is the only choice; or when viewing with a handheld DVM
- vout_conf=0x99 (appr. 153 in MegaTune, but you can finetune with DVM or readings from the connected device) 3V / lambda was successfully tried with motec input. The input curve in Motec can be configured (allows 0..5V input range);
- 0.8 lambda => 2.4V obviously
- 1.0 lambda => 3.0V obviously
- (Man)mttg13mttc99(mcs) to set vout_conf (position 0x13) to value 0x99 manually
- not recommended (proportionally higher vout_conf):
- 4V / lambda : maximum practical (max 1.25 lambda limited by output range)
- 5V / lambda could be useful with -1.5V offset (0.6 lambda => 1.5 V ; 1.3 lambda => 5V). This would allow the best interfacing precision (although 3V / lambda is already very good).
===NBO2===
- NB sensor simulator, LSM11 reference curve. This curve is mostly useful for old type NBO2 input equipped factory ECU-s only, since it has very low slope (=> hard to tune, prone to noise) at lambda=0.8 which is kindof unfortunate vout_conf=01
===Special===
- Autronic standard, 0-1v= AFR10-30
- using the near 0V part of the curve is very unfortunate (much better is 0V = error or unknown)
- 10 AFR (0.68 lambda) minimum is a bit unfortunate as well
- old diy style 0..5V: 2.08V best power, 2.5V stoich. (this is Ip based, vout_conf=02)
- Linear 0-5V EGT output (0V at -50C; 4mV/C, so 4.8V = 1150C). vout_conf=00 It could be also good usable with other ECU-s that can't accept the k-thermocouple signal directly.
Note: besides the vout curve, the vout filter frequency would be nice if adjustable (when using it with other aftermarket systems, sometimes you want it almost unfiltered and sometimes you want it as slow as 1Hz.)
==Firmware Releases==
The current release is listed first, other releases may remain for historical reasons.
Firmware upgrade does not change the factory configuration saved in EEPROM. Even if we add new variables to firmware, we keep the old variables in place.
You can revert to default config (wbo2, EGT, etc...) if you write 00 or 255 into wbo2_pump_pw_zero, save and reboot. However, that should not be necessary. It reverts to wbo2_pump_pw_zero=0x65 and egt_offset=0xC0 so you might want to adjust pump_pw_zero (best values vary from 0x62..0x68 for a certain controller) and egt_offset (easy, looking at the temp, especially if the sensor is room-temp or an alligator clip is used on the EGT terminals)
===Current Release===
- [RoundLoader_firmware01.zip] includes
- 2006-04-11 firmware, that supports RPM input
- roundloader_beta native win32 binary (roundloader.exe and bat files). You will need to adjust to your COMx port
- eg. replace COM3 => COM2 (or whatever applies).
- roundloader.exe -p COM3 -s 19200 -f C:\tmp\STABLE1_0\minrtest\round.chex -c write
- change C:\tmp\STABLE1_0\minrtest\round.chex to round.chex in the command (sorry, the absolute reference will be dropped in next release)
- start it from a "run -> cmd" shell, not by clicking on it so you see the output (success or error)
Please report any roundloader.exe problem (it seems fine, so success need not be reported from now)
- XP with pl2303 USB-RS232 adapter cable from WebShop: success
- Successfully upgraded/verified firmware with roundloader on WinXp sp2, notebook with USB/RS232 adapter. Seems fine. (MembersPage/GergelyLezsak)
- Successfully used roundloader to upload new firmware. Used on Dell D810 laptop on com 1. (Stefcross)
The oldschool method: prog.pl Works (similar to BootLoader) with new (included in the zip) prog.pl version (PERL and serialport module required). Prog.pl only recommended on linux, or if roundloader does not work for some reason. Ask for a linux roundloader native executable if you need it.
- Read the README file for display configuration
- (lambda/afr; Celsius/Fahrenheit; internal temp/EGT; soon RPM in upcoming release) through config.disp_state (also changed via button);
- comm.c if you want to improve MegaTune round.ini
- global.h if you want to improve MegaTune round.ini or configure manually through (Man)mttg..mttc..(mcs)(bye) commands
http://www.vems.hu/files/Firmware/Round/RoundFirmware00.zip (see the beta release below that has the same files included, along with other useful stuff such as megatune!)
Since the new firmware has many nice configurable features, unaware users can be tricked easily if not aware of the configuration. Damage to the controller device is extremely unlikely, but it's possible to damage the sensor with bad configuration.
===Other Related Software===
- MegaTune
- released version (EGT -50C applied, and added RPM dialog): [round_MegaTune_2006-04-18.zip]
- obsolete: (without RPM dialog, and EGT gauge shows +50C higher): [old, obsolete version], should not be needed
- log data the same way as with v3.x (megatune -> File -> Datalog)
- log analysis: vemslog viewer (or any LogAnalysis program that can take xls input)
- the shown EGT temp is 50C higher than real. 50C should be subtracted from the EGT and internal temp before display to compensate the offset, since minimal temp that can be logged is -50C (a one-liner round.ini change to be done in next release)
- [round logger v001] (needs .exe and dll's to startup properly, download into the same dir)
- unknown quality
- free air calibration
- the RCal resistor in the sensor is supported, so calibration is not necessary (it's not possible in current firmware release, although a new finetune config variable can be made for it if necessary). The optimal PID parameters are different in the exhaust stream and free air, so don't worry if free air reading is slightly off or even floating somewhat. Note that toleration in the lamdba range is very good: 5% error means (actual => reading) 0.8 => 0.81 lambda (since the difference from lambda=1.0 counts, which is 0.2 and 0.19 respectively).
==RPM and wheelspeed input==
Devices shipped after 2006 March have the RPM input HW tested. (it's implemented from the start, but earlier it wasn't part of the testing.)
Beware that using the RPM input might require input voltage threshold adjustment with a simple pullup / pulldown resistor in some cases, depending on input voltage level. It is easy, but not plugandplay in all cases.
===RPM input HW===
rpm_input measures 5V if left open
- connect the signal input here
rpm_gndref to adjust voltage threshold with pullup/pulldown resistor
- Devices with serial_nr >= 100 have appr 0.6V threshold by default that is suitable for the common voltage level thresholds (notably VR / HALL / logiclevel) without pullup/pulldown resistor applied to rpm_gndref.
- pulldown (eg. 100k to GND) for lower voltage threshold (hardly ever needed)
- pullup (eg. 510k to +12V for higher voltage threshold): might be needed in very rare cases when the negative peak of the input signal is higher than +0.55V, like: 2V / 10V squarewave input signal.
- devices with serial_nr < 100 measures 2.5V on rpm_gndref input if left open
- if the zero-crossing negative edge is to be detected (standard VR sensor, eg. typical magnetic wheel-speed sensor or 60-2 wheel), leave it open.
- if you want higher threshold, eg. for a 0V / 5V HALL sensor, connect rpm_gndref with a 220k pullup resistor to a 5V (or 510k to 12V)
===RPM input config=== ("RPM settings" in megatune)
- rpm_toothcount. The number of pulses per crank rotation.
- 02 for a 4 cyl 2 events per rotation
- 3a (decimal 58) for a 60-2 wheel
- or 23 (decimal 35) for a 35-1 wheel
- set with (Man)mttg19c.. like mttg19c02 or with MegaTune
- rpm_multiplier
- set with (Man)mttg1amttc.. like mttg1amttce5 or with MegaTune
- 229 - 0xe5 default for RPM display. Different value can be used to cheat, or for vehicle-speed.
The precision is 1 RPM. Note that display from 230 .. 15999 is possible. Above 9999 the first digit is hexa, so
- a845 (=10845 RPM)
- b231 (=11231 RPM)
- c000 (=12000 RPM)
- d888 (=13888 RPM)
- e792 (=14792 RPM)
- f999 (=15999 RPM)
- fffu (above 16000 RPM)
For wheelspeed input
- set rpm_multiplier=FF (255) first, than adjust according to shown value (calibrate)
- Or you can calculate from the pulses / km.
- example: 10 pulses / m = 10000 pulses / km
- => 1km/h = 10000 pulses / hour = 166.67 pulses / minute (to be displayed as "0001")
- with tooth_count=0xa7 (decimal 167)
- and rpm_multiplier=0xe5 (decimal 229, same as used for RPM)
To support 1 pulse per cam-rotation: experimental [doubleRPM-firmware]
- rpm_toothcount=1, rpm_multiplier=229 needed for 1 pulse per camrot.
- rpm_multiplier=114 for rpm_toothcount pulse per (crank-)rotation.
RPM tricks
- don't forget to adjust toothcount according to the trigger pattern (pulses per rotation)
- if displayed RPM with toothcount=01 is half of real, see double-RPM experimental firmware that supports 1 pulse every second crankrot (1 every camrot). Normally it shouldn't be needed
The sensing voltage-level-threshold is adjusted with RPM-gndref pulldown/pullup resistor (yes, soldered; not configurable in software) value. Depending on the input signal specs, you might not need to connect RPM-gndref at all (eg. for 5..10V amplitude AC signal). The round device will not be harmed if you first try with RPM-gndref not connected.
First measure DC voltage on the output RPM signal (that you want to measure) when connected to nothing, but engine running.
Measure DC voltage
- between GND and the RPM-input pin. With nothing connected expect 4.8 .. 5.2V.
- between GND and RPM-gndref pin. With nothing connected expect 2.4 .. 2.8V
- if the voltage is below 2.6V, you likely need pullup resistor (old standard)
- if the voltage is appr 2.8V, you don't need pullup nor pulldown in most cases. Low amplitude VR-type signal might become more stable with 100..270k pulldown resistor (pulldown means between RPM-gndref and GND).
Mega Tune Setup
RPM gauge range (max RPM) can be increased in round.ini file, change the line:\nÿ1ÿ
I need ASAP the following settings for Round
- Voltage output
- 0.1Volt at 0.75lambda
- 1Volt at 1.25lambda
This is a customer request,his external datalogger work with these settings.Please make it ASAP.My advice is _ make a custom pfree programmable output for this,just like innovate did,so every user can program his own desired linear characteristics.
The other way around would make much more sense:
- 0.55V at 1 lambda
- and decreasing: similar to NBO2 (but better slope)
and output sampling rate,
free programmable WOULD BE grat,
but i need 5 sample/sec
and 3 sample/sec.
4 samples / sec is OK ? Why is higher rate (that follows lambda more promptly) a problem ?Too much unusable data on datalogging,btw its a customer request.
"OK,lets try 4sample/sec.Is this the factory default sampling rate,or do i have to set it somewhere?"
- See Linear WBO2 lambda output above for which linear wideband output signals are available (also README... file with your firmware to see how EGT or NBO2 can be configured)
- this negative slope will be available in next firmware release scheduled 2006-04-25
Documentation
Guide development here:
http://vems.hu/www.vems.co.uk/VEMSWB/UserGuide/readme.html
Readme has been updated to reflect conversations on IRC.
We still need more information regarding wiring and configuration of the Round.
Most people want Tacho input for RPM.
A 'consumer grade' download for Windows users is in development here: http://vems.hu/www.vems.co.uk/VEMSWB/VEMSWideband.zip
I need to disable a few of the critical Wideband configuration settings.
or whatever max RPM you find appropriate if 11000 is not enough. The last values are responsible for the color-"alarms".
Other Information
The AfreshTiny was the working name for our first round 52mm WBo2 meter design.
Same circuit can also be used for other functions, see AfreshTiny/OtherUses
Input from user
- How do we choose between Lambda and AFR display? (or Celsius/Fahrenheit)
- display_state variable (eg. decimal 10 means RPM)
- How do we choose vout curve without RS232 ?
- currently not possible
- How to insert "markpoints" in the datalog
- the button is logged at the most significant bit of the ADC input
Which ones do we need ? HW output (high vout resolution) allows either: