The Most Comprehensive Learning Path for Automotive Embedded Systems with Learning Resources

This section will address everyone’s questions about automotive embedded systems and provide corresponding learning paths.

Questions

1. Does automotive embedded development consider educational background? Is it easy to get into large companies? Larger companies (500+) tend to consider educational background. Based on this year’s student situation, fresh master’s graduates have a higher chance of receiving offers compared to bachelor’s graduates, and having project experience significantly increases this chance. For lateral hires, a bachelor’s engineer with 2-3 years of complete mass production project experience often has a competitive edge over a master’s graduate without practical experience.2. How long do I need to study? If you have already mastered the principles of microcontrollers and the basics of C language, it usually requires 2 to 3 months of focused investment.3. I want to find a position in AUTOSAR, but I don’t know ISO15765 or ISO14229 mentioned in the job description. What should I do? Ask the right questions to avoid detours: the secret to precise questioning in development will determine your limits. A reader previously asked me this, and I was hesitant to respond, but out of the principle of answering questions, it’s simple: if you don’t know, go learn. All interview preparations must be targeted towards the job description to be the most efficient.4. What positions are available in AUTOSAR automotive embedded development? Autosar software engineers are divided into several directions: communication, diagnostics, basic software, and MBD model.

  • Communication Engineer: Network management, DBC changes, maintenance of wire-controlled signals, SomIP requirement changes, etc. (This may further divide CAN and Ethernet).
  • Diagnostics Engineer: Maintenance of CDD (Diagnostic Data File) requirements, storage functions, Boot development, and possibly some network security.
  • Basic Software: Develop automated code generation tools to reduce manual code modification frequency. Some static code may not meet existing requirements, necessitating modifications to AUTOSAR code, which requires oversight to minimize uncertainties from manual changes.
  • Low-level Development: MCAL driver development, CDD (Complex Driver), such as Ethernet drivers, watchdogs, CAN drivers, HSE (NXP), etc. I have organized the technical stack involved in these positions in “Introduction to Automotive Embedded Software”; see the end of the article for access. Quality of materials is more important than quantity; many fall into this trap.

What skills should I master?

C Language and Data Structures

Focus on the chapters on pointers, memory, and bit manipulation in “C Primer Plus” or “C and Pointers” and understand MISRA C. Key data structures include queues and linked lists.

Communication Protocols

Every vehicle relies on CAN; it must be mastered.

CAN 2.0B (Classic CAN): Core knowledge points: Frame structure (standard frame/extended frame), baud rate (500kbps), arbitration mechanism (the smaller the ID, the higher the priority), bit stuffing, error handling (Error Active/Passive/Bus Off). CAN FD (Flexible Data-rate): Differences: New cars (especially new energy vehicles) are basically equipped with CAN FD. Core upgrades: The data segment baud rate is higher (2M/5M/8Mbps), and the single frame payload has been upgraded from 8 bytes to 64 bytes.

The Most Comprehensive Learning Path for Automotive Embedded Systems with Learning Resources

LIN (Local Interconnect Network)

  • Application Scenarios: Low-speed, low-cost control. For example: window lifts, wipers, ambient lights.
  • Core Mode: **Master-Slave Mode**. Unlike CAN, which is multi-master broadcast, LIN must be initiated by the Master scheduling table (Schedule Table).

UDS (Unified Diagnostic Services, ISO 14229)

This is the most important protocol at the application layer. Whether you are working on low-level BSW or application SWC, as long as it involves diagnostics (repairing cars, flashing programs), it cannot be avoided.

  • Core Concept: Service ID (SID).
  • Several services that must be remembered:
    • <span>0x10</span>: Switch session (default/programming/extended session).
    • <span>0x11</span>: ECU reset.
    • <span>0x22</span> / <span>0x2E</span>: Read / Write data (e.g., read VIN code).
    • <span>0x19</span>: Read fault codes (DTC).
    • <span>0x27</span>: Security access (unlock ECU for write operations).
    • <span>0x31</span>: Routine control (Routine, e.g., command wiper to move once).

ISO 15765 (CAN TP – Transport Protocol)

  • Function: A CAN frame can only send 8 bytes (CAN FD 64 bytes), but diagnostic data (e.g., flashing firmware) may be several megabytes. ISO 15765 defines how to split large data packets into smaller packets for transmission and then reassemble them at the receiving end.
  • Core Frame Types: Single Frame (SF), First Frame (FF), Consecutive Frame (CF), Flow Control Frame (FC).
  • AUTOSAR Corresponding Module:<span>CanTp</span>.

Advanced/Future Directions (Bonus Points/New Energy Essentials)

Automotive Ethernet

  • SOME/IP (Scalable service-Oriented MiddlewarE over IP):
    • Importance: Core of Adaptive AUTOSAR. The service-oriented architecture (SOA) relies entirely on it. It allows ECUs to provide “services” and subscribe to “events” like internet servers.
    • Difference: It is an application layer protocol running on TCP/UDP.
  • DoIP (Diagnostics over IP, ISO 13400):
    • Function: Use Ethernet for diagnostics and flashing. It is hundreds of times faster than CAN, essential for OTA (over-the-air upgrades).
  • AUTOSAR Corresponding Modules:<span>SoAd</span>, <span>Sd</span>, <span>LdCom</span>.
The Most Comprehensive Learning Path for Automotive Embedded Systems with Learning Resources

XCP / CCP (Calibration Protocol)

  • Application Scenarios: Calibration. For example, engineers need to modify motor parameters in real-time while the vehicle is running or collect internal variables at high speed.
  • Tools: Used in conjunction with Vector CANape or ETAS INCA.
  • Principle: Master-slave mode, where the host (Master) controls the ECU through DAQ (Data Acquisition) or STIM (Stimulus) lists.
The Most Comprehensive Learning Path for Automotive Embedded Systems with Learning Resources

Board-Level Communication (Essential for Low-Level Driver Development)

If you are doing MCAL (Microcontroller Abstraction Layer) development, these are fundamental.

  • SPI (Serial Peripheral Interface):
    • Usage: Communication between MCU and peripheral chips. For example, MCU controls SBC (power chip), communicates with high-precision sensors, drives pre-driver chips.
    • Features: High speed, full duplex, master-slave mode (CS chip select).
  • I2C (Inter-Integrated Circuit):
    • Usage: Configuring some simple sensors, EEPROM.
  • UART / LIN (SCI):
    • Usage: Printing debug information, simple serial communication.

Tools

1. Toolchain: Vector Suite (The Industry Standard)

Tools from the German company Vector are universal in the automotive industry. If your resume states “proficient in Vector toolchain,” your interview pass rate will significantly increase.

  • CANoe (Essential):
    • Status: Industry-standard bus analysis and simulation tool.
    • Usage: View messages on the bus (Trace), simulate nodes to send messages (IG), perform automated testing.
    • Core Skill Point: CAPL Script. This is the built-in programming language of CANoe (similar to C language). Interview questions often include: “Can you write a script in CAPL to automatically send messages?” or “Can you simulate an ECU node for testing using CAPL?”
  • DaVinci Configurator / Developer:
    • Developer: Draw architecture diagrams, define SWC (Software Components), design interfaces (Port/Interface).
    • Configurator: Configure BSW (Basic Software), such as configuring CAN drivers, OS scheduling, protocol stack parameters.
    • Status: The leading AUTOSAR configuration tool.
    • Usage:
    • Alternatives: EB Tresos (from Elektrobit), commonly used with NXP chips, with a similar interface logic.
  • CANape:
    • Usage: Calibration and measurement. Mainly used to adjust internal parameters of the ECU (XCP protocol).

2. Simulation and Modeling Tools (Model-Based Design)

  • MATLAB / Simulink:
    • Usage: Algorithm engineers use it to draw logic diagrams (e.g., battery SOC estimation logic) and then automatically generate C code.
    • Your Job: Integrate the generated C code into the AUTOSAR architecture.

3. Code Development and Debugging Tools

This is where you write code every day.

  • IDE (Integrated Development Environment):
    • HighTec / Tasking / Green Hills (GHS): These are commercial compilers that not only compile but also perform safety checks.
    • S32 Design Studio (S32DS): Specifically for NXP chips (based on Eclipse), beginners can use this for practice; it is free!
  • Debugger:
    • Lauterbach (Trace32): The Rolls Royce of debuggers.
    • Usage: Connects to hardware JTAG interface, views registers, performs step debugging, and checks memory stack. It is a powerful tool for handling hard faults.

4. Domestic and Low-Cost Alternatives (Unique to the Chinese Market)

  • ZLG (Zhiyuan Electronics) – USBCAN/CANFD Analyzer:
    • Status: The “red box” or “black box” that every domestic engineer has.
    • Software: ZCANPro. Functions similarly to a simplified version of CANoe, sufficient for capturing packets and viewing data.
  • TSMaster (Tongxing Intelligent):
    • Status: A strong domestic challenger to CANoe, with increasingly powerful features, now used by many domestic OEMs.
    • Advantages: The personal version is free! I highly recommend downloading TSMaster to simulate and practice; it supports “virtual loopback,” allowing you to practice sending and receiving messages without cost.

“Cost-saving” Learning Strategies

  1. Practical Alternatives (Hands-on Experience):
  • Download S32 Design Studio from the NXP official website (free IDE).
  • Download the evaluation version of EB Tresos Studio from the NXP official website (usually paired with the S32K chip package). This is the most authentic AUTOSAR configuration tool you can access. By clicking to configure the CAN module and OS module, you will understand what the AUTOSAR development process looks like.
  • Download TSMaster to practice packet capturing and simple script control.

Conclusion

For all protocols, always refer to primary materials, as official documents are the most authoritative and detailed. For UDS learning, just refer to the original ISO 14229 document. I have packaged relevant automotive materials and placed them in the backend; reply “2” to the public account to obtain them.

The Most Comprehensive Learning Path for Automotive Embedded Systems with Learning Resources

Leave a Comment