Introduction
Purpose of This Document
This manual describes the MicroPeckerX CAN FD Application Development Library for Linux.
The library enables you to develop Linux applications that monitor and simulate CAN and CAN FD communication by using MicroPeckerX.
How to Use This Manual
Each chapter explains the definitions provided by this product as well as the behavior of its APIs. If you have any questions, refer to the FAQ or contact us. Technical inquiries about the MicroPeckerX CAN FD Application Development Library for Windows require a separate paid support agreement.
Terminology
The following terms are used throughout this manual.
| Term | Description |
|---|---|
| CAN | Abbreviation for Controller Area Network. A communication protocol developed for in-vehicle networks, standardized as ISO 11898. |
| CAN FD | Abbreviation for CAN with Flexible Data-rate. An extension of CAN that enables higher-speed, higher-volume data transfer, standardized as ISO 11898-1:2015. |
| API | Abbreviation for Application Programming Interface. Specifications and interfaces used to interact with software and devices. |
| Monitoring | Monitoring and logging communication data in real time. In MicroPeckerX, this refers to monitoring communication data on CAN/CAN FD buses. |
| Simulation | Reproducing or testing communication by emulating actual devices or vehicles. MicroPeckerX can transmit arbitrary CAN/CAN FD frames to run tests. |
| Log replay | Replaying previously captured communication logs on the bus for testing or verification. |
| Frame | A single unit of communication data that consists of an ID, payload, and other fields in CAN and CAN FD. |
| Channel (CH) | Physical communication ports provided by MicroPeckerX (such as CH1 and CH2). |
| API mode | One of the log acquisition methods. The application periodically calls an API function to retrieve log data. |
| Callback mode | One of the log acquisition methods. Log data is passed to a callback function automatically at regular intervals. |
| Baud rate | Unit of communication speed that indicates the number of bits transmitted per second (bps). Typical CAN rates include 500 kbps and 1 Mbps. |
| Sample point | Timing at which a data bit is read. It affects communication quality and helps reduce errors. |
| Termination resistor | A 120 Ω resistor attached to both ends of a CAN bus. It is required to prevent signal reflections. |
| Bit rate switch (BRS) | A CAN FD feature that increases the transfer rate for the data field only. |
| FD format (FDF) | A bit used to identify CAN FD frames. |
| Error flag | Indicator that shows whether a frame or communication state has encountered an error. |
| Buffer overrun | State in which the buffer is full and cannot store additional data, causing data loss. |
| Remote transmission request (RTR) | Frame type in CAN that requests data without transmitting a payload. It differs from data frames. |
| ID format (IDE) | Identifies the format of the CAN ID. Either a standard ID (11 bits) or an extended ID (29 bits). |
| Data length code (DLC) | Four-bit value that indicates the length of the data field within a frame. |
| Arbitration baud rate | Transfer speed used in the arbitration phase, where the identifier and similar fields are sent. It is lower than the data rate in CAN FD. |
| Data baud rate | Transfer speed used in the data field. Configurable only for CAN FD. |
| Slot | Logical unit used to configure transmission data and trigger conditions. Each slot can have its own frame settings. |
| Trigger | A signal or event that initiates transmission when specific conditions are met. |
Notes on Using This Manual
- Reproduction, modification, or translation of this manual, in whole or in part, without the author's permission is prohibited unless allowed by copyright law.
- The information and images in this manual represent the state at the time of writing and may differ from the latest product or website content (such as wording or design).
- Company names and product names mentioned in this manual are trademarks or registered trademarks of their respective owners.
Operating Environment
The operating environment for this product is listed below.
| Item | Details |
|---|---|
| Development language | GNU C++ |
| PC | IBM PC/AT-compatible system running Linux |
| Supported CPU architectures | ・x86 (64-bit/32-bit)[*1] ・Arm v7-A, v8-A (Cortex-A53, Cortex-A57) |
| Verified environments | ・Ubuntu 18.04/20.04 (64-bit) x86 ・Raspbian 32-bit (Raspberry Pi 3 Model B) |
| Hard disk | 10 GB or more of free space |
| Memory | 8 GB or more recommended |
| USB port | USB 2.0 (Hi-Speed)[*2] |
*1: Operation in virtualized environments is not supported.
*2: When connecting MicroPeckerX through an external USB hub, use a self-powered hub and ensure it is supplied with external power before connecting.
Using a bus-powered USB hub may prevent MicroPeckerX from operating or cause unstable behavior.