Bitte besuchen Sie unsere originalen Webseiten.

Visit our original site, please.





OBD OBD-2 OBD2 OBD II OBD 2 OBD III OBD2-Sop.eu diagnoses

OBD-2 Shop. eus OBD2

New!
Ambitious handicraft enthusiast can shop now in my own online-shop OBD2-Shop.eu. Presently I offer were above all parts for the Adapter introduced here, there this beschaffbar partially heavy (see forum contribution). In the future, the product range yet is supposed to be expanded.


Jeffs OBD-2 Adapter for less than 15,- Euro

Contents

Introduction
Component for the Adapter
Prepare platinum
Platinums equip
Function test
Tuning
Result

Introduction

In the mean time I developed an of KW own 1281 interfaces , which is to be preferred my opinion after the control of Jeff.

Before it goes off would be referred once again on that that with this control of only vehicles out of the VAGUE-group examined will can and it essentially for the software VAGUE-COM thought is.

On numerous web pages, one finds discussions over Jeffs minus Mali tables control. It should come etc. to problems in the reliability. Moreover it gives probably also ODB-2 connections in the car with which the L-direction should be at pis 15 a second K-direction. So entirely I cannot understand that when and why that should be the case. Moreover becomes gladly over the cheap and nominally heavily beschaffbaren Optokoppler, that are operated moreover outside of the allowable specification, and the unprofessionellen OBD-connectors cursed. Interestingly enough gladly of people, who want to sell your own - much better - control.
I have the control at my T4 (Bj. 2001) and at a Sharan (Bj. Operated 200?) successfully.
I can understand the procurement problems in no manner. Is that a connector as well as that here introduced not professional, is doubted must be also not at all, but it that then? And on the correct Polung in the putting away, one must simply eighth - someone whom the controls reproductions can, that probably will manage.
But it gives can make itself naturally further Schaltplanentwürfe and the inclined handicraft enthusiast self a picture. Of solutions, that come out totally without separation between board electronics and PC and connect both sides more or fewer directly over Transitoren, I dissuade destroy can myself urgently, there one here quickly board computer or PC-interface - the purest lottery game.

Component for the Adapter

The Adapterplatine comes of Jeff Noxon. On its web page, all stands what one must know. If one does not solder just daily. Therefore step for step:

On the side, you find both the platinum layout, and a schematic drawing as a PDF. Based on the Board-layout, we prepare a leader disk. Also in addition Jeff wrote some short instructions, that I found very interesting, because the leader plan is ironed on the leader disk. Yet in addition later yet. First shoppen go:

Amount Label Order-Nr. Price Comment
3 PS2501-1 Optokoppler € 1.00 There is not that in Conrad. The replacement type SFH615-A2 only on order (#153780). Therefore to Segor (hach have I it as Berliner well)
2 2N3904 transistors 163350 € 0.28
2 1N4004 Dioden 162248 € 0.08
6 1.0 kOhm 1/4W resistance 403253 € 0.10 brown|blackly|red
1 1.5 kOhm 1/4W resistance 403270 € 0.10 brown|green|red
1 10 kOhm 1/4W resistance 403377 € 0.10 brown|blackly|orange
1 150 kOhm 1/4W resistance 403512 € 0.10 brown|green|yellow
1 1 µF 50V condenser (Elko) 460460 € 0.12 The minus pole is marked and must portrayed lies "towards the top" if the leader disk how before one
1 Sub-D-bushing 9 poles. 742082 € 1.02 Take where appropriate another suitable connector housing in addition if it should look more somewhat professionaler

Until here, the list concurs most extensive with that of Jeff only that we save ourselves the Sub-D-connectors for the Printmontage on the leader disk and there afterwards the cables directly solder the connector to the laptop and to the OBD-2-Buchse. In the cheap project, we can forgo removable cables. We need where appropriate another couple of things if the Bastelkiste does not yield that:

Amount Label Order-Nr. Price Comment
1 Cable 5adrig 261874 € 0.99 Anything. Here 6adriges telephone cable. Also flat volume cable can be etc. The length is choose after. We need a cable of the OBD-2 connectors to the Adapter and one then to the laptop. I want to control naturally my motor management in the bus behind at the table sitting, therefore respectively ca. 1,5m
1 Plastic housing 520993 € 1.43
1 Plastic shell ca. 1/2 Liter Ca. € 2.00 Also glass can be. No metal. Use and never again for groceries.
1 Iron-III-chloride bag 250g 528722 € 1.38 For stirring in the corroding, a Plastikrührer is used. Perhaps a plastic fork of the last grill party?
1 Leader disk unilaterally, unbesch. 528307 € 0.74 Suitably for the project + the OBD-2 connectors: 50X100
1 Material A small hand drilling machine Dremel o. ä., 1.0 mm and 1.2 mm of more drilling, soldering iron, Lötzinn, where appropriate fine Permanentmarker for Overheadfolien (waterproof) Staedtler Lumocolor permanently o. ä.

Prepare platinum

Information: I expanded my offer around an extensive article to the platinum manufacture.

Jeff describes an interesting method on its side in the FAQs how one transfers the leader train picture to the leader disk. At the same time it irons the layout printed with a laser printer on a foil on the copper layer. My last Ätzerfahrungen lie hesitated years back and the technology wanted I equally once test. In principle the procedure functions, but the leader train picture was with me subsequently not covering enough. Power however nothing, for on the copper layer I was able to recognize the leader railroad and then I did likewise the railroads simply of hand with a Permanentmarker (Edding, that above named Staedtler o. ä.). Is there important only that the color is applied covering. The actual color is equal, for it goes only therefore to raise a protection film, at which the Ätzbad cannot attack later the leader railroad.

There the leader disk yet suffice offers place, bring we in a corner yet the Lötaugen for the OBD-in accordance with 2 connectors the model portrayed above on. So we corrode both platinums in a process and saw shooting the leader disk in two parts.

So, now the toxic part comes: First once we eliminate ourselves all clothes and stretch are what on wherewith we otherwise also at the car do handicrafts or painters, for iron-III-chloride spots ugly and cannot be removed. Do not rub the thing also into the eyes and inhale not to deeply! Uncover the table well with newspaper paper and then hot water (ca. Give 40-60°C) into the plastic bowl. Dissolve to give away about the same weight quantity of iron-III-chloride and with the Plastikrührer.

Put the leader disk with the copper side towards the top into the bath and easily move now the entire time the bath until all copper areas weggeätzt became and are remaining only the marked leader railroads. That lasts ca. 15 minutes. At the beginning verfärbt the copper pink, what leads often in addition, that one thinks was itself, that it already, but first if one sees shine through the Expoxydschicht of the carrier material, is the copper away. The relief begins always of the edge here and prepares itself then to the middle.

Platinum in the Ätzbad

Rinse subsequently the platinums thoroughly with water and remove visibly are the protection layer over the leader railroads with Nagellackentferner o. ä. until the polished copper railroads.

Because in the model of Jeff the Lötpunkte no eyes closed are, but rather, fells the boring of the holes heavily because that more drilling slips on the copper railroads back and forth, if one possesses no drilling pennants and bores by hand. There it helps sharpen, if you with one small nail all drilling holes carefully with a soft hammer blow ankörnen. Bore subsequently all holes with a 1mm more drilling.

Platinums equip

Now becomes the platinums in accordance with the Bestückungsplan on Jeffs web page equipped (R8 is there falsely with 140 K instead of 150 K indicated). If you are no Lötprofi, eighth you on that to superheat the components not. Insert rather recesses and solder always only a leg and solder then perhaps first a component other. You begin would resist with that, then the Dioden, with which you must on the alignment of eighth, just as in the condenser and the transistors. The ICs to the end. Eighth you also here on the small designation in form of a point or a notch.

Equipped platinums

In accordance with the schematic drawing, the cables are soldered for the connectors. Because we use no Sub-D-bushings for the Printmontage, the cables directly are soldered. For the computer side, the Lötpunkte 1:1 are connected with the gleichbenannten contacts of the neunpoligen Sub-D-bushing. The image shows how the Lötstellen are numbered on the left side. At the bushing, the contacts are marked also. The OBD-2 connectors is connected in accordance with the legend in the schematic drawing (1->4, 4->7, 8->15, 9->16). Because we connected 4 and 5 at the connector, we need only the one direction of point 1 of the platinums to pi 4.

A Klecks hot glue provides for the necessary train relief of the cables so that these do not pull out me the time. After the function test can be secured then the platinums with two further Heißkleberklecksen in the housing.

Function test

Show Time! From on the street. Open cover to the OBD-2 bushings and carefully push in disappeared are the selbstgebastelten connector until about the eyes of the Lötösen. Stick subsequently the Sub-D-bushing in the COM-Port of the laptop. Laptop flare up. Start VGA-COM. Turn on ignition. Recognize let vehicle per Autoscan. If everything works out, are listed etc. can go off the Fahrzeugkenndaten and now it and is delivered us the Boardcomputer (insane interesting: yet 31 liters of tank contents and the Zentralverriegelung stands on openly).

VAGUE-Scope

The image appears read let for example the motor number of revolutions (1) in that exactly the Schaltvorgänge, the increasing speed up to ca. 160 km/h (2) and the drawer pressure of the Turbos (3) that falls away rapid, when the vehicle rolls out. With these data, you then for example yourself can review whether the Turbolader is in order, because it constructs in each gear a constant pressure and holds this also during the acceleration.

On the web page of openobd and MFT , one finds some examples to the Einstellmöglichkeiten for current vehicles. For example around for my T4 TDI Bj. To put back 2001 with LongLife and flexible notice the service interval (also once in T5 view, there stand teilw. more statements, that however also for T4 count) :

For this adaptation, the full version of VAGUE-COM is however necessary. Select function 17 (Kombiinstrument) in VAGUE-COM and change to the function 10 (adaptation). Then following values adjust in order to put back the service interval after an oil change:

Canal Meaning Valued
02 1 = Service duy, 0 = service ready 0
43 Max. Distance to the next oil change [in 1,000 km-steps] 50
44 Max. Time to the next oil change (24 months) [in days] 720
45 Oil quality. Oil after VW specification 506.00 uses 4

Further interesting values there are:

Canal Meaning
40 gone distance since last service [in 100 km-steps]
41 Time since last service in days
42 minimal km-performance [in 1,000 km-steps]
46 Total consumption quantity (only gasoline), rake value for the service notice
47 Soot entry (only diesel), rake value for the service notice
48 thermal load (only diesel), rake value for the service notice

Tuning

Again and again the prurience is large to undertake per OBD also Motortuning. Therefore without getting out chip or Blackbox more achievement. I hold therefrom nothing and advise off! Without motor test bed, one can no qualified statement over the performance improvement in walking exhaust fumes and Antriebsbelastung etc. make. In horse-Tech, one finds some short information how one can adapt and a. the idling number of revolutions and the Einspritzmenge, why the logins codes 12233 is required.

Result

To heat up not only, that it made after long abstinence of once again joke, the soldering iron and to play with chemistry. No, the project functioned also yet how hopes for and saved we a quantity of money: For € 14.63 components and consumption material we otherwise not would have got once an OBD-2 connectors. Even if one issues yet € 15,- more, in order to buy himself one cheaper hand more drilling, plastic shell etc., remains one under the usual praising for an Adapter. And from immediately, we must trust no longer on that that in the service in the workshop of all so made becomes, how we it imagine, but rather settle the oil change rather self. That costs decided fewer.

Much joke!


To the termination, I would like to refer yet on that that I (like also Jeff) answer no aids at all and information to the project per enamel and also no kits would sell or Adapter. Utilize the forum!

OBD-2 interfaces AGV4000

The AGV4000 of OBD-DIAG belongs, how also the ELM 327 and the mOByDic, to which Multiprotokoll interfaces that CAN (ISO 15765-4), SAE J1850 PWM, SAE J1850 VPW, ISO 9141-2 control and ISO 14230-4. Of the bidder, there are also other Adapter that serve a lower quantity of the protocol controlled by the AGV4000.

AGV4000

In contrast to other Adaptern, the AGV is integrated directly in an OBD II connector housing. The connection at the PC takes place via an USB interface (large B-bushing). Is addressed the interface over an USB-RS232 driver, that installs on the PC a further, virtual COM-Port. These drivers have the singularity to belay permanently new COM-Ports in change of the USB-Ports. Some programs (for example VAGUE-COM) are not in the situation, to recognize the available COM-Ports and to address or Ports after COM4. Therefore unconditionally control, addresses the USB-device under which Port of the drivers (devices-manager of the windows system characteristics: Start/Einstellungen/Systemsteuerung/System, index card hardware). Activate where appropriate one of the low Ports and ignore the where appropriate appearing error message.

USB driver

The reason command line consists like in the ELM of simple ( AT-) commands, that are Compatible to the ELM, so that software collaborates that serves the ELM also with the AGV. For functions going into the depth, like for example the Protokollierung and filtration of the byte transmitted on the CAN-bus, is required special software. The detailed data leaf delivers the desired information.

How also already in the ElmScan the standard speed is for the simulated serial interface 9600 Bd. The maximally possible 38,400 Bd transmission rates and other parameters are adjusted over a cost-free program to the "BIOS" -configuration so that no Jumperänderungen are necessary. In the program is to be noted, click will may that the AGV first after that on Connect with tension furnished (z. B. through put away into the diagnosis bushing of the car).

BIOS attitudes

For the handicraft enthusiast, there are the Schaltplan , platinum layout and the actual chip (basis is an AVR µC) in OBD-DIAG also as a DIL version. Above all, who can forgo the yet rather rare and only in really new car used CAN, is conferred probably with one of the more low-priced small types well.

Is remarkable that the AGV controls as the only interface with integrated Protokollinterpreter also a KKL-Transitmodus. Through keystroke, the Adapter becomes more or less inactive and serves interface as an USB for VAGUE-COM (max. Version 409.1). How in all KKL-Adaptern, the actually separate L-direction is addressed in addition like a second K-direction. A real L-direction is required yet once, an interface as well as that of me developed is required. Desirably would be if the AGV could shift over a tax command between the KKL-mode and the OBD-2 mode in order to be able to use out of a use both Features, without having to pull the Adapter for shifting, out of the diagnosis interface.

KKL interface newly developed USB for OBD (KW 71, KW 1281, ISO 9141, ISO 14230)

Contents

Introduction
Development
Schaltplan/PCB layout
Construction
Software

Introduction

With the already introduced serial KL-interface , an interface is given the interested car handicraft enthusiast for the On-Board diagnosis (OBD and OBD II) at the hand. In this KL-interface, it concerns separated head for also KL-interface real one the wenigern, that really yet the K- and the L-direction - so like it after the standards required is. Through it also very old vehicles can be addressed, that must be roused really yet over the L-direction, (what however rather rare the case is). The disadvantage is that many modern laptops show no more serial RS232-Schnittstelle and a RS232-USB-Adapter is required, that leads partially in low-priced models to connection problems. Therefore now here also a design for an USB-interface.

This USB-interface makes allowance for the development that some vehicles of the Volkswagens CORP. use the L-direction to the data communication (contrary to the permitted standard) and the L-direction will rouse used no longer for that. According to horse-Tech , it concerns at the same time: "All B6/8E chassis A4/S4 models with xenon headlights. All 2002 and newer A6 (C5-platform, 4B-chassis) models, including the Allroad.". The interface transfers named will be therefore to the L-direction-K-data, why such an interfaces also KKL-interface (many other letter manner possible: K/KL, KK/L etc.).

In order to decide between one of both Adapter, here some per and Contra arguments:
RS232 (KL) USB (KKL)
Per
  • Low-priced
  • Simple construction also for layman just yet for soldering suited
  • Standard just
  • For older vehicles necessarily
  • No driver installation
  • For lost weight laptops suited
  • KKL for some VAGUE models necessarily
  • Handy housing
Contra
  • no KKL
  • USB-Adapter required, if no serial interface available
  • Driver installation required
  • More expensive
  • Filigrane Lötarbeit

Development

Here, I deliver once a small insight into the development of the Adapters: First the prototype emerged was, to see that here already since some time:

Prototype This contained another design mistake, showed however that the principle already correctly was and fits also all into the small connector housing. Therefore the mistake was removed and just offered itself there it, were given also some professional leader disk in order. To be sure the new version was not tested before because the time was to tightly and the fabrication with einerm should be combined other order in order to save costs.


Platinum (with mistake) That do not prove was removed unfortunately to be tactically unwise, for the mistake, but rather only verlagert because it concerned sooner a Denkfehler. Therefore some PCBs in the reason lie around now here uselessly. The interface is to be sure in principle operable, but only the K-direction is supported. OK, that suffices also for probably 98% of all applications. The L-direction is required only for some Exoten.

Because I think, that some users require NO L at all direction, I dissipate these platinums in the Shop under purchase price - always better to hurl than into the rubbish (and/or correctly dispose of). He who wants therefore, can the Adapter already reproductions. In the control, T1, R6 and R8 may not be equipped.

Schaltplan/PCB layout

Kernel of the USB interface is an USB-chip of FTDI: the FDTI232 BL (PDF data leaf). This is to be integrated to be sure more somewhat costlier into a control, required because he in contrast to the FTDI232R an external quartz, but the distances of the legs are somewhat larger so that he better suits himself in order to be soldered with hobby equipment.
Thanks to the (unfortunately somewhat more expensive) FTDI-chip is guaranteed that it comes with this Adapater to no problems with older software, that was conceived only for the serial interface. Driver installation and Handling passes by analogy to the executions to the AGV4000.

Platinum in the connector housing While in the first prototype another duo-LED was planned, that signaled separated the condition of the virtual sending direction and reception direction (RXD/TXD), was renounced in the next control version on that (based on that something Beschaffbarkeit of heavy the LED necessary for this with joint anode). Now a standard-LED signals the condition for both directions, what suffices totally, because one was able to distinguish otherwise anyway only rarely the colors.

In contrast to the serial KL-interface, the ISO building block L9637D (PDF data leaf) of STMicroelectronics putters around in this control. This offers namely in addition the possibility to convert signal level of the detailed data on the L-direction.

As soon as the final frame of the interface is available, yet that Schaltplan etc. is submitted later here. Until there, a component list (for the defective interface) must suffice:

Amount Bezeichner Type
1 R1 470 Ω
2 R2, R3 27 Ω
1 R4 510 Ω
1 R5 1.5 kΩ
1 R7 220 Ω
1 C1 33 nF, RM 2.5
1 C2 10 nF, RM 2.5
2 C3, C6 100 nF, RM 2.5
2 C4, C5 27 pF, RM 2.5
1 C7 10 µF/63 V; Elko; RM 2.5; radial
1 LED1 5mm standard LED
1 Q1 6 MHz quartz
1 IC1 L9637D
1 IC2 FT232BL
1 USB1 USB bushing type B

Platinum design (with mistake) Because the control is defective, here solely the platinum design. In the control, T1, R6 and R8 may not be equipped. Otherwise the interface functions however.


Construction

In the control, T1, R6 and R8 may not be equipped. Did (everyone understand it now read?)

Detail installation direction ICs In the Bestückung on that respect that first the ICs are soldered. Is later there no 'rankommen more.

Platinum at pencil strip Then the remaining components. The quartz may not touch the platinums, there it otherwise both Lötpads kurzschließt. Therefore something distance keep (z. B. a cut off component wire in the soldering as a distance stop use). The LED can be soldered on the component side or of below. According to that how around the connector is stuck later into the car, so that the LED is to be seen.

Detail pencil strip Before the components are soldered along the gestrichelten line, that connector solder. The layout is sketched for a standard OBD connector. The platinums 1-8 (wide pencil collar) is soldered with the Bestückungsseite at the external side of the pencils. Pis 15 (in defective platinum required) and pis 16 are not soldered with a short wire bridge into the platinums.

To the end bore another hole for the LED into the Gehäsueschale. The housing covers should be together steckbar. To be sure the USB-bushing is already somewhat bulky. Therefore where appropriate at the inside of the housing covers wear out something material.

Software

At software, there is the same selection, like in the serial KL-interface.

OBD-2 KW of 1281 protocols

Contents

Introduction
Information source
Protocol type
Test environment
KW1281 - Initialisierung
KW1281 - timing
KW1281 - devices data
KW1281 - sensor data
KW1281 - communication envoy
KW1281 - communication mistake
KW1281 - mistake storage select delete

Introduction

Show the previous information how by means of the interface by Jeff and the ELM323 data out of the board computer via OBD2 selected will can. In Jeffs interface, the software VAGUE-COM is used and in the ELM323 ScanTool. Both solutions have its already clarified advantages and disadvantages. After that I already successfully one µ C with the ELM323 connected would have, should be realized yet that µC with Jeffs interface. This above all because I am interested at special data, that does not deliver the ELM, very probably however per VAGUE-COM out of my VW T4 selected will can.

While the communication is relatively simply realizable via ELM323, Jeffs interface requires an expense higher substantially because the interface undertakes solely an adaptation of the signal levels and supports no protocol so that one must program the total communication with the board computer itself. For that are available one then also much more data.

In order to anticipate the question emerging same again and again: Jeffs interface and therefore also my µC-solution function only with VAGUE-vehicles, that can be selected also by VAGUE-COM. I offer no support, answer no enamels and would sell nothing. He who wants, can use my forum , would answer in the questions interesting I also where appropriate - standard question, that one can solve also per Google , I ignore.

Information source

In the Web, one finds only sparse information to the protocol in order to exchange data with the tax devices of the car. In part that lies that much does not exist, but worked in themselves also, that many chip-done to be sure into the matter, but want to sacrifice nothing of its Betriebsgeheimnissen. Therefore this side on which I would like to summarize my acquired knowledge.

In the investigation, I found following sources, that helped along me:

Some so important to the left, the information do not offer, that are required partially yet in the further course:

Protocol type

The tax devices in the car use different protocols. Because I require only KW1281 and/or KWP1281 (KW stands for KeyWord), all executions are restricted to this protocol. Without it exactly to knowledge, assume I that the protocols KEYWORD82 and KEYWORD2000 relatively similarly work. Other protocols are partially similar or also very differently. Gladly KW1281 and ISO 9141-2 is thrown together. It concerns however at the same time two divided protocols, that use solely the same connections at the OBD-bushing. He who possesses VAGUE-COM (demo version passes), can read the protocol of the tax device in the upper left in the program as soon as a controller is selected.

VAGUE-COM

Test environment

The main problem in the protocol-analysis and programming exists therein that the car parks on the street and the computer stands far away therefrom in the dwelling. Therefore one must get the car somehow on the desk if one does not want to program in the winter in the car (my standing heating respektive the battery at the same time already once had to suffer). To the good fortune, the entire car is not required, but rather only a tax device. In the car, numerous of these controllers built in. The most interesting is the motor tax device (ECM - Engine Control Module), but also for ABS, Airbag, instrument etc., there are separate units that are summarized under the term ECU (Electronic Control Unit). One has such a tax device, one can furnish it on the desk with tension and can connect Jeffs interface (a couple of photo nice of handicraft enthusiasts). Is problematic only: Which tax device and how is it connected?

In Ebay, tax devices, that can cost newly until more than 1,000 Euros, become, pile manner offered. Motor tax devices quite are chosen. In Germany naturally above all that of VAGUE (and here above all of the gulf - what miracle). Usually chip-done that want to have the devices are it probably in order to replace either a zerschossenes or in order to make experiments. Want stupidly, that we also a VAGUE-device, are not however ready to pay the tightened prices. Would be ideal naturally exact the same device that built in also in the own vehicle. The types label shows VAGUE-COM in Number VAGUE at (s. o.). Now, for my T4 absolutely unrealistic, there rarely and expensively. Seek therefore first once a model for the first Gehversuche. Also if the actually exciting data come all from the ECM, an ABS suffices or Airbag controller first once in order to circumnavigate at least the first protocol plain. These are usually essential cheaper (until ca. € 20,-), for who a needed life insurance incorporates already in its own vehicle. Because these devices deliver however tweilweise no readings, becomes later in any case an ECM due.

ECU in the test construction

Now information on the connection of the controller is missing only, therefore the pi occupancy of that at the 100 Pins. In the Web, again few to find is here. I found a couple Pinouts. I will publish this in the forum and hope that further arrive of you. These controllers were me however in Ebay always too expensive. My sincere thanks to therefore at Wladimir of WGSoft, that gave me a hint and had also the suitable pi occupancy at hand. In the mean time I found out also that the program Autodata knows the pi occupancy for most ECUs (however no ABS-Steuergeräte etc.). Because the relevant tax devices are not brand-new, also an older version suffices. As soon as one knows, for which vehicle the motor tax device was used, one can indicate let himself the Pins.

Autodata

One knows that in VAGUE-COM (s. o.) as a Component designated types label, also the list helps perhaps in EVC further.

What is required now, is a soldering iron and a network component. The tax device must with ca. 12V furnished become. It is necessary all of the connections available often in great numbers for mass (GND) and Vcc (Plus) to connect. The connection for the K-direction of the OBD-2-Steckers of Jeffs Adapter is connected with the diagnosis signal of the tax device.

All correctly was connected, it must be possible, lived Jeffs Adapter with the tax device how to connect to the PC and to select the tax device with VAGUE-COM. According to model, different devices information is indicated. Moreover readings and mistake codes can be selected. Because the tax device is not connected to any fair antennae, new mistakes are recorded again and again (possibly supply voltage to the tax device shortly interrupt), also if one deletes the previous. The trial construction on the desk is now complete and it can at the protocol-analysis go.

In order to be able to query different readings and to reduce the amount of the mistake stored appearing by the ECU, can simulate one relatively simply some fair antennae. Most sensors deliver a resistance change. Solely the speed and the motor number of revolutions is diverted out of a tact signal, which aufweniger is. A resistance is connected to the connections of a sensor (the Pins and the resistance valued can one with Autodata in experience bring), the corresponding mistake lets delete itself persistently out of the storage. Instead of a festival resistance, one can connect also a Potentiometer in order to simulate changeable readings. Following table shows exemplary three sensors for the ECU 030,906,032 E:

Sensor Pi 1 Pis 2 Resistance Reading
Entrance air temperature 54 56 2,2KΩ 24°C
Motor coolant temperature 54 74 330Ω 79°C
Entrance air pressure 54 70 1KΩ Ca. 590mbar
62 70 10KΩ

KW1281 - Initialisierung

To communicate around with the controller two phases are important:
  1. The controller must be roused, knows so that it, one wants to communicate with it. Low baud rate 5Bd, 7O1.
  2. The actual communication with usually 4800, 9600 or 10400 baud, 8N1

In KW1281, the Initialisierung results, therefore the wake up, somewhat not usually: With a transmission speed of solely 5 baud, its address is sent at the controller. The addresses are analogous to the controller-numbers in VAGUE-COM. To note is there that in VAGUE-COM the number statement stand for the Module in Hexadecimal letter manner. Therefore 1 for the motor tax device, 3 for ABS, 15 (Hex) (21 decimal) for Airbags etc. After that will rouse all further data with a baud rate higher substantially transmits. The low baud rate is problematic however. On the PC, there is only a few program that support so slow baud rate. On the ATMEGA8 µC is not it over the internal USART possible. On the PC, probably yet the problem arrives that the Umschaltvorgang of 5Bd to 9600 etc. too long lasts, so that data go lost in the meantime. A circumstance that is not for my µC project relevantly however interesting.

Out of the named reasons, a trick is used of VAGUE-COM and other bidders in order to pass through the 5Bd wake up. Around the protocol to analyze there are two possibilities, with which the communication of VAGUE-COM with the tax device belauscht becomes:

  1. With a Datenlogger (z. B. Portmon) becomes the serial interface of the PCs records. Portmon loses with me to be sure data because the Puffer is apparently not large enough. Free Serial Port monitor delivers very good results. To be sure the program leads on one of my computers to the total fall - therefore caution. For that the Puffer is large enough so that one can very well Reverse engineering practice.
  2. With an oscilloscope, the signal levels are worn out at the K-direction.
The first method is simple, has however the disadvantage that it is not hundred percent accurate. I had partially the suspicion that all data were not recorded. To be sure one finds out completes so, like VAGUE-COM the 5Bd Initialisierung: Instead of changing the speed at the interface, this is set immediately to the desired data rate for the following communication (bspw. 9600Bd) and then the transmission is simulated with SET_BREAK:

IOCTL_SERIAL_SET_BREAK_ON
IOCTL_SERIAL_SET
_RTS IOCTL_SERIAL_CLR_DTR
IOCTL_SERIAL_SET_BREAK_OFF   -> start-bit?
 IOCTL_SERIAL_CLR_RTS
IOCTL_SERIAL_SET_BREAK_ON    
-> 0 IOCTL_SERIAL_SET_RTS
IOCTL_SERIAL_SET_BREAK_ON    
-> 0 IOCTL_SERIAL_SET_RTS
IOCTL_SERIAL_SET_BREAK_ON    
-> 0 IOCTL_SERIAL_SET_RTS
IOCTL_SERIAL_SET_BREAK_ON    
-> 0 IOCTL_SERIAL_SET_RTS
IOCTL_SERIAL_SET_BREAK_ON    
-> 0 IOCTL_SERIAL_SET_RTS
IOCTL_SERIAL_SET_BREAK_ON    
-> 0 IOCTL_SERIAL_SET_RTS
IOCTL_SERIAL_SET_BREAK_ON    
-> 0 IOCTL_SERIAL_SET_RTS
IOCTL_SERIAL_SET_BREAK_OFF   
-> 1 IOCTL_SERIAL_CLR
_RTS IOCTL_SERIAL_SET_DTR

Between the single switches, 200ms lie exactly wherefrom then the 5Bd (1000ms/5bps) arise. In the example, the address 1 is addressed. Decimal 1 corresponds binary 000 0001.

My initial supposition, that the statement, that Initialisierung finds with 7O1 instead of (therefore 7 data-bits, an odd (O dd) parity and a stop-bit), does not agree, proved in exact Anaylse to be incorrect. The signal form necessary for the respective addresses exactly is kept whereby in the serial transmission first the niederwertige bit of the data word is sent. For example for address 1:
1 -> 0 1000,000,0,1 = 1 Start-bits (change of 1 on 0), 7 data bit it; 0 because unevenly parity is fulfilled; 1 stop-bit

On the certain side is, who can use an oscilloscope. A storage oscilloscope is advantageous because one recognizes in the extremely low transmission rate and the only uniquely adjoining signal nothing else. The image shows the signal course on my Hameg 205-3. the signal became direct at the K-Line, therefore behind Jeffs interface worn out because the different serial interfaces deliver differently clean signals, that irritate in the analysis, if one wears out the signal at the entrance of Jeffs interface. The Initialisierungsphase red was emphasized:

Signal course

The signal tips following on that are to be led back to the subsequent communication with higher baud rate after the wake up. Ablesbar clear the signal lengths are: The short change is per 200ms long and the longer phase 1400ms. The first signal flank High-> Low serves as a start-bit. In order to initialize therefore the tax device cleanly, it is worthwhile, that signal course to analyze and to respect on that that one exactly keeps the signal times, if one does not leave the data transmission to an interfaces building block.

Exactly that is made also of my program in that µC (vergl. Schaltbild) : Instead of generate the address of the tax device with 5Bd over the integrated serial USART interfaces building block, the TxD data direction (PD1), that becomes at the T1IN The MAX232 connected is, directly headed for so that the MAX232 issues the respective signals. To note is in the programming yet that one inserts before the Initialisierung a short wait, there by that turn on the tax device (tension provision) or prior communications, yet data by the controller sent become, that one does not want to use.

The communication to the Initialisierung looks as follows:

of that µC of ECU Description
0X01 5 Baud address of the tax device
0X55 Sync byte to that determine the baud rate (meaning unclearly)
0X01 key Word LSB (low significant byte) (meaning unclearly)
0x8A key Word HSB (high significant byte) (meaning unclearly)
0X75 Complement to the 0x8A

A couple of comments:

Large worry made with the baud rate after the Initialisierungsphase. I assumed that this is always 9600 baud. That is not so. 9600 probably only far commonly however promptly used is my ECU 10400 baud. Because I had selected the incorrect baud rate, only data scrap arrived instead of the three byte 0x55, 0X01 and 0x8A. First as I after days 10400Bd tried, worked out all on attempt. Therefore it is indispensable to determine the baud rate. That goes very good, in which one sends the 5Bd address at the ECU and receives then the answer in 4800Bd. It is not 0x55, 0X01 and 0x8A, send then yet once the address with 5Bd and wait with 9600Bd and where appropriate subsequently yet with 10400 Bd. It can be also that there is further baud rate - over information please me I.

KW1281 - timing

Yet more worry as the baud rate, prepared me the timing. How mentions, appeared reinforces communication problems with me, that I did not get into the handle. My table-ECU uses 10400Bd and showed no mistakes. Only that in the car (9600Bd) produced mistake. How I noted already once, that is µC with 8MHz relatively quickly in comparison with a modern PC, that is busied more therewith to paint windows-elements newly. Therefore the problematic nature of previously also my knowledge was documented after nowhere.

The solution is trivial: I receive a byte of the ECU and send immediately an answer or a request-byte other. That is too fast. I have unfortunately no exact details about the time distances. After that I however before each byte to be sent a recess of 5ms would insert, stands the connection absolutely flawlessly. The Interrupt-gesteurte Puffer provides that no data go lost. How it is looks the ECU with 10400Bd therefore fast enough been in order to decrease the data of my µC, what did not create the 9600er.

On the other hand the recess may become also not too large. Time of unknown after one me (approximately <500ms) the connection is interrupted to the ECU.

KW1281 - devices data

After that the tax device is ready, starts the transmission of the devices specification. Herewith the controller with that number reports itself VAGUE, the devices label etc. VAGUE-COM places apparently delivers partially more data there, than the device. The delivered data are according to my opinion also not very so exciting, so that small inconsistencies can be ignored. Importantly is that the communication speedily expires, because the tax device does not wait gladly. Because before that had begun µC the communication, the ECU is now at it and that µC only therewith is busied to suppose the data and to confirm with the complement.

First the VAGUE-number and/or controller ID is transmitted (in this case "030906032E") :

of that µC of ECU Description
0x0F block length (s. u.); ECU mast is
0XF0 Complement
0X01 block counter (s. u.)
0xFE
0XF6 block titles (s. u.)
0X09
0X30 ASCII value for "0"
0xCF
0X33 "3"
0xCC
0X30 "0"
0xCF
0X39 "9"
0XC6
0X30 "0"
0xCF
0X36 "6"
0XC9
0X30 "0"
0xCF
0X33 "3"
0xCC
0X32 "2"
0xCD
0X45 "E"
0xBA
0X20 "" (Empty sign)
0xDF
0X20 ""
0xDF
0X03 block end (s. u.)

A couple of references to single values:

Now that is µC again at the row. It has no other choice when a confirmation block (ack command) to send and the ECU confirmed the single bytes with the complement:

of that µC of ECU Description
0X03 block length; µC mast is
0xFC Complement
0X02 block counter
0xFD
0X09 ack command
0XF6
0X03 block end

Now again the ECU is at the row. Exactly like before, it already sends now the next block of data (looked counter = 3). In this block of data, the component label is indicated. This can z. B. "ME7.5.10 " be.

Subsequently that sends looked µC again an ack (looked counter = 4).

This game repeats itself as long as the tax device data wants to give praise. As a rule altogether four blocks of data are it: VAGUE-number, component label, software version (z. B. "3013") and dealer label. Possibly however yet further addition data follow.

In all these statements, it can be that single bytes are delivered, that correspond to no ASCII-sign, so that the information of which of VAGUE-COM deviate, moreover I assume, that VAGUE-COM evaluates the received data and prepares somewhat, what one can recognize already by the representation of the VAGUE-number.
Among other things the ECU can deliver instead of an ASCII-value 0X00, what is designated as a cut-aped signal. I do not know what has it therewith on itself. Do I replace simply all received sign-values outside of the ASCII-area of 0x21-0x7A by 0x3F ("?").

On the last communication block of the ECU reacted that µC how lived looked with an ack. If the ECU wants to send then no further data, it sends looked now self an ack:

of that µC of ECU Description
0X03 block length; ECU mast is
0xFC Complement
0x?? block counter (value according to amount of the previously exchanged blocks)
0x?? Complement the counter (value according to amount of the previously exchanged blocks) looked
0X09 ack command
0XF6
0X03 block end

Now the row is again at that µC. This sends looked simply an ack in order to hold the data connection uprightly. The ECU sends looked then again an ack, then that µC etc. into all eternity. That posts looked breaks µC no ack the ECU the connection immediately and it must again with a 5Bd Initialisierung begun become. During the following phases, that can looked send µC also always instead of a data request o. ä. an ack, looked answers whereupon the ECU with an ack.

KW1281 - sensor data

Instead of the data connection through the endless exchange of ack look to receive uprightly, can seize that µC also the initiative and request readings and/or sensor data. Instead of an ack sends look it then if it were at the row, a group reading.

Before we one look at throw the protocol, first once some couple of information to the understanding: Per group reading, the tax device is requested to deliver four reading blocks. At the same time there are groups of 1 until 255. Which four readings in a group delivered will be different and according to model of the tax device differently. It can occur, contains that a reading block no statements and in a group, the same readings can be delivered, like in another. That can be practical, for one so can view whether it a group gives, in which four desired readings are delivered. Otherwise it is however no problem to query as desired many groups. Before the readings, the index is transmitted always for the reading type. The index has is dependent on the tax device (and possibly also the group (not yet tested)) in that it available, another meaning has. So for example the same index can once for the outside temperature and once for the oil-temperature stand. The readings are divided always in two bytes. First through a rake operation the actual reading becomes out of the two bytes. According to sensor type, the rake operation is another.
This is therefore also the "amusing" part: It counts to find for each tax device individually out, which data are delivered per group and are to be calculated like this.

How always there is some couple of information in the network that are spaces custody and by me as far as possible supplemented are - over addition information please me I once again! The following table (being based on the file Value-calculation. txt out of the Yahoo! Group opendiag) shows the indices for the sensor data (1. byte) and its conversion, whereby a for the first reading-byte (2. byte) stands and b for the second byte (3. byte). All statements are yet unconfirmed. Solely that with one √ in the column meaning of overlooked are tested of me.

Index Meaning Calculation Unit
1: ECU 23: Instrument
1 Motor number of revolutions √ Motor number of revolutions √ 0.2*a*b rpm
2 Absolute throttle flaps position (? @?) a*0.002*b %
3 0.002*a*b Deg
4 abs(b-127)*0.01*a "ATDC" if Value >127, else" BTDC"
5 Oil-temperature √ Outside temperature √ a*(b-100)*0.1 or 0.1*a*b - 10*a °C (both formulas seem OK to its)
6 Supply voltage ECU (= battery) √ Supply voltage ECU (= battery) √ 0.001*a*b V
7 Vehicle speed √ Vehicle speed √ 0.01*a*b km/h
8 Bit Value Cruise Control??? 0.1*a*b (no units)
9 (b-127)*0.02*a Deg
10 if b==0 then "COLD", else" WARMLY"
11 0.0001*a*(b-128)+1 -
12 0.001*a*b Ohm
13 (b-127)*0.001*a mm
14 0.005*a*b bar
15 CAN bus status??? 0.01*a*b ms
16 Am. Bit it ??? bitvalue
17 ??? chr (a) chr (b) -
18 Absolute press original, Atmospheric, press original, Intake Manifold, press original 0.04*a*b mbar
19 Tank contents √ a*b*0.01 l
20 a*(b-128)/128 %
21 Module. Piston, Movement transmitter (? @?) Voltage 0.001*a*b V
22 0.001*a*b ms
23 EGR Valve, Duty Cycle / Inj. Timing??? b/256*a %
24 0.001*a*b A
25 (b*1.421)+(a/182) g/s
26 b-a C
27 Suited. Timing Calculated/Actual??? abs(b-128)*0.01*a ° ("ATDC" if Value <128, else" BTDC"???)
28 b-a -
29 Know field if b<a then "1.Kennfeld" else "2.Kennfeld"
30 b/12*a Deg k/w
31 Preheating, Time??? b/2560*a °C
32 ??? if b>128: b-256 else b -
33 Position accelerator √ 100*b/a (if a==0 then 100*b) %
34 (b-128)*0.01*a kW
35 Fuel-consumption √ 0.01*a*b l/h
36 G sharp. Course achievement (last place rounded) √ a*2560+b*10 km
37 Oil pressure (? @?) ??? "Oil Pr. 2 < min"
38 (b-128)*0.001*a Deg k/w
39 Inj. Quantity Driver Request/Torque Limitation/Smoke Limitation [in T4 5,8mg/h in the idling] b/256*a mg/h
40 b*0.1+(25.5*a)-400 A
41 b+a*255 Ah
42 b*0.1+(25.5*a)-400 Kw
43 b*0.1+(25.5*a) V
44 Time √ a: b h of m
45 0.1*a*b/100
46 (a*b-3200)*0.0027 Deg k/w
47 (b-128)*a ms
48 b+a*255 -
49 Measure Air/Rev or Air measure, Calculated or Air Mass,Actual??? (b/4)*a mg/h
50 ??? (b-128)/(0.01*a), if a==0 (b-128)/0.01 mbar
51 ??? ((b-128)/255)*a mg/h
52 b*0.02*a-a Nm
53 Air flow air measures knife (? @?) (b-128)*1.4222+0.006*a g/s
54 a*256+b Count
55 a*b/200 s
56 a*256+b WSC
57 a*256+b+65536 WSC
58 1.0225*b, if b>128 then 1.0225*(256-b) s
59 (a*256+b)/32768 -
60 (a*256+b)*0.01 scnd
61 (b-128)/a, if a==0 (b-128) -
62 0.256*a*b S
63 Text chr (a) + chr (b) + "?" -
64 Resistance √ a + b Ohm
65 0.01*a*(b-127) mm
66 (a*b)/511.12 V
67 (640*a)+b*2.5 Deg
68 (256*a+b)/7.365 deg/s
69 (256*a + b)*0.3254 Bar
70 (256*a + b)*0.192 m/s2

One wants to know now, which readings in which group are delivered, one can select simply after each other all 256 groups and can note the indices. Helpful however also VAGUE-COM can be. One selects the tax device with VAGUE-COM, one can on the button Meas. Block - 08 click and read then after each other exactly the groups durchklicken and the respective four sensor data. Alternatively one can study also the Labelfiles , that are also in the sub-folder Labels. Based on the VAGUE-number, one can identify the corresponding file. At the same time it gives me however partially unclear convention, for to the one, it gives gave redirects for tax devices numbers and for my tested Steurgeräte it no Labelfiles although VAGUE-COM knew the Bezeichner. One has however the suitable Labelfile, one finds details about the groups and the delivered data in this text file. For example 022-906-032-AYL.lbl:

002,0,Basic Functions (measure Air Flow
) 002,1,Engine Speed,, Specification:  650...,750 RPM
002,2,Engine Load,, Specification:  12.0...26.0
% 002,3,Injection,Timing,Specification:  1.0...4.0 ms
002,4,Intake Air measure,, Specification:  2.5...5.0 g/s
Herewith it concerns the group with the index 2. After the comma, the four blocks of data are subdivided. There are not 0 and is only a category label for VAGUE-COM. The first byte delivers the Engine Speed (motor number of revolutions), the second byte then that drawer pressure etc.

The index 16 delivers a binary value. Partially one finds the meaning of the single bits in the Labelfiles it. For example for the second group in 074-906-018.lbl:

;
Measuring Idle
2,1,Engine,Speed
2,2,Accelerator,Position
2,3,Operating,Condition
1 looked 002 -) 2,4,Coolant,Temperature

;; 1) 010-OK
   ; 011-Air Conditioning switched on
The third block of data delivers a byte value, that indicates in the binary representation and a,., whether the air-conditioning is at.

If the row is again at that µC, this can said look send how also a group reading instead of the ack:

of that µC of ECU Description
0X04 block length; µC mast is
0xFB Complement
0x?? block counter
0x?? Complement
0X29 block would title (group reading)
0XD6
0X02 group index (0x01 until 0xFF) that read will should
0xFD
0X03 block end

Hereupon the ECU answers for example (ECU 030-906-032E) :

of that µC of ECU Description
0x0F block length; ECU mast is
0XF0 Complement
0x?? block counter
0x?? Complement
0XE7 block titles (answer on group reading)
0X18
0X01 Index for 1st block of data
0xFE
0XC8 1St sensor data-byte = reading of a
0X37
0X00 2Nd sensor data-byte = reading of b
0xFF
0X21 Index for 2nd block of data
0xDE
0X85 1St sensor data-byte = reading of a
0x7A
0X85 2Nd sensor data-byte = reading of b
0x7A
0x0F Index for 3rd block of data
0XF0
0X29 1St sensor data-byte = reading of a
0XD6
0X00 2Nd sensor data-byte = reading of b
0xFF
0X12 Index for 4th block of data
0xED
0xFA 1St sensor data-byte = reading of a
0X05
0x5A 2Nd sensor data-byte = reading of b
0XA5
0X03 block end

Subsequently that can request µC a further group reading for an any group.
Totally to the Verzweifelung drove that the ECU out of my bus during the group readings after some (differently frequent) group readings successful a byte of 0x0F sends, after which that was µC at the row, and the byte for that looked length sent has me. A mistake seems to be, for it stepped only up if the motor ran and was not, if only the ignition a. Subsequently the communication is concluded and must begin one again with the Initialisierung. In the mean time I recognized that as a timing-problem.

In the example, the ECU sent following data for the second group, that can be converted then:

Index Reading of a Reading of b Calculation (cf. above) Result
1 200 0 a*0.2*b 200*0,2*0 = 0 rpm
33 133 133 100*b/a (if a==0 then 100*b) 100*133/133 = 100%
15 41 0 0.01*a*b 0,01*41*0 = 0ms
18 250 90 0.04*a*b 0,04*250*90 = 900Mbar

As an example an Auflistung of the first 26 groups, like it the ECU (074,906,018 A) out of my T4 111KW delivers:

group # 1St index 2Nd index 3Rd index 4Th index
1 1 39 21 5
2 1 33 16 5
3 1 49 49 23
4 1 27 27 23
5 1 39 27 5
6 7 16 16 8
7 5 17 5 5
8 1 39 39 39
9 1 39 39 17
10 49 18 18 33
11 1 18 18 23
12 16 31 6 5
13 51 51 51 51
14 51 17 17 17
15 1 39 35 39
16 2 16 16 6
17 17 17 17 17
18 7 16 7 7
19 21 21 17 17
20 1 39 21 33
21 49 49 23 16
22 27 27 23 7
23 18 18 23 18
24 5 5 5 8
25 17 17 17 17
26 63 50 53 17

A total survey of the first 128 bytes exists as a text file. The readings for the indices 1, 2, 5, 6, 7, 8, 15, 16, 17, 18, 21, 23, 27, 31, 32, 33, 35, 39, 49, 50, 51, 53, 63 can be queried therefore.

Interesting also the circumstance is that other tax devices use the same above-mentioned table with the indices. One reads for example my T4 tax device Kombiinstrument (7D0 920,823 C) out of (address 0x17), one gets delivered the indices 7, 1, 37, 44 and 36, 19, 64, 5 for the first of both groups. Text filewith all values.

KW1281 - communication envoy

The data connection is supposed to be concluded because that would like to adjust µC the communication, one should end looked send a clean output:

of that µC of ECU Description
0X03 block length; µC mast is
0xFC Complement
0x?? block counter
0x?? Complement
0X06 block titles (end ouput)
0XF9
0X03 block end

Subsequently a tax device can be roused as required again with the accustomed 5Bd Initialisierung.

KW1281 - communication mistake

How already described, it can come during the communication on the part of the ECU to mistake. Not yet entire certain I am myself in the flow how on such a mistake reacted becomes. I was able to record two types of mistakes, that appeared both only in repeated group readings. The mistake is marked probably through two same bytes to the Fehlersignalisierung. To be sure different bytes are sent. Previously self-following picture seems to copy:

of that µC of ECU Description
0x?? byte any
0x0F or 0X27 1st byte to the mistake marking (?). According to 0x0F that before 0X05 sent became. 0X27 after 0X57
0x0F or 0X27 2Nd byte to the mistake marking (?)
0x?? Complement to the last byte (2. mistake byte)
0X55 Sync byte to that determine the baud rate (meaning unclearly)
0X01 key Word LSB (low significant byte) (meaning unclearly)
0x8A key Word HSB (high significant byte) (meaning unclearly)
0X75 Complement to 0x8A

How one sees, the ECU sends the three bytes after Signalisierung of the mistake as well as in the Initialisierung. Through this action, that becomes looked put back counter at zero. The next block sent by the ECU begins looked with that counter value 1.

It follows a similar phase as well as after the Initialisierung:

  1. The ECU sends a 0XF6 ASCII data block with the controller ID and further ASCII sign whose meaning I not yet examined.
  2. That µC confirmed with an ACK looked
  3. The ECU sends a further 0XF6 ASCII data block with further ASCII sign.
  4. That µC confirmed with an ACK looked
  5. The ECU sends a further 0XF6 ASCII data block with further ASCII sign.
  6. That µC confirmed with an ACK looked
  7. The ECU sends a further 0XF6 ASCII data block with further ASCII sign.

Now something remarkable comes. Instead of an ACK sends looked that µC:

of that µC of ECU Description
0X03 block length; µC mast is
0xFC Complement
0X08 block counter
0XF7 Complement
0X00 What means also always this
0xFF Complement
0X03 block end

Subsequently the ECU sends again a 0XF6 ASCII data block with further ASCII sign. This the last seems to be then, for now again the change game, with which first that looked µC an ACK and sends then the ECU one, begins until that sends µC another command.

KW1281 - mistake storage select delete

Following yet the procedure for selecting of mistakes and the deleting. First that requests µC all mistake codes. A possibility to question only the amount of the stored mistakes, seems it to give not.

of that µC of ECU Description
0X03 block length; µC mast is
0xFC Complement
0x?? block counter
0x?? Complement
0X07 block would title (get errors)
0XF8
0X03 block end

Now the ECU sends all stored mistake codes. In the first answer, maximally four mistake codes are sent.

of that µC of ECU Description
0x0F block length; ECU mast is
0XF0 Complement
0x?? block counter
0x?? Complement
0xFC block titles (answer on get errors)
0X03
0X46 1St mistake code High byte
0XB9
0x5A 1St mistake code Low byte
0XA5
0XA3 1St mistake code status-byte
0x5C
0X40 2Nd mistake code High byte
0xBF
0X71 2Nd mistake code Low byte
0x8E
0X23 2Nd mistake code status-byte
0xDC
0X46 3Rd mistake code High byte
0XB9
0x1E 3Rd mistake code Low byte
0XE1
0X23 3Rd mistake code status-byte
0xDC
0X46 4Th mistake code High byte
0XB9
0X20 4Th mistake code Low byte
0xDF
0X23 4Th mistake code status-byte
0xDC
0X03 block end

That respectively both first byte of each mistake code sequentially are set and are interpreted. Out of for example 0X46 and 0x5A 0x465A arises. This corresponds decimal 18010 and gives the Volkswagen Diagnostic Trouble code (DTC) on. The DTC table lists the mistakes well known me. In the Web available also a list of the B-codes is. Further codes ( yet integrated must become)

The third mistake-byte (status-byte) describes the mistake more closely and gives z. B. on whether the mistake appears only sporadic or shows in which form the signal deviates, how the list of the status-codes.

Alternatively to the DTCs, there are yet the codes after SAE J2012 of the Society of car subjects Engineers (SAE). A letter stands this ahead:

  1. Pxxxx - Powertrain
  2. Bxxxx - Body
  3. Cxxxx - Chassis
  4. Uxxxx - for future system
The first number means:
  1. 0xxx - Government required codes
  2. 1xxx - Manufacturer codes for additional emission system function; need required but reported to the government
The following figure indicates the mistake place:
  1. Group x1xx - fuel-air measurement
  2. Group x2xx - injection
  3. Group x3xx - ignition
  4. Group x4xx - Aggr. Emissions
  5. Group x5xx - idling/Geschw. Inspection
  6. Group x6xx - motor vehicle-computer
  7. Group x7xx - transmission
  8. Group x8xx - transmission
  9. Group x9xx - control-Module, on signals and edition signals
Because KW1281 delivers only the DTCs, the codes are after SAE J2012 uninteresting for us.

For above-mentioned example, one so can assess that the second reported mistake 0X4071 (16497) is named and this means Intake Air Temp. Circ High input (entrance air temperature switching circuit to high entrance).

After that the first block with the mistakes sent became, answers looked that µC with the usual ack. If further mistakes exist, the ECU sends looked would title then a further block with that 0xFC. This can be shorter, if z. B. only three mistakes follow (0x0C for looked length). On that reacted that µC again with an ack looked and sends the ECU where appropriate further mistakes or answers looked self with an ack if no further mistakes exist.

No stored mistakes are looks available the answer of the ECU as follows:

of that µC of ECU Description
0X06 block length; ECU mast is
0XF9 Complement
0x?? block counter
0x?? Complement
0xFC block titles (answer on get errors)
0X03
0xFF No mistake existing. (1. Mistake code High byte)
0X00
0xFF No mistake existing. (1. Mistake code Low byte)
0X00
0X88 No mistake existing. (1. Mistake code data-byte)
0X77
0X03 block end

One is himself certain that the stored mistakes can be deleted, this is also possible:

of that µC of ECU Description
0X03 block length; µC mast is
0xFC Complement
0x?? block counter
0x?? Complement
0X05 block would title (clear errors)
0xFA
0X03 block end

On that reacted the ECU with a normal 0X09 ACK looked. Thereupon that can lived send then µC again how commands. Meaningful it could be for example, to select subsequently once again the mistake storage, in order to review whether the deleting worked out.

Newly developed serial (RS232) KL-interface for OBD

Contents

Introduction
Schaltplan/PCB layout
Construction
Software

Introduction

With this even building-control to the own building of a diagnosis interface, I would like to set all discussions an end, that are concerned with the subject VAGUE-COM and the problems with Jeffs interface. How already described, one can VAGUE vehicles over the OBD-2 bushings too bodies back and and a. with VAGUE-COM over the KW 1281 protocols values select and can adjust parameter. To the VAGUE-COM version 311.2 , a KL-interface with Optokopplern sufficed in addition for the serial interface. The (demo) version 409.1 runs no longer with the Optokopplerschaltungen, probably however with the interface newly developed here! For all users, that with a laptop without serial interface have let itself overcharging, would be referred on that that it comes frequently to problems, if one uses an USB-RS232 Adapter. There it does not give good models and bad, with which it then works out. That lies however exclusively at the Adapter.
I never had Jeffs interface nachgebaut and problems therewith. But it does not give optimize can again and again discussions over that heavily beschaffbaren Optokoppler (what actually agrees, for the replacement type gets one quite simply) and its unfavorable working point and like one this with much expense and Fummelei over various Potis in the most different control modifications. Often one reads such statements on web pages, that want to sell gladly over Bastellösungen herziehen and only its own stuff. Perhaps also a reason why on the corresponding web pages of contributions to this new KW 1281 Adapter are censored. No miracle if one demands there around that € 56 for a couple component for a by far more circumstantial control and something demo/shareware-software.

Already some time ago I am bumped into two interesting ICs, that would set that an end. There it gives the L9637D of STMicroelectronics and to the other to the one the MC33290D of Motorola/Freescale. Both offer an ISO-interface after ISO9141. the L9637D is somewhat more expensively and can tensions until 36V off why he is suitable also for utility vehicles with 24V board network. To be sure it is somewhat too slow and not CAN-suitable because it creates maximally 58kBit/s and CAN works in until to 500kBit/s. The MC33290D is displayed only until 18V, is however for that for OBD per CAN fast enough. Therefore I decided on the MC33290D. For VAGUE-COM, this is however insignificant because KW1281 work and ISO 9141 only with until to 10400Bd. An adaptation at the L9637D however relatively simply is to be managed if this should be required. With the USB-interface , there is now also such a solution.

Obviously the control should collaborate also without problem with diagnosis software for other vehicles. BMW and Mercedes Benz use both also at least one K-Datenleitung to the diagnosis in old models. For BMW, it gives finds bspw. the software Car scanner for KW of 71st information to the occupancy of the BMW of connector one and a. by. http://luuk.xs4all.nl/bmwboeken/Diagnose.htm The connection designated there as RXD data direction would be allowed to be probably the L-direction and is TXD the K-direction.
In Mercedes, the thing looks more complicated because in the diagnosis connector the different tax devices of Pins different are assigned, that are connected then with the K-direction. The motor tax devices are at pis 4 and to find 5. A Pinout is found also: . http://articles.mbz.org/electric/diag
In the special, I would like to refer to the cost-free software OBD Scan Tech (s. and), which offers all important OBD II functions.

Important criterion in the construction was that excluding standard component used become and no attitudes at all are necessary because the components comply with the standards. For the OBD-side, the ISO-chip is responsible and for the serial side a standard RS232-Schnittstellenbaustein of the type MAX232.

I ask all users, that these controls reproductions to appear for my development perceptible, and the vehicles, at which they tried the Adapter, to register into the list of the tested vehicles.

Schaltplan/PCB layout

Schaltplan The control was sketched with Eagle. The Schaltplan can be loaded down.

The control is in principle relatively simple: The MAX232 transfers the signals of the serial interface in TTL-level, that are transferred then by the MC33290D in ISO-level, and the other way around. Furnished the control becomes out of the vehicle (12V board network) over the OBD2-Kabel and a simple tension regulator. The LED illuminates in adjoining Betriebsspannung.
So that the control remains also to older car Compatible, an extra solution must solely for the L-direction here because the ISO-chip supports only the K-direction. The L-direction was not realized therefore with a transistor because by the PC to the L-direction only data sent, however received become. For the indicated type BC547B, one can use naturally also the C variant or one of the numerous replacement types. Most cars do not require this direction, but rather only the K-direction. Therefore also the switch is integrated in order to be able to interrupt the connection to the OBD-connector. So one can test whether the vehicle requires yet the L-direction to the Initialisierung or no longer.

PCB A platinum design for one platinums large solely 40x60mm is also available. A model for the platinum exposure exists also as a PDF.


Platinum


Platinum

Here another component list:

Amount Bezeichner Type
2 R1, R3 560 Ω - better: 510 Ω
1 R2 2.2 kΩ
1 R4 330 Ω
2 C1, C2 100 nF; ceramics; RM 2.5
5 C3, C4, C5, C6, C7 1 µF/63V; Elko; RM 2.5; radial
1 D1 1N4148
1 LED1 5mm standard LED
1 T1 BC547 B/C
1 IC1 MAX232
1 IC2 78L05
1 IC3 MC33290
1 S1 Minus DIP switch 1-fach; 2 polig
1 X1 9 poles. Sub-D-bushing; female; Printmontage; gewinkelt; EU-standard 9.4 mm
1 X2 9 poles. Sub-D-connector; once; Printmontage; gewinkelt; EU-standard 9.4 mm

Moreover is required: Platinum, 1:1 data cable, OBD->SUB-D-Kabel

Important reference: Contrary to the previous statement and also contrary to the incorrect Bestückungsaufdruck on the platinums, no zero modem cable becomes, but rather a 1:1 data cable requires!

Construction

KW1281 interface

A picture of the real construction of the first prototype. This version still had a small design mistake. In the correction, the switch was transferred then how in the following pictures to see is.

Platinum ISO9141 OBD-2 Bestückung of the professional manufactured platinums.

Platinum KW1281 OBD2 The leader train side with the SMD-component (picture click on for large representation).

Detail MC33290/D Reference to the MC33290: Point light the eingelaserte on the housing marked the short side, to which pi 1 is not at the next, (by analogy to the earlier usual notches in ICs) and unconditionally directly pi 1st pi 1 is actually always in the lower left if one can read the writing.
On the leader disk marked a tiny leader train-point the position for pi 1. On the marginal photo, the chip is to be seen. Pi 1 is in the lower left. The double line in the Bestückungsdruck marks the longer side of the chip at which pi 1 lies.

Eagle3D Bestückungsseite

Two pictures out of Eagle3D, which show the current component arrangement suitably to above-mentioned Schaltplan.

Eagle3D leader train side OBD-2

The SMD-IC is soldered on the leader train side. Put on and fix in addition best first the adapters of the leader train thinly verzinnen, then the component and fasten with the soldering iron, heated become individually leg, becomes until the Lötzinn of the verzinnten leader train fluid; subsequently nachlöten.

Interface Adapter housing OBD2 KW1281 Installation example of the KW1281/ISO9141 OBD-2 interfaces in Strapubox housing #2412. the platinums fits exactly in and holds readily reinforcement if into the Stirnseiten cuts for the Sub-D bushings sawed become.

Installation hint: In the height not with day, but rather the leader disk ca. Incorporate 1 mm towards the top staggered.

Software

The interface collaborates with a whole series of programs. Basically each diagnosis program can be used, which works with Jeffs interface together. Some important confessed are me (all cost-free as a freeware available) :
To the termination, I would like to refer yet on that that I answer no aids at all and information to the project per enamel. Utilize the forum!
91 88 1,0341 130 126 1,0317 185 180 (1,0278) 1,0398

Throttle flaps position

This is not unconditionally actual the position of the throttle flap, but rather possibly also only the position of the accelerator. This appears for example in a speed rent: this is active, is driven lies that Einsprizung etc. through the vehicle electronics (only in old models over the gas train) and the position of the accelerator in 0%. This is also the value that is delivered then, instead of the throttle flaps position, that cannot be 0%, because the vehicle goes and accelerates where appropriate.

Acceleration measurement with OBD-2

Contents

Introduction
Software

Introduction

Next to many other things, you interest as a car owner perhaps also how quickly you can accelerate your vehicle. The statements of the manufacturers are probable i. d. R. somewhat optimistic and without practical relevance if one does not operate just head professional burn-outs.

Over OBD2, the actual acceleration of 0 lets on 100 km/h relatively simply and comfortable without stop clock etc. determine itself. At the same time is to be noted to be sure, determined becomes over which protocol the gone speed. How already shown, the statement deviates in KW 1281 considerably of the reality. Therefore programs that mount for example on VAGUE-COM deliver, no statements strong results. First if really an OBD is used-2 protocols as well as ISO 9141, an astonishingly exact speed statement is delivered.

Suitably to my ISO-interface , I wrote therefore a software, with which you can carry out the measurement. This software is not restricted therefore on vehicles of VAGUE, but rather is suitable for all cars with OBD-2 on basis of the ISO 9141/14230 protocol (no CAN).

Software

Equally ahead: the software is yet long not finished and another thing with hot needle gestrickt. It can come therefore thoroughly to crashing and Verbindungsproblemem. Previously also only ISO 9141 is supported. ISO 14230 yet will follow; just as reading notice in paint h. Over success messages, I am happy: simply a supplement into the forum post.

Security reference: Eighth you on your security and the other traffic participants! Do not manipulate with the software around while you go.

System prerequisites: The PC should be brisk. With a Celereon 550, it ran led would interrupt, but parallel actions to. Windows (XP). Serial ISO KL-interface (or comparable). With my prototype USB-KKL-interface , there were considerable problems - no idea, whether that at the prototype or (what I sooner would believe in) the driver of the USB <-> RS232-Umsetzer on the slow laptop lay.

Download: SpeedyUp - Acceleration measurement version 0.1 (254 KB)

Installation: Archive somewhere unpack and start speedyup. exe out of the explorer. Would thank at Burkhard Kainka for the rscom. dll, for the serial interfaces communication.

Use:

    SpeedyUp OBD OBD2 OBD-2

  1. Connect vehicle over OBD ISO-interface with computer.
  2. Start software.
  3. The available serial interfaces (Port) stand above to the right to the selection. Adjust interface with the connected interface.
  4. Start motor (we equally loosely want to go, therefore passes the ignition not out of).
  5. AutoSave means that after a successful acceleration on 100 km/h in the installation index a file with the name measured_values. txt is designed, in which the readings are stored. This file is transferred in the next once again. No file is wished, turn off option. The reading file includes the last measurement recorded with AutoSave as CSV-Textdatei (divided sign: Semicolon). This can be opened with a text editor or a spreadsheet etc. So the measurement more exactly can be examined and can be evaluated also graphic.
  6. Graphic analysis

  7. Connect click on in order to construct connection to the vehicle.
  8. Wait ISO 9141

  9. The yellow circle and the text WAIT indicate that the connection is constructed.
  10. Ready

  11. The connection stands, the circle will appear green, the text GO and at the right edge, the available PIDs of the motor tax device are indicated. Best immediately use the opportunity and register the vehicle into the database! From now, the gone speed permament is indicated. A signal tone indicates the readiness.
  12. First if the vehicle moves, the acceleration measurement begins. The time of speed ratios of the first 30 seconds represents the graphs. 100 km/h become and more gone, ends is indicated the timing and the necessary time of 0-100 km/h. The timing is independent of the graph and enables also measurements with more than 30 seconds. A signal tone shows measuring by that. AutoSave was active, the reading file automatically is produced.
  13. Acceleration measured

  14. The current speed is indicated further.
  15. With Reset can be put back the graphs and the timing. Through the grey representation and the number zero in scnd . becomes clear that the next measurement can be begun. Subsequently a new measurement begins as soon as the car goes more than 0 km/h.
  16. With Disconnect , the connection is dismantled to the vehicle.
  17. Subsequently the program can be concluded.

OBD-2 Adapter to the vehicle diagnosis

Contents

Introduction
OBD-2 connectors do handicrafts

Introduction

OBD-2 (or also OBD-II and/or OBD2/OBDII) stands for On Board diagnosis of the second development step. Is meant a connection therewith for diagnosis devices at the Autoelektrik. Because today more and more by Boardelektronik driven becomes, also appearing mistakes are stored in the system, that can be selected then in the workshop. Moreover the possibility exists to change parameter (best known example is probable the Tachomanipulation). Of audi, the PDF circulates in the P2P swap-market eMule On-Board-diagnosis-II construction and function, which gives a good overview over the draft of OBD, and numerous vehicle-sensors and system components, as well as its mode of operation describes..

Naturally special devices, that are out of the question expensive for the normal driver, have specialty workshops. What change however if you yourself oil can and now before the problem stand to announce the oil change of the service interval notice so that you can be referred then again to the correct moment to the next oil change? For that and for many other nice player eggs, also the even handicraft enthusiast requires access on the Boardcomputer, wants to go he not into the überteuerte manufacturer-workshop in order to learn, which mistake codes are etc. aufgelaufen.

So, now I go a VW T4, Bj. 2001 and would do handicrafts gladly self. Stood therefore before the described problem with the oil change. What do? Show both following contributions how one can select and manipulate with something hardware and a PC data out of the vehicle board computer.

In the internet, it does not give connect can for example the software VAGUE-COM, with that one the laptop (or PC, if one the box into the car drag wants) to the Boardcomputer in order to select then parameter and values back letter (on the operation of the software go I a). For going on discussions and questions to the use, it gives forums, like that VAGUE-COM-forum. The unregistered demo version can issue nevertheless already mistake codes and can delete out of the board computer. Because in the demo version all mistake code and status codes do not appear as a clear text, there are corresponding lists of the mistakes- and status codes ( further information on the side to the KW1281). Only how does one close the PC at the Boardcomputer? Horse-Tech offers in addition for example exclusive and expensive Adapter. Pros swear on these interfaces.

But one finds stuck become also in the internet numerous offers (and a. in Online-auction), that as an Adapter between laptop and OBD-2. Everyone has however one jointly: They are so impudently expensive that one can go then also into the workshop. Moreover I hate suspicious auction, with which a person offers several dozen times under different pseudonyms the identical article with the identical product description and mutually surpass itself strangely enough all offering always, instead of buying simply the next article. For around that € 60,- + € 7,- postage is me too much.

Therefore further seek and find Jeff Noxon. Here someone constructed a simple control, that makes everything, what one needs: Galvanic separation between car and PC in order to go around destructive levels and adaptation of the levels. The entire consists of a handful component and is reproduction cash of each half-way adept person. Because some things are somewhat declared value, I more closely will illuminate in the article to the Adapter with VAGUE-COM a couple of point.

Because the control works of Jeff only with VAGUE-COM together and can be used therefore only in VW and audi, would be referred realized would have yet on that that there is also alternative, that I in the mean time also and written would have over that I an extra report to the Adapter with ELM 323: Elektor-project 11/2002-12/2002 with selbstbestückbarer platinum. This control shows more own intelligence thanks to the ICs ELM 323 and carries out not only the galvansiche separation, but rather also the communication with the interface receives and delivers the results directly as an ASCII-sign. One can the necessary ELM323 ( original data leaf) and a. in KDS for ca. € 21,- or in Segor for ca. € Order 33,-. There are all of other component (also the quartz) in Conrad for few Euros. Elektor delivers the platinums for ca. € 14, -. Without connector, the Adapter costs therefore about € 45, -. The software ScanTool is for that for nothing available.

OBD-2 connectors do handicrafts

Now there is only a problem: Naturally one conceived in the creation of the OBD-standard no connector for the board computer connection how one gets it in the Elektrobastelladen around the corner. There could go around yes each the thing reproductions and the workshop. Therefore we search once for the OBD-2 connectors and make a find naturally also. For halsabschneiderische € one gets 12.50 then only the connector strip. One wants also another housing, it costs immediately € 17.50 and more. For a popeligen connector? Without me, there I can buy then again the finished Set.

Furthermore I got that it can occur in retroactively incorporated radio, that on the K- or L-direction (pis 7 and 15) mass or UAsked (Ca. 12V) lies. No idea why, but who certainly go wants, can review that previously with a simple Multimeter. Information in horse-Tech.

OBD2 connector

Therefore self make! Exact! The connector shows yes no secrets. At which installation place the bushing is to be found, depends on the vehicle model.

OBD-2 bushings

Is portrayed the OBD-2 bushings to find like it in the car is (thereon visibility) :
OBD-2 bushings

PiDescription
2J1850 bus +
4Vehicle mass
5Signal mass
6CAN High (J-2284)
7ISO 9141-2 K exit
10J1850 bus
14CAN Low (J-2284)
15ISO 9141-2 L exit
16Battery-tension + 12V

Based on the belaid Pins, one can recognize, which protocols are supported:
Pencil (signal)Pencil (mass)Pencil (signal)Pencil (signal)Pencil (+ 12 V)Protocol
--4 + 5715 *)16ISO 9141-2
24 + 5--1016PWM J1850
24 + 5----16VPW J1850
--4 + 561416CAN bus
*) Pencils 15 can, must be however not available for ISO 9141-2

The control introduced here supports solely the ISO 9141-2 protocol.

There are also yet older connections that consist of two zweipoligen connectors. These are to be found usually in the engine compartment:
old OBD connections

Connector colorPiCable colorDescription
knows1blue or grey blueISO 9141-2 K exit
knows2yellow or grey yellowISO 9141-2 L exit
black3redBattery-tension + 12V
black4black or brownVehicle mass

If one does not want to act as a professional Tachoversteller, one uses the entire Adapterkabel maximally a couple once in the year. There the connector doesn't have to exist as a noble version.

In my bus, the bushing is for the connection at the Boardcomputer in the Lenksäule about 30cm beneath the steering wheel behind a simple plastic lid. Flight the dimensions determines can go off and then it: I decided on a simple solution, with which material costs in height occur of € 2.51. For that one can do handicrafts then to be sure theoretically 10 connectors, for it gives the components only in the 50er bag.

It is required:
Amount Label Order-Nr.*) Price
1 Btl. Lötstifte 1mm 526266 € 1.00
1 Btl. Stuck shoes 1,3mm (with Crimp-connection) 526258 € 1.51
*) There are most components in Bastelläden as well as Conrad, Reichelt etc. I name here because of the simplicity without evaluation Conrad-numbers and prices (state: 19.9.03)

Because we yet corrode in the further course before, also the socket is corroded for the connector in the same process on a free corner of the platinums so that for a single connector no additional leader disk is required. The leader train picture to be made is conceivably simple and exists as a model in PDF:

Connector-layout

After that the leader disk corroded and sawn off became by the Adapter-control (s. u.), are bored the holes with a 1,2mm more drilling. Only the holes 4, 5, 7, 15 are required and 16. Into the holes, Löststifte are stuck then and are soldered. In the image is missing yet pis 7:

Connector with it pencil equip

On the Lötstifte, the Lötösen are stuck now and are soldered. At the same time is to be respected on that that all eyelets show into the same direction, because the flag is not symmetrical. Pis 7 is missing be connected yet always; -) with a wire bridge the Pins 4 and 5, around which to wear out mass certainly.

Connector with it pencil and -eyelet equips

It was that already. Later the connector is wired yet with the Adapter and is equipped with a Klecks hot glue as a train relief. The Lötstifte now so are arranged that the connector with something feeling fits into the pink OBD-2 bushings in the car. Small passport problems can be removed carefully with a flat pair of pliers. The row with the three pencils is to be aligned towards the top to the side with the two protruding noses at the pink bushing.

OBD-2 Adapter with ELM 323

Contents

Introduction
The control
Software
Result

Introduction

Already a year ago I began to busy myself with OBD-2. At that time I have that frequently (from my viewpoint to wrongly) criticized Adapter of Jeff Noxon nachgebaut and documented. A reason was that I myself go a VW and can work therefore with this device. In the mean time our "Fuhrpark" expanded itself however around a Fiat and in that, I want to can also once pure show into the board computer.

For the probably most vehicles with OBD-2 the relatively low-priced control offers itself on basis of a chip of ELM electronics. The IC receives all communication between car and PC so that with simplest means values can be selected. With ScanTool , there is indicate and put back can also a practical freeware program which mistake code select. Just as different readings can be indicated.

How always in OBD there are three different protocols. Here only the common ISO9141-2 is observed. Which protocol the car supported can be assessed based on the connector occupancy or the list successfully gescannter vehicles.

The control

The essential building block is the ELM 323. The necessary control around the chip around is relatively simple and been restricted to a couple component. The periodical Elektor brought an article series in the editions 10-12/2002 in addition. The important contribution is that in 11/02. The control introduced there is no own development, but rather solely an adaptation of the designs by ELM electronics out of its data leaf. Something polishes up and finds already one with finished platinum design that very also in ScanTool as an ElmScanISO. The control of Elektor has only the advantage that some components of the original designs in Germany are heavily beschaffbar and were exchanged therefore already through equivalent replacement types.

The components are all standard practice and at the pertinent dealers for under € 10,- available. Solely the ELM323 is rare and only in KDS for ca. € 20,- or in Segor for ca. € 33,- available. Because I wanted to grant myself this time also an OBD-2-Stecker , that one gets only with sexton, I ordered there. My Bastelversion would do is it to be sure also, but so it already more stable. Moreover I can the connector over a post connector at both controls anstöpseln. For a € 10,- expensive housing was I then yet too stingy - hot glue is a crazy thing.

Original OBD-2-Stecker

Component replacement list:
Kennung Original Replacement Comment
T1, T2 2N 3904 BC 547B
T3, T4 2N 3906 BC 557B
Q1 3,579545MHz In Elektor, that with 32pF is indicated. Available anything is between 18pF (Reichelt) and 30pF (Conrad). Solely the LP-version in Segor shows 32pF. I built in one with nominally 18pF and run it.
R1, R5, R6 (Elektor: R14, R8, R9) 220Ω, 220Ω, 220Ω 680Ω, 330Ω, 330Ω The values in the ElmScanISO are a few low (LEDs illuminate brightly). Use better the conservative values as well as in the ELM data leaf (750Ω and 330Ω) or the E12er out of Elektor
R2, R4 (Elektor: R1, R3) 510Ω 560Ω 510Ω as a resistance are not usual, only out of the E12er row available at the handicraft enthusiast. I incorporated 560Ω and run everything.

Elektor built in moreover already one somewhat more usual 9-polige SUB-D-bushing. The originals use a 25-polige. An available 9 is supposed to be used-poliges data cable, you must change the connections and must use in a 9-poligen connection the Pins 2 (RxD), 5 (SG) and 3 (TxD) and connect 7 and 8. The cable yet is bought, you can use also a 25- for 9-poliges and can retain the original control. To the PC, a 1:1 data cable becomes and no zero of modem-cable used!

With the instructions to the manufacture of platinum , the reproduction should succeed each handicraft enthusiast. Elektor delivers the platinums however also for ca. € 14, -.

ELM 323

Software

For ELM-control, there are numerous cost-free programs. ScanTool, which there is also in a German version , is simply however yet complete. Interesting the possibility is however from my viewpoint above all, to communicate directly with the ELM. The data leaf shows in detail how that goes. Essentially that is:
  1. Connect PC and car to ELM, ignition on
  2. Start terminal program (windows Hyperterminal)
  3. Standard connection: 9600Bd, 8N1, no handshake
  4. Now ELM-commands can be input: "CORRODED" for Reset, whereupon the ELM reports itself: "ELM323 v2.0"
  5. "01,00" returns a number code, which values (PIDs) can be selected, (between both numbers can, must however not an empty sign input become)
  6. With "01 20"," 01 40"," 01 60"," 01,80" the availability of the higher PIDs is determined after PID 32. These will not be supported redelivered (with me unfortunately the case), "NO DATES".
  7. "01,01" Amount of the stored mistake codes
  8. And v. m.
The single readings are assigned PIDs (parameter identifier). All PIDs are not supported always. More information in addition in the contribution to the PIDs.

The redelivered Hexadecimal-values are equipped often with an Offset, must be converted that must be subtracted or it in other form. Also very informative a view is into the source-code of ScanTool (special the file sensor. c). For the mistake codes, there is an English list of the most mistakes. In the mean time there is a grouping of the DTCs also with me.

The query expires relatively simply:

  1. The petition of "01,00" in the terminal program is answered with some bytes, which symbolize the supported PIDs. Z. B. 41,00,98 3F 80,10 in my T4.
  2. In accordance with the ELM323 handbook, the two first bytes are uninteresting because they only indicate, that it concerns an answer on a 00 command.
  3. The remaining bytes are in Hexadecimal letter manner. This in the scientific view can convert the windows pockets computer into binary numbers. Sequentially written arises (and always on 8 places length trimmed through to be inserted leading zeros) then: 10011000,00111111,10000000 00010000.
  4. Of to the left to the right read, are assigned the bits it the PIDs. A 1 means that the respective PID is supported. Begun becomes delivered in the PID with the number 1, for the PID 0 yes this answer, with the available PIDs.
  5. My bus can therefore:

    PID Label engl. Label dt. Comment Calculation
    1 System tests status System status PAINTED-status, amount of mistake code, supervision status >128 means, PAINTED is that that at, remains after deduction of this Offsets the amount of the mistake codes. Also mistakes can appear, light up PAINTED lead that not to that that.
    4 Calculated Load Value load value calculated 0-100%, x*100/255
    5 Engine Coolant temperature Motor coolant temperature see peculiarities -40-215°C, x-40 (1° per bit, Offset of 40)
    11 Intake Manifold press original Absolute pressure entrance canal 0-255 kPa, x (1 kPa per bit)
    12 Engine RPM Motor-revolutions 0 min-1-16383,75 min-1, x/4 (0.25 RPM per bit)
    13 Vehicle Speed Speed see peculiarities 0 km/h-255 km/h, x (1 km/h per bit)
    14 Ignition timing Advance Zündvoreilung -64°-63,5°, (x-128)/2, (0.5° with 0° in 128)
    15 Air Intake temperature Entrance air temperature -40-215°C, x-40, (1° per bit, Offset of 40)
    16 Air Flow rate from measure-Air-Flow (MAF) Air flow over air measures knife (LMM) 0g/s-655,35g/s, x*0,01, (0,01g/s per bit)
    17 Absolute Throttle position Absolute throttle flaps position 0-100%, x*100/255
    28 OBD standard OBD compatibility 01=OBD-2 (California INHERITED/CARB), 02 = OBD (Federal EPA), 03 = OBD and OBD-2, 04=OBD-1, 05 = no OBD, 06 = EOBD (Europe)

  6. One wants to query now a reading, one gives "01 xx" on whereby xx stands for the (two-digit) Hexadecimal value of the desired PIDs. Z delivers "01 0D". B. the motor revolution.
  7. The answer can be a number existing out of several bytes, that is to be converted correspondingly.

Result

For me was disappointing that I can select with the ELM substantially less data, than via VAGUE-COM with the other OBD-2-Schaltung. This lies however certainly that VAGUE-COM is just special on VW/audi train cutting edge. Important readings are however also with the ELM understandable and above all the mistake codes let select and put back themselves (delete the PAINTED-notice (malfunction indicator lamp) - and/or "check Engine"). What is however completely is absent the possibility to change value in the control devices, in order to undertake so the numerous adaptations , that are from VAGUE-COM possible.

PAINTED


Utilize the forum!

OBD-2 Adapter with ELM 327

Under the product name ElmScan 5, an OBD is banished-2 interfaces (z. B. in KDS), which constructs on the ELM 327. How also already its predecessors, establishes the interface communication between PC (serial interface) and OBD-2 bushings of the car. The chip receives the complete communication so that the user doesn't have to attend to the protocols.
Just as as the mOByDic controls the ELM 327 all current protocols: CAN (ISO 15765-4), SAE J1850 PWM, SAE J1850 VPW, ISO 9141-2 and ISO 14230-4. through it can it universal in each OBD-2-fähigen car used become. According to experience also many older vehicles are found, that are not complete OBD-2 Compatible. In these vehicles, all functions are not supported then however as a rule (notice of readings is possible, stored mistakes be not recognized).

ElmScan 5

Essentially the interface makes naturally, what should it and I had no problems in different tax devices. As a software, ScanMaster-ELM recommends itself because the surface and the functional scope of ScanTool does not convince really, to be sure is for that cost-free available.
A nice play is the possibility to select the supply voltage of the vehicle. That is no OBD-2 functions, but rather is made over an A/D-Wandler. To be sure the indicated value becomes first after manual calibration exact.

The command circumference is larger, than in the older ELM-chips, what lies above all, that there are more functions for the CAN-bus. The data leaf is lived extensively and informative. Is comfortable that the new chip is in the command circumference abwärtkompatibel. So my OBD can be operated for example-2 LCD further. For CAN-user, there are some pretty Features, like for example the monitor-function in order to select all CAN-messages on the bus. All that goes out however already far over the usual OBD-2 uses. Also the different software-Resets are practical because so the software newly can construct the connection without having to separate the interface again and again mechanically from the car.

Annoying the full-bodied advertising with the possible Übetragungsbaudrate of 9600 and 38400 is. Per Default, the ElmScans are set solely to 9600. First a few promotes search a Jumper slide grief as PDF too day, in that that shown becomes, open shift can like one for that the housing per Jumper the baud rate on 38400. A software moderate transposition would be desirable.

Elm 327 Jumper

For the ambitious even handicraft enthusiast, it gives used become hidden a Leiterplattenplayout (the Schaltplan can the data leaf taken become), in that then also no SMD-components.

OBD2 LCD for µC with AVR ATMEGA8 with ELM323

Contents

Introduction
Hardware components
Software

Introduction

That was only a question of the time until this project developed of the first idea to the finished solution. In the Gunde, the idea came already soon after the first realization of an OBD-2 Adapters. In view of the abundance of interesting data, that one can extract out of the interface, it would be yet beautiful if one can see this also in the normal load business. There are already numerous extensions that have always however a problem: They require expensive standard hardware. Either a laptop in order to use the entirely normal software or a Palm or PDA. Laptop is not probably that too unwieldy (and is stationary, because one otherwise wait can, until that swiped is) and the PDA use I for the Navi. I would like to have gladly simply only a small LC-display where the important data are indicated.

That in the following emerged control is yet in one something housing of hefty, is supposed to be incorporated however then into the means console of my VW T4 why I must search however first yet in the "friendly" after a suitable front orifice plate, so that the LCD comes then if possible there in, where presently the small Ablagefach is over the Climatronic.

Use in the VW T4

Hardware components

Actually a solution with the interface of Jeff would be for VAGUE-COM substantially more interesting (now also realized). In my bus, I could bring then really many readings in experience, that one gets to otherwise not to see. For example would interest me a ranges notice. Tank contents and momentary consumption (can my Multifunktionsdisplay in the instrument panel indicate) are per OBD-2 available so that one could estimate the range. For this I must busy myself however with the programming of the OBD-2 protocols (in the case KWP-1281) (also happen).

The use of the control with ELM323 is substantially simpler. Here the hardware receives the protocol communication and one can on a very simple communication over the serial interface restrict itself. Unfortunately are available me then only relatively few information. But for a first feasibility test, it passes is, moreover the solution then universal for other cars usable.

The hardware consists of two already described components: The ELM323 OBD-2-Adapter and the I/O-Board for the ATMEGA8. Over a data cable, two consisting of over a Flachbankabel 1:1 together connected D-Sub-bushing/connector, are connected both Module. Something else unorthodox is branched off the supply voltage for the I/O-Board of the ELM323-Adapter because this connected over the OBD-2 connectors with the car battery. The white cable is + Vcc and the brown is mass. Naturally that yet should be changed so that duration plus, but rather ignition plus for the I/O-Board used becomes not, so that only in turned on ignition the LCD is operated, and must not be pulled like now permanently, and the OBD-2-Stecker each time out.

Spannungsabzweigung on the ELM323

All together fits into a Europe-housing or with somewhat more skilled-labor expense also in a smaller. Into the front disk, the sensor was incorporated of the I/O-Board, that is required for the representation configuration.

Housing Housing

Software

Download version 1.3

Programmed I have in C. The source code is documented well. The information to the ELM323 is helpful. The present version 1.3 is optimized only for my VW T4. This concerns above all the notice of readings because only such are calculated and indicated, that of the T4 offers. An expansion adaptation is however simply doable and will follow. In a Fiat Punto Bj. To expect 2002 functioned the control how also because it is thanks to the ELM323 yes nature appropriate for too many vehicles Compatible and it most same PIDs were supported.

After the programming the µC the module in the car can be connected to the OBD-2 bushings. Because it is furnished immediately with tension, it tries to establish communication to the data bus. As long as the ignition is out of, this will not succeed is started and after a corresponding error message about every five seconds again and again a new attempt. As soon as the connection was produced, the fair data are indicated permanently. The ignition is turned off again, no more can data be read by the OBD-2-Bus, what noticeably makes itself by a corresponding mistake. The module tries now also again and again to construct a new connection. In the regular operation, current values are represented about in the seconds tact after each other.

Display

If a vehicle mistake is recognized by the OBD-2-System, appears knows at the first sign place in the upper left in the change a deposited exclamation sign and a tool key symbol.

Mistake animation

In the display, six different values can be indicated. To save around place the Bezeichner often strongly are shortened. The key somewhat more long is pressed, the configuration mode activates itself and at the first position, the cursor blinks. Can be leafed now through the readings (PIDs) possible in the respective car by short keystrokes. Alternatively also no reading can be indicated (empty block of data in that leaf). No petition resulted is changed for ca. five seconds, to the next block of data and can be adjusted this. After the last block of data, the module returns again to the reading notice.

Which readings (PIDs) are indicated, notices itself the program in the EEPROM the µC. Before the first use or in a vehicle change, the first six bytes of the EEPROMS with the Programmiersoftware should be set if possible on 00 so that it comes to no mistakes. This can result also, adjusts one in that for all six blocks of data over the configuration mode that no reading is indicated (empty notice area of the block of data). In addition during the Initialisierungsphase the key permanently press until one lands in the configuration mode, before tried becomes to determine and to issue the first reading.

Following values (everyone, that of my T4 supported become) can be indicated from version 1.0 (vergl. Information to the ELM323) :

PID Label Representation
empty block of data
1 System status 00error
4 load value calculated 000% lst
5 Motor cool water temperature 000°Cöl
11 Absolute pressure entrance canal 000 kpa
12 Motor-revolutions 0000upm
13 Speed 000 kmh
14 Zündvoreilung 000,0°z
15 Entrance air temperature 00°Cair / 000°Cai
16 Air flow LMM 000,00g
17 Absolute throttle flaps position 000% drs
28 OBD compatibility OBD-2 / OBD / OBD + 2 / OBD-1 / no OBD / EOBD / EOBD + 2 / E + OBD / E+OBD+2 / JOBD / JOBD + 2 / E + JOBD / E+J+2 / OBD #00 (unknown)
unknown PID PID#000



How always: No support, no Bautsätze, no finished devices. But a forum! The project and the software may for private purposes nachgebaut and used become. The commercial banished is prohibited of reproductions or the software.

OBD2-LCD

The fusion of these interests zones - OBD-2 and µC - yielded a self-sufficient LC-display for the car to the notice of readings and parameters. The actual Projektseiten are in the section to that µC-technology either with an ELM323 or with Jeffs interface (VAGUE-COM).

Display

OBD2 LCD for µC with AVR ATMEGA8 with Jeffs interface

Contents

Introduction
Hardware components
Software

Introduction

One stood-alone solution for the ELM323 together with one µC I developed already before. There also some information are found and photos that I would not repeat here. This time it should go on that to connect Jeffs interface (therefore a VAGUE-vehicle, that only with this functioned this control!) with an AVR ATMEGA8 µC and to select so vehicle data over the KW1281 protocol. In addition it was made necessary to analyze this, what was not entirely simple, but nevertheless joke. To be sure are missing me a few more of information.

Hardware components

The notice unit consists connected becomes again of my AVR ATMEGA8 at the Jeffs interfaces. There are peculiarities at the same time no. Because the following software supports previously no individual configuration of the value to be indicated, can be forgone the sensor. Alternatively this can be used also as a Reset-sensor. I modified the I/O-Board correspondingly so that a Jumper exists for that. The tension provision is branched off like in the ELM yet of the interface-platinums out of the OBD-2-Stecker, instead of directly out of the vehicle network.

As the VW-technicians would have thought of me, is wear out can over the security stop a very practical Buchsenpanel for connector over that one then even the OBD-2 K-directions. X would pinch is ignition plus so that the control only tension gets, if the ignition is at. During the occasions phase, no tension adjoins so that the control really first is furnished, if also OBD delivers a signal. To the right beside it the brown mass star is to be recognized. To be sure I brought the part salesman in VW to the Verzweifelung, for this practical Panel is an absolute novelty - at the same time is it really super, freely can let one yet so the OBD-2-Buchse and must manipulate not with desires clamp etc.

Security stop

Software

The software is programmed again in C. In the program, the readings to be indicated are purported firmly. This is necessary because each ECU delivers other sensor data in the single groups, how the executions to the KW1281 to take is. I decided for example on the speed, number of revolutions, battery tension, momentary consumption h, oil-temperature and that (out of speed and momentary consumption) calculated range with 10l fuel. Each that another ECU possesses must be concerned with the protocol and in the C-code some modification in the notice query of the sensor data of distinguished.

How also in the ELM-solution an invertiertes Ausrufezeichen/Schraubenschlüssel-Symbol is indicated at first LCD-position if a mistake is stored in the ECU.

Mistake animation

There it both during the Initialisierungsphase and during the continuous notice to protocol mistakes came, supervises the Watchdog of the ATMEGA8 the program. In the mean time the problem however actually is removed. It should assess a standstill, the notice with the Initialisierungsphase newly is started.

A peculiarity is the vehicle speed. Here the value reported by the ECU is not indicated, but rather a corrected. see peculiarities

Download version 1.2



OBD-2 Adapter with mOByDic

The firm Özen developed an OBD-2-Adapter, that in a device immediately several protocols can be united and can be used so universal. The mOByDic plus-2600 ISO9141-2, KW2000, J1850 PWM and VPWM as well as CAN bus supports the protocols. Above all CAN is interesting for the future.

mOByDic

The periodical elektor developed an adaptation of the Adapters and introduced July August 2005 in the edition: Article I, article II. As a kit, it is a little more low-priced than the finished device in Özen. I tested the elektor-kit. There is only problems with the Reset-signal. Best the FAQs in the elektor-forum read about.

In principle the variety of the protocols is interesting, for theoretically hardly a car so will be able to resist the Adapter and comes one at the data up to. With the cost-free software OBD-II ScanMaster for mOByDic interface of WGSoft , one can indicate let a few things at data.

How in all OBD-Adaptern, the selecting of data is supported solely and not the changing! By analogy to the ELM323, also the mOByDic can select only substantially less sensor data than a VAGUE-COM and in addition the OBD error messages issue.

My experiences with the Adapter are not also as good as expects. The interface finds my VW bus, so that no data cannot be selected, although the ELM323 can this yes. In the mean time I must correct myself: I have run got the Adapter to that also in my T4. To be sure several attempts were in addition necessary. According to manufacturer, the mobydic is suited only for AUTOMOBILE from EZ 2001 (Benziner) and EZ 2004 (diesel).

Can communicate one with the mOByDic similar to with the ELM323 over a terminal program. To be sure the documentation is to be designated only as catastrophic badly. Serious disadvantage is in my eyes also that there is no software-Reset.

In the Elektor May 2006, an article self-sufficiently is operated becomes by me, in which the mobyidc-Adapter together with a LCD - similar to the project with the ELM 323. VGA.COM VAG-COM VGA-COM VAG-KOM VAG-COMM ODB2 ODBII ODB-2