Home » Blog » General Dynamics gets CAN protocol training from CANbus Academy

General Dynamics gets CAN protocol training from CANbus Academy

CANbus Academy founder, Igor Ramos, at the General Dynamics facility in Herndon, VA
CANbus Academy founder, Igor Ramos, at the General Dynamics facility in Herndon, VA

Austin, TX (December 15, 2014) — General Dynamics, the world’s fifth-largest defense contractor, has chosen CANbus Academy to provide them with a 3-day training on CAN protocol, ECU Design and CAN systems integration.

Training took place at the General Dynamics Advanced Information Systems facility in Herndon, VA from December 8 through December 10, where a group of 10 engineers and scientists, experts in developing advanced information systems for defense applications, expanded their knowledge in CAN-technology.

“CAN” stands for Controller Area Network and is a networking protocol widely used in automotive, marine, machinery, rail, industrial and medical applications.

“ECU” stands for Electronic Control Unit and is a generic term for any embedded system that controls one or more of the electrical systems or subsystems in a motor vehicle.

The Course Project, the highpoint of the training, provided the students with an exciting challenge and a way to demonstrate the concepts they had learned. Their assignment was to build a Battle Tank. The class successfully delivered 8 ECUs interconnected with CAN network to perform the tank’s propulsion and weapons systems.

If your company plans to excel at CAN and vehicle technologies, let CANbus Academy provide the CAN protocol training and specialized knowledge you need. Our programs can be customized to suit your company’s learning objectives.  Our project consultation services accelerate your product market time.

Contact us at info@CANbusAcademy to discuss your training needs. Please note training dates are very limited.

Read below details about the 3-day training at General Dynamics:

DAY ONE: CAN Protocol Training

CAN Protocol  ECU Design workshop Handbook
CAN Protocol ECU Design workshop Handbook

The training started with a deep dive into the inner workings of the CAN protocol.  The highlight was a thorough breakdown of every single bit that makes up a CAN frame, followed by an in-depth discussion about Error Frames and the protocol’s fault containment scheme.

In the afternoon, after exploring the SAE J1939 protocol, one of the most popular high-level implementations of CAN, the class transitioned to the hands-on lab. A CAN system with 3 nodes was set up and students were able to see in action – using an oscilloscope, CAN protocol decoder and CAN Analyzer tools – what they had learned earlier that day.

To wrapup the first day, students were introduced to the Arduino Prototyping Platform, and created their very first “Hello World” project: a CAN Analyzer tool where they could read bus messages and transmit custom messages.

DAY TWO: ECU Design Workshop

Day two started with an architecture overview of embedded systems, touching on the uniqueness of real-time systems such as an Anti-lock braking (ABS) on a vehicle compared to a general computer running a web browser or word processor. Class topics ranged from digital core selection and flashing strategy to bootloader and software stack, including low-level target debugging and model-based application development.

After extensive theory, it was time for more hands-on labs using the Arduino Prototyping Platform. The most common functions of an ECU were covered: digital output, modulated outputs, analog input, signal attenuation and amplification, digital inputs and the serial, SPI and I2C interfaces.

ECU Design Workshop Course Materials
ECU Design Workshop Course Materials

Exercises begin simply and gradually increased in complexity: for example, a simple blinking LED morphed into a bi-directional motor speed control using pulse-width modulation and an H-bridge circuit.

When the capabilities of the provided hardware kits were maxed out, it was then time to go a step further and discuss real-world scenarios such as controls of larger electric motors like those found in electric-drive vehicles.


After students completed the provided exercises, which covered the building blocks that make up complex electronic systems, they were given the class challenge: build a Battle Tank.

The 10 students were divided into 5 teams. Their task was to design and implement the propulsion and weapons systems of a tank. The proposed architecture consisted of 8 ECUs: two for the propel motor, two for the turret motors, one supervisor, one information system and two user input controllers.

Students were provided only high-level direction and were in charge of applying what they learned in the earlier parts of the course: CAN protocol and ECU design, applied to create the electronics hardware, control software and network interconnection of the 8 controllers.

Battle Tank Controls Architecture
Battle Tank Controls Architecture

After many hours of circuit design, software programming and teamwork, features started to materialize and controllers gained shape. As each controller became operational, it was brought into the test stand run by Igor Ramos, the course instructor. Excitement and dedication propelled teams to continue working during the long hours before breaking for the day.

On day 3, students continued to resolve bugs and fine-tune their subsystems. As each ECU was finalized, students connected them into the vehicle CAN bus for final integration. The bus backbone grew to 11m long and spanned across 5 tables in opposite ends of the conference room.

Students successfully achieved their goal around 11:30am! The battle tank was fully functional. A student in one corner of the room would actuate the propulsion joystick and a few tables away, the small DC motors would rev up to emulate the propulsion motors. CAN messages were flowing. The Information System was connected to the room’s overhead projector which displayed key signals grabbed from the bus for all to see: tank speed and direction, turret altitude and azimuth (emulated by servomotors). When the operator pushed the gun trigger, a piezo buzzer, loud enough to get everyone’s attention, emulated the firing. Everything was up and running; it was time for the celebration lunch.

CAN Motor Control ECUs
CAN Motor Control ECUs

WRAP UP: CAN Integration

Lunch was followed by a presentation on ECU manufacturing, an overview of the steps involved to turn a prototype into a product: turn the breadboarded prototype circuit students had created into a printed circuit board on rugged enclosure suitable for the automotive environment.

The final portion of the 3-day training was about CAN integration, a look into the real-world challenges and best practices when creating or expanding CAN systems.

IMG_2373Starting with challenges in the physical layer, topics included proper techniques to add components to an existing CAN bus; controller challenges discussed included functional safety tools;  PHA (preliminary hazard assessment) and SIL (safety integrity level); and lastly, software challenges materials focus point on regression testing using hardware in the loop.

The course instructor asked a student to command the battle tank propel joystick at full speed, then disconnect it from the CAN bus in order to simulate a component failure. The result: motors kept on running, which is likely not the preferred system failure behavior on a CAN message timeout. That was a great example of boundary conditions, a typical integration challenge. It drives the message; the integrator’s job is only part functional design. Another side of the job, is to design the system faults.

About CANbus Academy:

CANbus Academy is a leading provider of CAN network training. The company is headquartered in Austin, TX and it has been founded by Igor Ramos, an electrical engineer with over 12 years of experience designing vehicle electrical and electronics systems. Prior to founding CANbus Academy, Igor spent almost 9 years designing the world’s best construction equipment, including bulldozers, excavators and asphalt pavers.