Skip to content
Development
Skill

/embedded-buffer-queue-libs

Use when integrating, porting, configuring, or debugging embedded ring buffers, circular buffers, FIFO queues, Ring-Buffer, or QueueForMcu libraries

From plugin
aix-skills
3876 skills

Claude Code

$ npx -y skills add easyzoom/aix-skills --skill embedded-buffer-queue-libs --agent claude-code

SKILL.md

embedded-buffer-queue-libs.SKILL.md
name: embedded-buffer-queue-libs
description: Use when integrating, porting, configuring, or debugging embedded ring buffers, circular buffers, FIFO queues, Ring-Buffer, or QueueForMcu libraries

Embedded Buffer Queue Libs

Overview

Use this skill for embedded ring buffers and lightweight queues. The core decision is ownership and concurrency: single producer/consumer, ISR-to-task, task-to-task, DMA-to-task, or multi-producer use.

When To Use

Use this skill when:

  • The user wants to integrate or debug Ring-Buffer, QueueForMcu, circular buffers, FIFOs, UART RX buffers, log queues, or event queues.
  • The issue involves overflow, data loss, race conditions, wraparound, off-by-one capacity, ISR safety, or DMA buffer handoff.

Do not use this skill for RTOS-native queues unless the issue is about wrapping a custom buffer around them.

First Questions

Ask for:

  • Buffer/queue library and intended data type.
  • Producer and consumer contexts: ISR, DMA, task, main loop, shell, or logger.
  • Required behavior on full/empty: drop, overwrite oldest, block, error, or backpressure.
  • Element size, capacity, maximum burst, and latency budget.
  • Whether operations must be lock-free or protected by critical sections.

Integration Checklist

1. Define ownership. Specify exactly who writes, who reads, and whether there can be multiple producers or consumers.

1. Define full/empty semantics. Do not leave overwrite/drop/block behavior implicit.

1. Check capacity math. Many ring buffers hold `N-1` items to distinguish full from empty.

1. Protect concurrent access. Use interrupt masking, atomics, mutexes, or single-producer/single-consumer rules as appropriate.

1. Verify wraparound. Test writes and reads across the end of the buffer.

1. Add telemetry. Track high-water mark, overflow count, drop count, or queue full events.

Common Failures

  • Race between ISR producer and task consumer.
  • Off-by-one capacity causes one byte or one element to disappear.
  • DMA writes into a buffer while CPU reads stale cached data.
  • Full buffer silently overwrites critical data.
  • Queue stores pointers to stack objects that go out of scope.

Verification

Before claiming buffer/queue works:

  • State producer/consumer contexts and protection strategy.
  • Confirm full, empty, wraparound, and overflow behavior.
  • Confirm maximum burst fits capacity or drops are counted intentionally.
  • For DMA/cache systems, state cache maintenance or memory placement.

Example

User:

UART 中断收数据用 ring buffer,偶尔丢字节。

Agent:

1. Asks for producer/consumer contexts, baud, buffer size, overflow policy, and critical sections. 1. Checks N versus N-1 capacity and ISR/task race. 1. Adds overflow counters and tests burst input across wraparound.

Read more
@easyzoom
Ships withaix-skills

AIX Skills is a public collection of Agent Skills, templates, and references for building repeatable AI workflows.

Stars on GitHub

Momentum

stars in total
38
Star history of easyzoom/aix-skills on GitHub, a chart by star-history.com

Other skills on aix-skills.

8051-mcu-debug

8051-mcu-debug

Use when debugging 8051-compatible microcontrollers, 51 MCU firmware, STC download issues, Keil C51 projects, interrupts, timers,…

@easyzoom@easyzoomInstall Skill
avem-integration

avem-integration

Use when integrating, evaluating, configuring, or debugging Avem embedded C framework modules, event-driven components, drivers,…

@easyzoom@easyzoomInstall Skill
ble-gatt-integration

ble-gatt-integration

Use when integrating, designing, or debugging BLE GATT services, characteristics, descriptors, MTU, notifications, indications,…

@easyzoom@easyzoomInstall Skill
bootloader-debug

bootloader-debug

Use when debugging embedded bootloaders, application jumps, vector table offsets, firmware upgrade flow, OTA state, image…

@easyzoom@easyzoomInstall Skill
canbus-integration

canbus-integration

Use when integrating, porting, configuring, or debugging CAN bus libraries, CANBus-Triple, MCP2515, CAN frames, bit timing,…

@easyzoom@easyzoomInstall Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills11d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc12d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react2d252k
@facebook@facebookInstall Skill

Questions about embedded-buffer-queue-libs.

Which coding agents can use embedded-buffer-queue-libs?
embedded-buffer-queue-libs installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.