Source code for heavy-duty vehicle communication

Build SAE J1939 devices faster.

Production-ready J1939 and J1939 FD protocol stacks in MISRA-compliant ANSI-C, supported by PGN/SPN configuration, code generation, diagnostics and integration expertise.

SAE J1939 J1939-22 CAN FD MISRA-C ISO-TP
emotas CAN MultiProtocol Stack architecture with J1939 protocol handler
One scalable communication foundation Driver · Queues · Protocol · Application
Complete J1939 engineering environment

From PGN and SPN definitions to validated network traffic

The emotas environment combines embedded protocol source code with graphical device configuration and bus-analysis tools. Teams can configure the communication model, generate consistent C artifacts, integrate with the target platform and diagnose live J1939 networks.

Source-code delivery ANSI-C, configurable and scalable
Target flexibility Bare metal, RTOS, Linux, Windows and QNX
Royalty-free licensing Project or site license without runtime fees
Engineering support Integration, training and custom drivers
Select the communication foundation

J1939 protocol stacks for current and next-generation vehicles

Use classic J1939, move to J1939 FD, or combine multiple CAN protocols inside one device or gateway.

01

SAE J1939 Stack

Fast integration of J1939 communication into embedded ECUs through a comfortable API and a defined driver interface.

  • Address claiming and cyclic communication
  • TP and BAM for large datasets
  • ISO-TP client and server
  • Optional diagnostics, safety and MultiLine
Technical details at emotas ↗
FD

SAE J1939 FD Stack

Develop J1939 FD applications according to J1939-22, with classic J1939 included in the same source-code package.

  • J1939 and J1939 FD selection
  • Multi-PG and CAN FD transport
  • Address claiming and message monitoring
  • Optional diagnostics and MultiLine
Technical details at emotas ↗
MP

CAN MultiProtocol Stack

Combine J1939, CANopen, EnergyBus and proprietary CAN communication in a single embedded application.

  • Common CAN driver and queue layer
  • Ideal for protocol gateways
  • Slim API and full signal-based API
  • Unified graphical configuration
Technical details at emotas ↗
SAE J1939 network architecture: engine, transmission, body and telematics ECUs on a shared CAN / CAN FD backbone, with diagnostic tool, implement and gateway nodes
Engineered for embedded integration

Keep hardware, communication and application cleanly separated

A defined driver interface makes it straightforward to adapt the stack to different CPUs and CAN controllers. The scalable build includes only the services required by the application.

Ready-to-run examples and reference documentation accelerate initial integration.
Dynamic PGN and SPN configuration supports adaptable vehicle applications.
MultiLine options support gateways and multi-channel ECUs.
Optional diagnostic-message support simplifies DM1 through DM64 handling.
Address Claiming Fixed or dynamically claimed node addresses
Transport Protocols BAM and connection-managed transfer
Diagnostics Optional simplified DM message APIs
Large Networks MultiLine and gateway configurations
Configuration and analysis

Tools that turn the stack into a working vehicle network

Configure and generate

J1939 DeviceDesigner

Create PGN and SPN definitions, generate C structures and initialization functions, configure the stack and driver, and produce synchronized device documentation.

Technical details at emotas ↗
Monitor and diagnose

J1939 CANinterpreter

Monitor, record, filter and interpret CAN traffic by PGN and SPN. Analyze BAM and TP sequences and send or request J1939 messages for test and service work.

Technical details at emotas ↗
Windows integration

C# API Wrapper

Use the J1939 Stack from Windows applications through a C# API and the .NET framework when desktop integration is part of the solution.

Technical details at emotas ↗
See the network in context

Interpret J1939 traffic as engineering data—not raw CAN frames

The CANinterpreter maps messages to PGNs, SPNs, source and destination addresses, physical values and units. Its object view presents current signal values, while scripting and transmitter capabilities support custom testing and service applications.

Online bus monitoring
CAN traffic recording
PGN/SPN interpretation
Filtering and triggering
Cyclic message transmission
Custom scripting and UI
emotas CANinterpreter showing SAE J1939 messages, PGNs and SPNs
Built for mobile machines

Where J1939 communication matters

J1939 provides a common communication model across engines, controllers, implements, diagnostics and telematics in demanding vehicle environments.

Commercial Vehicle ECUs Off-Highway Equipment Agricultural Machinery Mining Vehicles Fleet & Telematics Engine & Powertrain Heavy-Duty Diagnostics
Why engineers choose emotas
Complete SAE J1939 and J1939 FD support
MISRA-compliant ANSI-C source code
Graphical PGN/SPN configuration
Automatic C code generation
Royalty-free project and site licensing
Integration, driver and consulting support
Portable across embedded targets

One ANSI-C code base. Broad hardware and toolchain flexibility.

Designed for embedded microcontrollers and adaptable across leading compilers, CAN controllers, bare-metal platforms and real-time operating systems.

Infineon logo
NXP Semiconductors logo
Renesas Electronics logo
STMicroelectronics logo
Texas Instruments logo
Microchip Technology logo
Talk / Demo / Evaluation

Let’s map the right J1939 stack to your ECU.

Share your target hardware, operating environment, communication requirements and timeline. Lexington Soft can arrange a technical discussion, demonstration, evaluation or commercial proposal.

✓ Compare J1939, J1939 FD and MultiProtocol options✓ Review MCU, CAN controller, compiler and RTOS support✓ Plan DeviceDesigner and CANinterpreter evaluations
Name
Authorized emotas partner · North America and India © 2026 Lexington Soft