Automatic CAN ID Assignment via Daisy-Chain Initialization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems for automatically assigning CAN IDs to multiple devices on a CAN bus are inefficient, prone to high error rates, and require complex microcontroller configurations, which increase cost and reduce real-time performance.

Innovation Solution

A method and system that reset all CAN IDs to a same initial value and use a controller to sequentially set the CAN IDs of each device in a chain configuration, eliminating the need for microcontroller chips in device subsystems.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If manual DIP switch configuration is used for CAN ID assignment, then each device can have a unique CAN ID, but the process becomes inefficient and error-prone when there are more than 8 CAN nodes

Engineering Contradiction:
ImproveCAN ID assignment efficiencyVSAvoidCAN ID configuration error rate
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs self-assignment of CAN IDs through the daisy-chain connection. Each device automatically receives its CAN ID from the previous device in the chain without requiring manual configuration or slave microcontroller chips, enabling the system to serve itself in the ID assignment process

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The CAN ID assignment is performed during the power-on initialization phase before the system begins normal operation. The master microcontroller sequentially assigns IDs to all devices in the daisy-chain connection during system startup, ensuring IDs are predetermined and configured before operational requirements arise

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If fixed CAN ID is programmed into devices during production, then each device has a unique CAN ID, but system assembly and maintenance become complicated due to inability to standardize production and change CAN IDs

Engineering Contradiction:
ImproveCAN ID flexibilityVSAvoidSystem assembly and maintenance complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The CAN ID assignment system transitions from static fixed IDs programmed during production to dynamic IDs that can be automatically assigned and potentially reconfigured. The system allows CAN IDs to be determined at runtime based on physical connection topology rather than being permanently fixed during manufacturing

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The daisy-chain connection serves multiple functions: it provides both the communication pathway for CAN bus operation and the configuration pathway for automatic CAN ID assignment. This multi-functional approach eliminates the need for separate ID configuration hardware or procedures

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Extent of automation

If automatic CAN ID assignment is implemented using slave microcontroller chips in each device subsystem, then CAN IDs can be automatically assigned, but system complexity and cost increase

Engineering Contradiction:
ImproveCAN ID assignment automationVSAvoidMicrocontroller chip complexity
Core Design Contradiction:
Extent of automationVSDevice complexity

Solution Approach 1:

The slave microcontroller chip is extracted and removed from each device subsystem. The automatic CAN ID assignment functionality is achieved without requiring separate control processors in each node, simplifying the hardware architecture while maintaining automation

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The CAN ID assignment function is merged into the main microcontroller that already controls each device subsystem. Rather than adding separate slave microcontroller chips for ID management, the existing microcontroller performs both system control and ID configuration functions through the daisy-chain connection

Inventive Principle:
Principle #5Merging (Combining)

4Productivity

If existing automatic CAN ID assignment methods are used with arbitration based on message sending speed or random generators, then CAN IDs can be assigned automatically, but initialization time exceeds 1 second which is too long for systems requiring less than 500 ms initialization

Engineering Contradiction:
ImproveCAN ID assignment speedVSAvoidSystem initialization time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The CAN ID assignment is performed during the power-on initialization phase before the system begins normal operation. The master microcontroller sequentially assigns IDs to all devices in the daisy-chain connection during system startup, ensuring IDs are predetermined and configured before operational requirements arise

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses periodic polling or sequential addressing through the daisy-chain connection to assign CAN IDs in a structured, time-efficient manner. Rather than using random generation or speed-based arbitration that require multiple communication rounds, the system systematically progresses through each device in the chain to assign IDs in a predictable time frame

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS20250190381A1System and method of automatic id assignment for can bus devices
Publication Date: 2025.06.12 NXP USA INC
  • US20250190381A1 patent drawing
  • US20250190381A1 patent drawing
  • US20250190381A1 patent drawing

AI summary

A method of assigning a respective controller area network (CAN) ID to each of a plurality of devices, wherein the each of the plurality of devices is coupled with a CAN bus and comprises at least one input and at least one output by which the plurality of devices are connected, in a chain, to a controller of the CAN bus having at least one output, the method comprising: resetting the CAN ID of the each of the plurality of devices to a same initial value; using the at least one output of the controller to set the at least one input of a first device of the plurality of devices to a first value; using the first value to set the CAN ID of the first device; using the at least one output of the first device to set the at least one input of a second device of the plurality of devices to a second value, wherein the second device is connected to the first device; and using the second value to set the CAN ID of the second device. A system of assigning a respective CAN ID to each of a plurality of devices is also presented.