CAN-BUS, what
is it,?.... and why?
(with an addendum for the Nerdy about other systems)
©
Copyright, 2013, R. Fleischer
canbus.htm-38A

What is Can-Bus
(CAN-BUS, CANBUSS, CAN-BUSS, Canbus, CanBus)
Can-Bus is a method and hardware and software to
enable communications between
'electrical and electronics things' on your vehicle; these
'things' can also be electro-mechanical. Can-Bus stands for
Controller
Area
Network, and the
'Bus' part is explained later
herein.
BMW decided to reduce the number of electrical wires and connections, and hopefully reduce electrical problems by operating just about everything, to the extent possible, by using digital electronics. There are some definite advantages, such as weight saving; manufacturing labor; and the potential for much higher reliability;...as only a few wires are
needed for most anything. In
addition, and more
importantly, the ability for the computer(s) to monitor and talk
to each other about just about any function, and particularly in
a very short time period, is greatly enhanced.
There are other reasons for going to something like Can-bus.
Vehicles are becoming vastly more complicated, so more and more computers or
mini-computer elements are needed to monitor, produce or accept
information from each other.
Example: In the Classic K bikes (K75, K100,
K1, K1100) there is a single pricey and complicated turn signal
flasher and lamp bulb monitoring
box. With Can-Bus, it could be simplified, if BMW wanted
to do that, and incorporate most of its functions and parts in
vastly smaller size, into
the main computer; and even more functions could be added. It
could be cheaper, and more reliable. ABS functions,
which could incorporate traction control, etc., could be
simplified.
Traction control and ABS require fairly fast information
processing, and electronics is absolutely necessary for them.
The problem that arises from BMW's use of Can-Bus is that the
electrical system is, to quite some degree, no longer relatively easy to modify with farkles, changes, add-ons, etc. Just
adding an electrical outlet jack might cause problems.
Typically, the owners' answer to this (in general) is to wire
accessory goodies directly to the
battery, via a separately added fuse or fused panel. There are
certainly instances where this is not needed....but.....well,
read onwards....
Bosch invented Can-bus in 1983 for use in Mercedes cars; and actual use began in the late 1980's. Canbus is just one of several 'protocols' of the OBD-II system.
Your car likely has "OBD", and it is
standard now for all
cars...the latest version is OBD-II. OBD stands for
On-Board-Diagnostics. On modern cars, a technician can
connect a 'reader' (or other perhaps more sophisticated gadget)
to an electrical plug in your car. He can read out problem codes...as well
as non-problem codes! He can get a lot of information about the
engine; transmission, brakes, cooling system; and, much
more...about the entire vehicle.
All this comes from your car's computer(s); and with the some types
of 'readers' he can make actually make adjustments and
incorporate updates.
Updating the vehicle computer(s) is called 'flashing'.....as the
information is transferred to something akin to the BIOS chip in
your home computer. Many times a manufacturer will
offer updates to correct some problem or other. These
updates are obtainable by authorized repair centers.
The various Governments, ours included, have mandated methods of
computer readouts in your vehicle. Our USA Federal Government
mandated
that the USA comply with the International Standards for OBD and
Can-Bus, which are closely related. I think this happened in
1994.
It was TEN years, before BMW put this latest Can-Bus stuff into
its motorcycles. Prior to that, BMW had its own versions of
OBD, incorporated into such as the Jetronic and early Motronic systems...and
it was primarily for error codes, although there were some
outputs and inputs....and
you'd need the fancy BMW dealership machine ($18,000.00 I think
it used to be) to do everything.
Aside note:
At one time there was quite a bit of chit chat, in various media,
about the FACT that as car computers got sophisticated enough,
that just about
all of them would 'record' certain things, that, if read-out properly,
would show the last
so-many-seconds of vehicle SPEED, before some event...like
the deployment of the airbags, and if the brakes were applied,
and when, ETC. Yes, this is possible
and is TRUE. Your car's computer WILL, and DOES, record this.
The Buss (Bus), somewhat simplified:
An electrical bus is a common interconnection area, point, and/or
method of transportation of information or electricity. It was used in large trucks, and particularly in airplanes, since the thirties, maybe before. In that type of usage a bus was typically just a multiple connection point or perhaps a strip of metal with many connections to it, for a group of common-connected wires. There might have been more than one such bus, with an interconnection switch (usually a circuit breaker) allowing them to be separate, or in parallel. It was common to have a battery hot bus, and a battery ground bus.
This bus idea was and is done
in your HOME, by
multiple connections in the power-meter box, for grounds, hots,
and neutrals.
The above is a very simplified use of the term of
bus, and it gets much more
complicated with
the usage and meaning today. A vehicle bus carries a lot of people, so
many think that the word was
adopted for electrical signals multiple uses on a single wire.
In actuality, the word goes way back, when buss, spelled that
way, was used. Your dictionary may not show
that.
In a way...kind of exaggerated here, one could think of your TV cable company's single coaxial cable wire coming into your home as a bus, carrying all those differing TV and audio programs on just two wires (inner solid wire and the shielding around it). So, warping the use of the term, that could be a signal bus wire. In your vehicle, in the electrical system, any particular BUS (there may be many) might be just ONE OR TWO wires, carrying all sorts of digital code, from MANY devices connected to just those two wires. Digital coding (which is TIME related) separates the functions.
To spell this out a bit differently; a digital bus allows multiple packets of information, from different sources, to travel down one path, simultaneously. Keeping with the analogies, the INTERNET is really a bus type system, as information travels in packets....yes, your E-mail is broken up into many packets; same for website's, etc....as transmitted over the Internet, or, World Wide Web.
This is all somewhat of a simplification of what is going on, but
close to reality.
The more recently a car was designed and built,
in general anyway, the more computerized items....lots
and lots of 'mini' computers are used
with lots and lots of functions and devices. Generally, one MAIN
computer runs and monitors everything, with maybe some peripheral
small computers
doing specific things that are not capable by, or for other
reasons not inside the main computer.
The TREND for a long time was been to greatly increase the number of small
computers in a car. In recent years this has cause
innumerable problems with costs, so nowadays the trend is use
less individual computers by expanding the main computer functions and abilities.
I am sure this will
continue to be the case.
The first motorcycle to have CanBus was probably the Ducati 999 back in
2002. BMW started it with the R1200 in 2004.
CanBus allows most all the various computers (and things that are peripheral, and maybe not really even a tiny computer) to
'talk' or 'communicate' with
each other in a both simplified AND complex manner.
This means that NEARLY EVERY electrical device on your bike could be connected
to the Can-bus
system, which CONTINUOUSLY and RAPIDLY monitors everything via a
computer. The
system can also monitor current flow, voltage, etc. If you
tried to
tap into the
electrical system for an extra electrical gadget, Can-bus might
complain...in essence the Can-Bus computer thinks, rightly or
wrongly, that the bike has a problem. It might even record
the problem, and give
you a visual signal that all was not well. If the
load was
egregious enough, the bike
might not start or be otherwise not rideable.
Some ABS systems talk back and forth with the
computer that runs the engine itself. It is possible for the ABS
to monitor acceleration or other speed
conditions or events, and then with other inputs, the bike might
have traction control applied. That is already done on
cars and a few bikes...and will be appearing on
more bikes in the future.
Problems with CanBus, as far as we vehicle owners are concerned,
is that we cannot just willy-nilly connect up electrical gadgets,
or modify the electrical systems so easily anymore. We also
are more likely to be needing a dealership to read codes and find
problems, with fancy expensive BMW-supplied test
equipment...because when the bike stops running, we will be much
less likely to be able to fix it ourselves. You can imagine
the situation.....when the warranty runs out. This is
all theoretical, however. Note that it is entirely possible
that the systems will be so reliable, that many electrical
problems seen in the past will be eliminated. In MY mind
that is a big maybe. So far, the record tends to show an
increased reliability, over-all. That is to be
expected...especially when the vehicle is new, or nearly.
We can still analyze (within limits) the Classic Jetronic and first two generations of Motronic computers in
our Classic K bikes, but it is really
getting to be a hassle with the later bikes. There
will undoubtedly be plenty of experimentation done, stuff posted
on problems, electrical measurements for such, etc.
For now, the primary method of adding farkles,
etc., to Can-bus bikes will be the added fuse panel and
connections directly to the battery.
For another way of looking at Canbus, try
this article:
http://www.bmwra.org/otl/canbus/
For the NERDY:
There are several variations of CAN-Bus. I won't get into them
much here. CAN-Bus is used for MANY things, not just the main
engine computer. Examples for cars and trucks might be such as door functions,
climate control, etc. CAN-Bus has limitations.
Its information speed is limited to 1-Mbit/s. I wrote Mbit/s that way on
purpose, because... for the
super-nerdy, ...note this is megabits, not megabytes.
A manufacturer certainly does NOT want to try to use CAN-Bus anywhere's near that speed, for
safety and reliability. It does not work all that
well when higher speed real time data is needed, particularly
over longer distances in the vehicle. I'll restate this:
One of its limitations is the real-time speed at which data can
be moved about. With Bosch's CanBus, the information signal is sent down the wires in 8 byte format. There is no theoretical limit, at least in the official specification, for a maximum number of information nodes, but, in practical practice, 32 is about the limit. CanBus is a SERIAL information standard; and the specification is complex, but allows for priorities. Serial means that you can only have one type of information being worked on at any given instant. While the speed that processing of information is done would appear to be very fast and more than capable of most any vehicle function, that is not necessarily so.
As vehicles become much more complicated, such as incorporating
upcoming things like Collision-Warning Systems, Can-bus will have
reached its practical limits. In some instances,
combinations of various methods are used and even the use of multiple CAN-Bus
systems!
Due to speed and capacity limitations, other protocols have not only been
proposed, but are already in use. A short list of
these is: FlexRay; JASPAR, LIN, SAE J1850, AUTOSAR, MOST,
and even the computer FireWire (1394) standard. MOST,
which stands for Media-Oriented-Systems-Transport, is already in
wide usage in European cars. Toyota is going to be
using a 25 Mbyte/s version of MOST in its Prius. Yes,
25 mega-BYTES. MOST
in its revision 3 specifications will allow 150 Mbit/s networks.
FlexRay is already in use on BMW's X5 and 7 series. FlexRay
defines a dual-channel 10 Mbit/s data structure....and the
channels can be used in a redundancy method. FlexRay use
will be by, undoubtedly, since they are members of a FlexRay
Consortium: BMW, GM, VW, Daimler-Chrysler, Boscjh, etc.
As I write this in October, 2009, FlexRay is much more expensive
than Can-Bus, but prices will be coming down.
***CAN (Can-bus) will likely be THE choice for most vehicle networking nodes until maybe year 2017 or tad beyond. This is my best guess. CAN works with SAE's J1850 Bus specification...which is widely used with OBDII. The SAE has various Bus specifications, that is only one.
YES, that DOES mean that OBD readers MIGHT be
able to be used with your BMW motorcycle that has can-bus.....but
the information, and how to go about it, has not been published;
or, at least such is UNknown to me at the moment. But, there are specialty readers that will read the BMW vehicle information.
The GS-911 is THE diagnostic tool that even you can purchase. It reads out all the BMW motorcycle codes and can erase fault codes, etc. It is VERY versatile in what it can do. It is available from Ted Porter's Beemershop. http://Beemershop.com
The GS-911 does not work with all BMW motorcycles. It has limit functionality on the Classic K bikes, such as K1, K75, K100, K1100.
This page will detail what bikes it works on, and that the Classic K's need a 3 pin adapter:
http://www.hexcode.co.za/products/gs-911/function-chart
Microprocessor Control Units (MCUs) are plentifully used in
FlexRay networks. As more are used, perhaps as ECUs
(electronic control units), costs go up, and so does
complexity....as well as capability. The trend has been
towards modular units, each controlling sub-units.
For the ever-so-nerdy, the LIN bus has the lowest cost per node. It
uses serial interconnections, the maximum speed is 19,200
baud...and is often used as a CAN sub-bus.
With today's automobiles.....and now
motorcycles....requiring hundreds of megabytes of software code,
....new standards are proposed fairly often. Just which
ones become popular, is the question. It appears that of
the several, mentioned above, just about all will become
standards.
For another way of looking at Canbus, try this article:
http://www.bmwra.org/otl/canbus/
Initial release 10/17/2009, to K-bmw Internet
Mailing List
10/19/2009: Edited and made into this website article
10/21/2009: Added the ADDENDUM
05/01/2010: Simplify a bit, and update
05/21/2011: Small additions and very minor clarifications
and emphasis here and there.
09/22/2012: QR code, google code, very minor other things
04/03/2013: Add link: http://www.bmwra.org/otl/canbus/
© Copyright, 2013, R. Fleischer
Return to Technical Articles LIST Page