Skip to content
cccskills
FreePublished on GitHub

hardware-io

Hardware interfacing and peripheral management for Zephyr RTOS. Covers the sensor subsystem (channels, triggers, fetch/get), pin control (Pinctrl) and multiplexing, GPIO management using Devicetree specs, and SoC-level hardware configurations. Trigger when adding new hardware components, configuring pinmux, or developing sensor-based applications.

The English summary is being prepared. Showing the original description.

See how to install

Files included (7)

  • SKILL.md3.0 KB
  • assets/sensor_poll_template.c476 B
  • references/pinctrl_gpio.md2.1 KB
  • references/sensors.md1.9 KB
  • references/soc_config.md1.5 KB
  • scripts/gpio_alias_check.py1.8 KB
  • skill-meta.yaml622 B

SKILL.md (original)

Review the instructions the agent will receive before you install.

Zephyr Hardware I/O

Interface with the physical world using Zephyr's standardized driver models and hardware abstraction layers.

Core Workflows

1. Sensor Subsystem

Interact with various sensors using a uniform API for data fetching and decoding.

  • Reference: sensors.md
  • Key Tools: sensor_sample_fetch, sensor_channel_get, struct sensor_value.

2. Pinctrl & GPIO

Manage pin multiplexing, electrical configuration, and basic digital input/output.

  • Reference: pinctrl_gpio.md
  • Key Tools: pinctrl, gpio_dt_spec, GPIO_DT_SPEC_GET.

3. SoC Configuration

Tune chip-level parameters and manage hardware across multiple board variants.

  • Reference: soc_config.md
  • Key Tools: Kconfig, soc_common.dtsi, SoC-level overlays.

Quick Start (Sensor Polling)

#include <zephyr/drivers/sensor.h>

const struct device *temp_sensor = DEVICE_DT_GET(DT_ALIAS(ambient_temp0));
struct sensor_value val;

void poll_sensor(void) {
    if (sensor_sample_fetch(temp_sensor) == 0) {
        sensor_channel_get(temp_sensor, SENSOR_CHAN_AMBIENT_TEMP, &val);
    }
}

Professional Patterns (Hardware Engineering)

  • Safe GPIO: Always use gpio_dt_spec to ensure polarity and pin number are automatically handled by the driver.
  • Background Sampling: Never poll sensors in high-priority threads; use a background work queue. See kernel-services for work-queue patterns.
  • Deferred Pinctrl: Define pin states in a shared .dtsi to simplify multi-revision hardware support.

Automation Tools

Examples & Templates

Validation Checklist

  • Sensor device nodes resolve correctly and DEVICE_DT_GET(...) targets are ready at runtime.
  • GPIO and pinctrl states match the intended board schematic and polarity rules.
  • Sensor sampling path returns stable values with expected units/scaling.
  • Background acquisition does not block high-priority or interrupt-critical code paths.

Resources

  • References:
    • sensors.md: Reading data, channels, and triggers.
    • pinctrl_gpio.md: Pin multiplexing and GPIO specs.
    • soc_config.md: Multi-variant SoC configuration.
  • Scripts:
    • gpio_alias_check.py: Alias duplication checker for DTS/overlay sets.
  • Assets:
    • sensor_poll_template.c: Polling loop starter template.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Custom board bringup for Zephyr RTOS using Hardware Model v2 (HWMv2). Covers directory structure, board.yml metadata, core configuration files (Kconfig, defconfig, CMake), and revision management. Trigger when creating new board definitions or porting Zephyr to custom hardware.

The English summary is being prepared. Showing the original description.

beriberikix/zephyr-agent-skills71Updated May 19, 2026

Build system management for Zephyr RTOS. Covers West workspace initialization, manifest management, Sysbuild multi-image builds, Kconfig symbols, and CMake integration. Trigger when setting up workspaces, configuring builds, or troubleshooting build-time errors.

The English summary is being prepared. Showing the original description.

beriberikix/zephyr-agent-skills71Updated May 19, 2026

Bluetooth Low Energy (BLE) integration for Zephyr RTOS. Covers GATT Services/Characteristics, GAP advertising, connection parameters, power optimization strategies, and the professional Send-When-Idle design pattern. Trigger when adding BLE connectivity, optimizing battery life for wireless devices, or implementing custom GATT profiles.

The English summary is being prepared. Showing the original description.

beriberikix/zephyr-agent-skills71Updated May 19, 2026

IP networking fundamentals for Zephyr RTOS. Covers IoT protocol selection (LwM2M, CoAP, MQTT), IP stack configuration and trimming (IPv4/IPv6, UDP/TCP), and professional SDK integration as Zephyr modules using West manifests. Trigger when building cloud-connected applications, optimizing network memory usage, or integrating external cloud SDKs.

The English summary is being prepared. Showing the original description.

beriberikix/zephyr-agent-skills71Updated May 19, 2026

USB and CAN connectivity for Zephyr RTOS. Covers USB device stack configuration (CDC ACM, HID, MSC), CAN controller integration, and professional USB-to-CAN adapter patterns including buffering and protocol packetization. Trigger when adding USB interfaces, implementing CAN bus communication, or building hardware diagnostic tools.

The English summary is being prepared. Showing the original description.

beriberikix/zephyr-agent-skills71Updated May 19, 2026

Devicetree management for Zephyr RTOS. Covers syntax, bindings, overlays, Hardware Model v2 (HWMv2), and advanced node/property deletion patterns. Trigger when defining hardware topology, creating overlays, or mapping pins and peripherals.

The English summary is being prepared. Showing the original description.

beriberikix/zephyr-agent-skills71Updated May 19, 2026

See all skills by beriberikix

Report a problem with this skill