FlexRay is an
automotive network communications protocol developed by the FlexRay Consortium to govern on-board automotive computing. It is designed to be faster and more reliable than
CAN and
TTP, but it is also more expensive. The FlexRay consortium disbanded in 2009, but the FlexRay standard is now a set of ISO standards, ISO 17458-1 to 17458-5.
FlexRay is a communication bus designed to ensure high data rates, fault tolerance, operating on a time cycle, split into static and dynamic segments for event-triggered and time-triggered communications. It is mainly used in aeronautic and automotive sectors.
Features
FlexRay supports data rates up to , explicitly supports both star and bus physical topologies, and can have two independent data channels for fault-tolerance (communication can continue with reduced bandwidth if one channel is inoperative). The bus operates on a time cycle, divided into two parts: the static segment and the dynamic segment. The static segment is preallocated into slices for individual communication types, providing stronger determinism than its predecessor
CAN. The dynamic segment operates more like CAN, with nodes taking control of the bus as available, allowing event-triggered behavior.
Consortium
The FlexRay Consortium was made up of the following core members:
*
Freescale Semiconductor
Freescale Semiconductor, Inc. was an American semiconductor manufacturer. It was created by the divestiture of the Semiconductor Products Sector of Motorola in 2004. Freescale focused their integrated circuit products on the automotive, embedde ...
*
Bosch
*
NXP Semiconductors
NXP Semiconductors N.V. is a Dutch semiconductor manufacturing and design company with headquarters in Eindhoven, Netherlands. It is the third largest European semiconductor company by market capitalization as of 2024. The company employs approx ...
*
BMW
Bayerische Motoren Werke AG, trading as BMW Group (commonly abbreviated to BMW (), sometimes anglicised as Bavarian Motor Works), is a German multinational manufacturer of vehicles and motorcycles headquartered in Munich, Bavaria, Germany. Th ...
*
Volkswagen
Volkswagen (VW; )English: , . is a German automotive industry, automobile manufacturer based in Wolfsburg, Lower Saxony, Germany. Established in 1937 by German Labour Front, The German Labour Front, it was revitalized into the global brand it ...
*
Daimler
*
General Motors
General Motors Company (GM) is an American Multinational corporation, multinational Automotive industry, automotive manufacturing company headquartered in Detroit, Michigan, United States. The company is most known for owning and manufacturing f ...
There were also Premium Associate and Associate members of FlexRay consortium. By September 2009, there were 28 premium associate members and more than 60 associate members. At the end of 2009, the consortium disbanded.
Commercial deployment
The first series production vehicle with FlexRay was at the end of 2006 in the
BMW X5 (E70)
The BMW E70 is the second-generation BMW X5 mid-size luxury car, luxury crossover SUV. It replaced the BMW X5 (E53) in July 2006. It was manufactured alongside the BMW X6 at BMW's Greer, South Carolina plant in the U.S. and BMW's facility in Tolu ...
,
enabling a new and fast adaptive damping system. Full use of FlexRay was introduced in 2008 in the new
BMW 7 Series (F01).
Vehicles
*
Audi A4 (B9) (2015–)
*
Audi A5 (F5) (2016–)
*
Audi A6 (C7) (2011–2018)
*
Audi A7
*
Audi A8 (D4) (2010–2017)
*
Audi Q7 (2015–)
*
Audi TT Mk3 (2014–2023)
*
Audi R8 (2015–2023)
*
Bentley Flying Spur (2013-2019)
*
Bentley Mulsanne (2010–2020)
*
BMW X5 (E70)
The BMW E70 is the second-generation BMW X5 mid-size luxury car, luxury crossover SUV. It replaced the BMW X5 (E53) in July 2006. It was manufactured alongside the BMW X6 at BMW's Greer, South Carolina plant in the U.S. and BMW's facility in Tolu ...
(2006–2013)
*
BMW X6 (E71) (2008–2014)
*
BMW 1 Series
The BMW 1 Series is a range of subcompact executive cars (C-segment) manufactured by BMW since 2004. It is the successor to the BMW 3 Series Compact and is currently in its fourth generation. Positioned as the entry-level model in BMW range of ...
*
BMW 3 Series
*
BMW 5 Series (2009–2017)
*
BMW 6 Series (2011–2018)
*
BMW 7 Series
The BMW 7 Series is a full-size luxury car, luxury sedan manufactured and marketed by the German automaker BMW since 1977. It is the successor to the BMW E3 "New Six" sedan and is now in its seventh generation.
The 7 Series is BMW's flagship car ...
(2008–2015)
*
Lamborghini Huracán
*
Mercedes-Benz S-Class (W222)
The Mercedes-Benz W222 is the sixth generation of the Mercedes Benz S-Class produced from 2013 to 2020, serving as the successor to the Mercedes-Benz S-Class (W221), W221 S-Class and predecessor to the Mercedes-Benz S-Class (W223), W223 S-Clas ...
(2013–2020)
*
Mercedes-Benz S-Class (C217) (2014–2020)
*
Mercedes-Benz E-Class (W213) (2016–2023)
*
Mercedes-Benz C-Class (W205) (2015-2023)
*
Mercedes-Benz C-Class (W206) (2021–)
*
Mercedes-Benz S-Class (W223) (2020–)
*
Rolls-Royce Ghost (2009–)
*
Land Rover
Land Rover is a brand of predominantly four-wheel drive, off-road capable vehicles, owned by British multinational car manufacturer Jaguar Land Rover (JLR), since 2008 a subsidiary of India's Tata Motors. JLR builds Land Rovers in Brazil ...
*
Volvo XC90 (2015–)
Details
Clock
The FlexRay system consists of a bus and
electronic control units (ECUs). Each ECU has an independent clock. The
clock drift
Clock drift refers to several related phenomena where a clock does not run at exactly the same rate as a reference clock. That is, after some time the clock "drifts apart" or gradually desynchronizes from the other clock. All clocks are subject to ...
must be not more than 0.15% from the reference clock, so the difference between the slowest and the fastest clock in the system is no greater than 0.3%.
This means that, if ECU-s is a sender and ECU-r is a receiver, then for every 300 cycles of the sender there will be between 299 and 301 cycles of the receiver. The clocks are resynchronized frequently enough to assure that this causes no problems. The clock is sent in the static segment.
Bits on the bus
At each time, only one ECU writes to the
bus
A bus (contracted from omnibus, with variants multibus, motorbus, autobus, etc.) is a motor vehicle that carries significantly more passengers than an average car or van, but fewer than the average rail transport. It is most commonly used ...
. Each bit to be sent is held on the bus for 8 sample clock cycles.
The receiver keeps a buffer of the last 5 samples, and uses the majority of the last 5 samples as the input signal.
Single-cycle transmission errors may affect results near the boundary of the bits, but will not affect cycles in the middle of the 8-cycle region.
Sampled bits
The value of the bit is sampled in the middle of the 8-bit region.
The errors are moved to the extreme cycles, and the clock is synchronized frequently enough for the drift to be small. (Drift is smaller than 1 cycle per 300 cycles, and during transmission the clock is synchronized more than once every 300 cycles.)
Frame
All the communication is sent in the form of frames. The message consists of bytes
, packed in the following way:
* Transmission Start Signal (TSS) – bit 0
* Frame Start Signal (FSS) – bit 1
* ''m'' times:
** Byte Start Signal 0 (BSS0) – bit 1
** Byte Start Signal 1 (BSS1) – bit 0
** 0th bit of ''i''-th byte
** 1st bit of ''i''-th byte
** 2nd bit of ''i''-th byte
** ...
** 7th bit of ''i''-th byte
* Frame End Signal (FES) – bit 0
* Transmission End Signal (TES) – bit 1
If nothing is being communicated, the bus is held in state 1 (high voltage), so every receiver knows that the communication started when the voltage drops to 0.
The receiver knows when the message is complete by checking whether BSS0 (1) or FES (0) was received.
Note that 8-cycle per bit has nothing to do with bytes. Each byte takes 80 cycles to transfer. 16 for BSS0 and BSS1 and 64 for its bits.
Also note that BSS0 has value 1, and BSS1 has value 0.
Clock synchronization
Clocks are resynchronized when the voted signal changes from 1 to 0, if the receiver was in either idle state or expecting BSS1.
As synchronization is done on the voted signal, small transmission errors during synchronization that affect the boundary bits may skew the synchronization no more than 1 cycle. As there are at most 88 cycles between synchronization (BSS1, 8 bits of the last byte, FES and TES - 11 bits of 8 cycles each), and the clock drift is no larger than 1 per 300 cycles, the drift may skew the clock no more than 1 cycle. Small transmission errors during the receiving may affect only the boundary bits. So in the worst case the two middle bits are correct, and thus the sampled value is correct.
Here's an example of a particularly bad case - error during synchronization, a lost cycle due to clock drift and error in transmission.
Errors that happened in the example:
* Because of a single-bit error during synchronization, the synchronization was delayed by 1 cycle
* Receiver clock was slower than sender clock, so receiver missed one cycle (marked X). This will not happen again before the next synchronization due to limits on maximum allowable clock drift.
* Because of a single-bit error during transmission, a bit was voted wrongly near the result.
Despite so many errors, the communication was received correctly.
The green cells are sampling points. All except the first are synchronized by the 1->0 edge in the transmission fragment shown.
Development tools
When developing and/or troubleshooting the FlexRay bus, examination of hardware signals can be very important.
Logic analyzers and
bus analyzers are tools which collect, analyze, decode, store signals so people can view the high-speed waveforms at their leisure.
The future of FlexRay
Ethernet may replace FlexRay for bandwidth intensive, non-safety critical applications.
See also
*
Controller Area Network
A controller area network bus (CAN bus) is a vehicle bus standard designed to enable efficient communication primarily between electronic control units (ECUs). Originally developed to reduce the complexity and cost of electrical wiring in aut ...
(CAN)
*
Single-pair Ethernet (SPE)
*
Local Interconnect Network
LIN is a network protocol used for communication between components in modern vehicles. It is a low-cost single-step serial protocol that supports communications up to 19.2 Kbit/s with a maximum bus length of .
History
The need for a cheap seri ...
(LIN) (ISO 17987)
*
MOST (ISO 21806)
*
SENT (SAE J2716)
References
External links
FlexRay OverviewTechnical Overview of FlexRay by National Instruments
FlexRay Specification
{{Authority control
Network protocols