Subpage of CanBus
[VEMS STM32 Aim to CAN] adapter pinouts:
DSUB9 male (+5V supply and RS232)
- DSUB9M/pin2: RX Data transmitted by VEMS ECU (female), received by adapter (male)
- connect to VEMS ECU 2nd RS232 TX (eg. DSUB9F/pin2 or on EC10pin/... connect that to DSUB9/pin2 - using a DSUB9 female connector, pin2)
- DSUB9M/pin3: TX Data transmitted by adapter (male), received by VEMS ECU RX (female DSUB9F/pin3)
- optional, not needed for AIM to CAN function
- (only useful for analog + wheelspeed + digital switchbutton input data for 10+ extra inputs, if ordered with that option, without "analog input multiplexer")
- DSUB9/pin5 GND (verify connectivity to other GND-s eg. EC36/26)
- DSUB9/pin9 +5V supply (verify with DVM DC voltage measurement)
- <50mA supply consumption.
Note that this
- pinout is similar as a PC RS232 port, with notable difference that DSUB9/pin9 = +5V supply is needed),
- Although most often 2nd RS232 TX is available on EC10/pin..., this plugs into standard 2nd RS232 DSUB9 female connector on endplate (or flying-loom connector as requested (in order comment), refer to included paper (and/or measure).
- See GenBoard/Manual/CommHardware
CAN cable
- CAN_H → white
- CAN_L → brown
- CAN cable shield not connected in ECU.
Notes:
- the wire colors (white is CAN_H) similar default as [v3 internal CAN] used for [BMWS65]
- please measure resistance with DVM between CAN_H and CAN_L (not connected to the bus):
- infinite (apply 120 Ohm if termination is needed), or simply connect to the CAN bus that is already terminated on both ends. (default unless requested otherwise)
- 120 Ohm : terminated (connect to one end of the bus)
- 240 Ohm : apply 240 Ohm if 120 Ohm termination is needed, or another 240 Ohm termination device (mostly used in BMW S65, otherwise uncommon)
In the end, if both ends of the CAN bus is terminated with 120 Ohm resistors (or devices with 120 Ohm resistor internally), DVM will measure 60 Ohm (devices on the CAN bus powered off).
DSUB15 male pinout (analog/digital inputs)
- 1 - Analog EA0
- 2 - Analog EA1
- 3 - Analog EA2
- 4 - Analog EA3
- 5 - Analog EA4
- 6 - NC
- 7 - Analog EA5
- 8 - Analog EA6 (activation)
- 9 - Analog EA7 (activation)
- 10 - Analog EA8 (activation, PB0)
- 11 - Wheelspeed4 in (PB11) 0-6500 Hz (0.1Hz resolution) 0/5V or 0/3.3V (or just open collector/open drain pull to GND. If in doubt, verify with scope that voltage of the input signal drops to 0.7V or lower; note: normally drops to 0.1 .. 0.4V)
- 12 - NC
- 13 - GND
- 14 - NC
- 15 - NFET out (PB15)
Resolution of analog inputs is 0.81mV (12 bits).
- Data sent (triggerframe, frametype 1F) since firmware version 0.0.2
- as a verification: DSUB9M/pin3: TX sniff 19200,8n1 (1900..1920 bytes/sec at max), save datastream (raw, or hex to txt file)
Configuration, See also:
Debugging:
If in doubt, verify that VEMS ECU is configured to send AIM data stream, 19200,8n1 every 5th byte is A3. Examples:
- (03EB=) 1003RPM - 01 A3 03 EB 92
- (07D6=) 2006RPM - 01 A3 07 D6 81
You can also send AIM compatible data stream/packets from
- PC RS232 DSUB9 male DSUB9M/pin3 (data transmitted by PC)
- to the adapter DSUB9F/pin2 (data received by the adapter)
- eg. data previously captured from VEMS ECU configured to send AIM stream data. The wheelspeed and tach (RPM) gauge data can be tested for compatibility (with given dash).
- "Vt(VemsTune) can receive AIM data on a secondary serial cable from the ECU", see [ vemstune help] (but of course if TerminalProgram does not see the bytes in the 19200,8n1 stream, with A3 being every 5th byte (again: that is good indication to start with - always include the result in any related report or request), VemsTune will NOT magically see the stream either