From zephyr-skills
Guides multicore development in Zephyr RTOS with SMP configuration, AMP using OpenAMP/RPMsg, IPC patterns, and LLEXT for multi-core SoCs.
npx claudepluginhub beriberikix/zephyr-agent-skills --plugin zephyr-moduleThis skill uses the workspace's default tool permissions.
Leverage multiple CPU cores to increase performance, isolate critical tasks, and integrate heterogeneous systems.
Guides implementation of Zephyr RTOS kernel services: Zbus pub/sub for inter-thread communication, SMF for state machines, work queues for background tasks, and Settings for persistence. For modular event-driven embedded apps.
Delivers complete compilable firmware and peripheral drivers (I²C/SPI/UART/ADC/DMA) for ARM Cortex-M MCUs (Teensy, STM32, nRF52, SAMD) with architecture and concurrency guidance.
Develops firmware for microcontrollers like STM32 and ESP32, implements FreeRTOS RTOS applications, configures peripherals, writes interrupt handlers and DMA transfers, optimizes power consumption in real-time systems.
Share bugs, ideas, or general feedback.
Leverage multiple CPU cores to increase performance, isolate critical tasks, and integrate heterogeneous systems.
Run the Zephyr kernel and your threads across multiple identical cores.
CONFIG_SMP, k_spinlock, Thread Affinity.Communicate between heterogeneous cores (e.g., A-series and M-series) using standard protocols.
CONFIG_OPENAMP, message vrings, Resource Tables.Implement efficient data exchange between cores using high-level services or low-level mailboxes.
IPC Service, IPM drivers, Shared Memory.Dynamically load and run binary modules at runtime without a full firmware update.
CONFIG_LLEXT, dynamic ELF loading, Symbol Export.# Enable SMP for dual-core SoCs
CONFIG_SMP=y
CONFIG_MP_NUM_CPUS=2
// Using spinlocks for cross-core sync
struct k_spinlock lock;
k_spinlock_key_t key = k_spin_lock(&lock);
// ... critical section ...
k_spin_unlock(&lock, key);
prj.conf.smp_configuration.md: Configuration and spinlocks.openamp_rpmsg.md: AMP and Linux interoperability.ipc_patterns.md: Mailboxes and high-level IPC services.llext_basics.md: Dynamic code loading.smp_config_check.py: SMP config consistency checker.rpmsg_channel_contract.md: RPMsg interface contract template.