Convenient configuration method for CAN interface of Jetson series embedded development board

Through the simplified device tree modification method, Jetson Nano's GPIO interface is configured as a CAN interface, which solves the problem that Jetson Nano does not support CAN interface natively, realizes application in the fields of industrial automation and intelligent transportation, and reduces technical thresholds and risks.

CN119396411AActive Publication Date: 2025-02-07NORTHWESTERN POLYTECHNICAL UNIV
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
CN202411646635.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-18
Publication Date
2025-02-07
Estimated Expiration
2044-11-18

AI Technical Summary

Technical Problem

The Jetson Nano development board does not natively support CAN interfaces, which limits its application in automation and on-board systems. The existing solutions require users to perform complex hardware configuration and software programming, with high technical thresholds and system stability and data loss. risk.

Method used

Through a simplified direct modification and decompile method of device tree, Jetson Nano's GPIO interface is configured as a CAN interface, and the CAN signal is output using the MCP251X chip, which significantly reduces the technical threshold and risks.

Benefits of technology

It realizes Jetson Nano's CAN communication capabilities in the fields of industrial automation and intelligent transportation, reduces development costs, simplifies the configuration process, and ensures the stability and security of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119396411A_ABST
    Figure CN119396411A_ABST
Patent Text Reader

Abstract

The invention discloses a convenient configuration method for a CAN (Controller Area Network) interface of a Jetson series embedded development board, which allows a user to easily configure a Jetson Nano through a simplified equipment tree direct modification and decompilation method so as to enable the Jetson Nano to normally output a CAN signal through an MCP251X chip. According to the method, the technical threshold and risk are remarkably reduced, the development cost is reduced, and the method does not need to depend on complex kernel updating, so that CAN communication of Jetson Nano in various industries and research and development applications is quicker and safer.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention belongs to the field of embedded technology, and in particular relates to a convenient configuration method for a CAN interface of a Jetson series embedded development board. Background Art

[0002] With the rapid development of industrial automation and intelligent transportation systems, efficient and reliable communication technology has become increasingly important. As a stable and widely used network communication standard, Controller Area Network (CAN) is widely used in automotive electronics, industrial automation and various embedded systems due to its high reliability and strong error detection capabilities.

[0003] As a powerful embedded development board, Jetson Nano provides rich GPIO interfaces and hardware resources, which is very suitable for developing complex machine learning applications and advanced computing tasks. However, despite the powerful hardware of Jetson Nano, its natively supported communication interface does not include CAN. This limits its application in fields such as automation and in-vehicle systems, because these fields usually rely on CAN for reliable communication between devices.

[0004] In addition, although there are many solutions on the market that convert GPIO interfaces to CAN interfaces, such as using the MCP251X series of CAN controllers, the implementation of these solutions usually requires users to perform complex hardware configuration and software programming. In particular, users are required to manually modify the Linux device tree configuration and system startup parameters, which not only has high technical barriers and cumbersome operations, but also often involves system-level risks such as system instability and data loss.

[0005] Therefore, there is an urgent need to develop a simple, low-risk and easy-to-implement method to enable Jetson Nano users to quickly and safely configure their GPIO interfaces as CAN communication interfaces, thereby broadening their applications in the fields of industrial automation and intelligent transportation. The present invention is proposed to solve this technical demand. Summary of the invention

[0006] In order to overcome the shortcomings of the prior art, the present invention provides a convenient configuration method for the CAN interface of the Jetson series embedded development board, which allows users to easily configure JetsonNano through a simplified device tree direct modification and decompilation method so that it can normally output CAN signals through the MCP251X chip. This method significantly reduces the technical threshold and risk, reduces development costs, and does not require reliance on complex kernel updates, making Jetson Nano's CAN communication in various industrial and R&D applications faster and safer.

[0007] The technical solution adopted by the present invention to solve the technical problem is as follows:

[0008] Step 1: Configure the device tree on the Jetson Nano development board and enable the CAN function of the 40Pin GPIO pin;

[0009] Step 2: Use the jetson-io.py tool to activate and configure the 40Pin GPIO pins and select the external hardware MCP251X series chip;

[0010] Step 3: Modify the device tree file, convert it into a device tree source file, and modify the crystal frequency setting to the correct value to ensure compatibility with the MCP251X chip;

[0011] Step 4: Recompile the modified device tree source file into a device tree binary file and ensure that the correct device tree is loaded when the system starts, so that Jetson Nano can output CAN signals through the MCP251X chip.

[0012] Preferably, the crystal oscillator frequency is 8,000,000 Hz.

[0013] Preferably, in the CAN interface convenient configuration method, the extlinux.conf file is used to specify the loading of the modified device tree file to ensure that Jetson Nano uses the correct configuration when starting.

[0014] Preferably, in the convenient configuration method for the CAN interface, the Jetson Nano development board is an EMMC version, and the operating system is flashed in through the Nvidia SDKManager tool.

[0015] Preferably, in the CAN interface convenient configuration method, the validity of the configuration is finally verified, including sending and receiving CAN messages to ensure that the communication between Jetson Nano and the MCP251X chip is normal.

[0016] A computer program enables a computer to execute the above-mentioned convenient configuration method for a CAN interface.

[0017] An electronic device comprises: a processor and a memory; the memory is used to store a computer program, and the processor is used to execute the computer program stored in the memory, so that the electronic device executes the above-mentioned CAN interface convenient configuration method.

[0018] A computer-readable storage medium stores a computer program, which implements the above-mentioned convenient configuration method for a CAN interface when executed by a processor.

[0019] A chip includes: a processor, which is used to call and run a computer program from a memory, so that a device equipped with the chip executes the above-mentioned convenient CAN interface configuration method.

[0020] A computer program product, the computer program product comprising a computer storage medium, the computer storage medium storing a computer program, the computer program comprising instructions executable by at least one processor, and the above-mentioned CAN interface convenient configuration method is implemented when the instructions are executed by the at least one processor.

[0021] The beneficial effects of the present invention are as follows:

[0022] 1. Direct device tree modification method: The present invention provides a novel device tree modification strategy that allows users to directly modify the .dtb file and accurately adjust the hardware configuration parameters, especially the crystal frequency and the function assignment of the GPIO pins, by reverse compiling back to the .dts format. This method avoids the traditional requirement of implementing hardware configuration through a comprehensive system update, significantly reducing the complexity and risk of the operation.

[0023] 2. Optimized crystal frequency setting: The present invention provides a method for adjusting the crystal frequency based on specific hardware requirements. By adjusting the crystal frequency from the standard 20MHz to 8MHz to match the optimal operating frequency of the MCP251X chip, the stability and reliability of CAN communication are ensured.

[0024] 3. Use tools to simplify the configuration process: This invention uses existing tools such as jetson-io.py to activate and configure the GPIO pins of Jetson Nano, further simplifying the user's operation requirements at the hardware level. Users can select specific hardware configurations through a graphical interface without having to deeply understand the underlying hardware details.

[0025] 4. Verification and testing process: The present invention also includes a complete set of verification and testing processes to ensure that the modified configuration can work properly in the actual environment. This includes testing of sending and receiving CAN messages, and evaluating system performance by monitoring the stability and error rate of data transmission.

[0026] In summary, this invention not only improves the application capabilities of Jetson Nano in automation and vehicle-mounted systems, but also provides a low-risk and high-efficiency CAN interface configuration method for developers and system integrators. BRIEF DESCRIPTION OF THE DRAWINGS

[0027] Figure 1 It is a flowchart of the overall process steps of the present invention.

[0028] Figure 2The jetson-io interface is successfully configured for the embodiment of the present invention.

[0029] Figure 3 The embodiment of the present invention is adjusted to the corresponding CAN chip output mode in jetson-io.

[0030] Figure 4 The CAN chip crystal oscillator frequency in the device tree file is modified for the embodiment of the present invention.

[0031] Figure 5 The CAN chip interface in the device tree file is activated for the embodiment of the present invention. DETAILED DESCRIPTION

[0032] The present invention is further described below in conjunction with the accompanying drawings and embodiments.

[0033] The present invention provides a method for configuring a CAN interface for a Jetson Nano development board, which simplifies the setting process of a CAN communication interface implemented by an MCP251X series chip. By directly modifying and decompiling the device tree of Jetson Nano, the present invention allows users to quickly and securely configure the CAN interface without updating the NVIDIA kernel library.

[0034] The following steps are involved:

[0035] Configure the device tree on the Jetson Nano development board to enable the CAN function of its 40Pin GPIO pins;

[0036] Use the jetson-io.py tool to activate and configure the 40Pin GPIO pins and select the external hardware MCP251X series chip;

[0037] Modify the device tree file (.dtb), convert it to a device tree source file (.dts), and modify the crystal frequency setting to the correct value to ensure compatibility with the MCP251X chip;

[0038] Recompile the modified device tree source file (.dts) into a device tree binary file (.dtb) and ensure that the correct device tree is loaded when the system starts, so that Jetson Nano can output CAN signals through the MCP251X chip.

[0039] The crystal frequency was modified to 8,000,000Hz.

[0040] Use the extlinux.conf file to specify the load of the modified device tree file to ensure that the Jetson Nano uses the correct configuration when it boots.

[0041] The Jetson Nano development board must be the EMMC version, and the operating system must be flashed using the Nvidia SDKManager tool.

[0042] A step is also included to verify the validity of the configuration, which involves sending and receiving CAN messages to ensure that the communication between the Jetson Nano and the MCP251X chip is normal.

[0043] Example:

[0044] See Figure 1 , the following are specific steps for implementing the present invention, which aims to provide a simple, efficient and low-risk method to enable the Jetson Nano development board to output CAN signals through the MCP251X series chip;

[0045] Step 1: System preparation;

[0046] The prerequisite is that the Jetson Nano development board must be a version with EMMC, and the system needs to be flashed with the native operating system through the Nvidia SDKManager tool. This provides the necessary system stability and compatibility.

[0047] Step 2: Configure ExtLinux.conf;

[0048] Before activating any hardware interface, you first need to ensure that the device tree in extlinux.conf is correctly configured to support modifications to the 40-pin GPIO interface.

[0049] Edit the / boot / extlinux / extlinux.conf file and add or modify the FDT line to specify the device tree file that enables GPIO configuration.

[0050] You need to confirm the correctness of the FDTDIR and FDT lines. FDTDIR points to the directory containing all device tree files, and FDT should point to the main device tree file. In addition, the / boot / dtb / directory should contain the corresponding .dtbo file. After configuration, the result should be the same as Figure 2 Consistent.

[0051] Step 3: Enable the GPIO interface;

[0052] Use the jetson-io.py tool to enable and configure the Jetson Nano's 40-pin GPIO interface. This tool provides a user-friendly graphical interface that allows the user to select and activate specific hardware interfaces, including configuration for CAN communication. Figure 3 ;

[0053] Start the jetson-io.py tool.

[0054] In the tool interface, select “Configure 40-pin expansion header”.

[0055] Select the corresponding configuration to support the MCP251X chip.

[0056] Step 4: Modify the device tree;

[0057] Modify the device tree file to adapt to the hardware configuration of the CAN interface, especially adjust the crystal frequency to ensure compatibility with MCP251X.

[0058] Decompile the device tree binary file (.dtb) into a device tree source file (.dts).

[0059] See Figure 4 , modify the clock-frequency property in the .dts file and change the value from the default 20,000,000Hz to 8,000,000Hz.

[0060] See Figure 5 , disable unnecessary configuration and activate MCP251X support.

[0061] Recompile the modified .dts file back to .dtb format and make sure it is loaded at startup.

[0062] Step 5: Verification and testing;

[0063] Restart Jetson Nano and test it using the CAN tool to verify the functionality of the CAN interface.

[0064] Use tools such as candump and cansend to send and receive CAN messages to check whether the communication is normal.

[0065] Monitor the stability of data transmission and the responsiveness of the system.

Claims

1. A convenient configuration method for the CAN interface of a Jetson series embedded development board, characterized in that: The steps include: Step 1: Configure the device tree on the Jetson Nano development board and enable the CAN function of the 40Pin GPIO pin; Step 2: Use the jetson-io.py tool to activate and configure the 40Pin GPIO pins and select the external hardware MCP251X series chip; Step 3: Modify the device tree file, convert it into a device tree source file, and modify the crystal frequency setting to the correct value to ensure compatibility with the MCP251X chip; Step 4: Recompile the modified device tree source file into a device tree binary file and ensure that the correct device tree is loaded when the system starts, so that Jetson Nano can output CAN signals through the MCP251X chip.

2. According to claim 1, a convenient configuration method for the CAN interface of a Jetson series embedded development board is characterized in that: The crystal oscillator frequency is 8,000,000 Hz.

3. A convenient configuration method for the CAN interface of a Jetson series embedded development board according to claim 1, characterized in that: In the CAN interface convenient configuration method, the extlinux.conf file is used to specify the loading of the modified device tree file to ensure that Jetson Nano uses the correct configuration when it starts.

4. A convenient configuration method for the CAN interface of a Jetson series embedded development board according to claim 1, characterized in that: In the convenient configuration method of the CAN interface, the Jetson Nano development board is the EMMC version, and the operating system is flashed through the Nvidia SDK Manager tool.

5. A convenient configuration method for the CAN interface of a Jetson series embedded development board according to claim 1, characterized in that: In the convenient configuration method of the CAN interface, the validity of the configuration is finally verified, including sending and receiving CAN messages to ensure that the communication between Jetson Nano and the MCP251X chip is normal.

6. A computer program, characterized in that The computer program enables a computer to execute the method according to any one of claims 1 to 5.

7. An electronic device, characterized in that: include: Processor and memory; The memory is used to store a computer program, and the processor is used to execute the computer program stored in the memory, so that the electronic device executes the method as claimed in any one of claims 1 to 5.

8. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 5 is implemented.

9. A chip, characterized in that: include: A processor, configured to call and run a computer program from a memory, so that a device equipped with the chip executes a method as claimed in any one of claims 1 to 5.

10. A computer program product, characterized in that The computer program product comprises a computer storage medium storing a computer program, wherein the computer program comprises instructions executable by at least one processor, and when the instructions are executed by the at least one processor, the method according to any one of claims 1 to 5 is implemented.

Citation Information

Patent Citations

  • Method, device, and system for monitoring an underground asset

    CA3135629A1

  • Multi-dts (Device Tree Source)-file supporting method, compilation device and embedded device

    CN107632828A

  • Implementation method of YOLOV3-based target detection algorithm on embedded equipment

    CN109977953A

  • ARM-based multistage secure operating system implementation method

    CN110348233A

  • Data communication method and system and spiking neural network operation system

    CN114723023A