Agent skill

industrial

Industrial communication protocols for Zephyr RTOS. Covers Modbus RTU (serial), Modbus TCP (Ethernet/Wi-Fi), and CANopen basics. Trigger when building factory automation controllers, industrial sensors, or medical equipment interfaces.

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/industrial

SKILL.md

Zephyr Industrial Protocols

Build robust, industry-standard communication systems using Zephyr's modular industrial protocol stacks.

Core Workflows

1. Modbus RTU (Serial)

Implement serial-based industrial communication for meters, PLCs, and sensors.

  • Reference: modbus_rtu.md
  • Key Tools: CONFIG_MODBUS, RS-485 DE/RE handling, Register Mapping.

2. Modbus TCP

Bridge industrial data over standard Ethernet or Wi-Fi networks.

  • Reference: modbus_tcp.md
  • Key Tools: Port 502, TCP/IP networking, Client/Server patterns.

3. CANopen Basics

Integrate with complex automation networks using the CANopenNode stack.

  • Reference: canopen_basics.md
  • Key Tools: Object Dictionary (OD), PDO/SDO, Network Management (NMT).

Quick Start (Modbus RTU Server)

kconfig
# prj.conf
CONFIG_MODBUS=y
CONFIG_MODBUS_SERIAL=y
c
// Initialize a server on a serial device
const struct device *dev = DEVICE_DT_GET(DT_CHOSEN(zephyr_modbus_serial));
struct modbus_iface_param param = {
    .mode = MODBUS_MODE_RTU,
    .server = { .node_addr = 1, .cb = &my_callbacks },
    .serial = { .baud = 115200, .parity = UART_CFG_PARITY_NONE },
};
modbus_init_server(dev, param);

Professional Patterns (Reliability & Safety)

  • RS-485 Hardware Handling: Always use the devicetree uart-rs485 property to handle transceiver direction signals automatically at the driver level.
  • Isolated Communication: Use galvanically isolated transceivers for both serial and CAN lines in factory environments to prevent damage from ground loops.
  • Watchdog Integration: In industrial control, always pair your communication loops with the watchdog_reliability pattern (see specialized skill) to ensure the system enters a fail-safe state on protocol lockup.

Automation Tools

  • modbus_register_lint.py: Validate register map CSV files for duplicate addresses and overlaps.

Examples & Templates

  • modbus_register_map_template.csv: Starter register allocation sheet for Modbus projects.

Validation Checklist

  • Modbus RTU request/response exchange succeeds against a known test slave/master.
  • Modbus TCP endpoint responds on port 502 with correct register mappings.
  • CANopen node transitions through expected NMT states during startup.
  • Communication faults trigger safe retry or watchdog-protected recovery behavior.

Resources

  • References:
    • modbus_rtu.md: Serial Modbus master/slave setup.
    • modbus_tcp.md: Ethernet Modbus client/server patterns.
    • canopen_basics.md: Object Dictionary and PDO mapping.
  • Scripts:
    • modbus_register_lint.py: Register-map consistency checker.
  • Assets:
    • modbus_register_map_template.csv: Register planning template.

Expand your agent's capabilities with these related and highly-rated skills.

Didn't find tool you were looking for?

Be as detailed as possible for better results