Skip to content
Development
Skill

/embedded-timing-libs

Use when integrating, porting, configuring, or debugging embedded software timer libraries such as MultiTimer, timeout schedulers, or tick-based callback timers

From plugin
aix-skills
3876 skills

Claude Code

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

SKILL.md

embedded-timing-libs.SKILL.md
name: embedded-timing-libs
description: Use when integrating, porting, configuring, or debugging embedded software timer libraries such as MultiTimer, timeout schedulers, or tick-based callback timers

Embedded Timing Libs

Overview

Use this skill for lightweight software timer libraries such as MultiTimer. The agent should confirm tick source, callback context, time units, wraparound behavior, and scheduler frequency before relying on timer callbacks.

When To Use

Use this skill when:

  • The user wants to add or debug MultiTimer, software timers, timeout lists, periodic callbacks, or one-shot timers.
  • Timers drift, fire too early/late, stop firing, fire repeatedly, or break across tick overflow.

Do not use this skill for hardware PWM/timer peripheral bring-up. Use `embedded-peripheral-bringup` for register-level timer issues.

First Questions

Ask for:

  • Timer library and target runtime.
  • Tick source and frequency.
  • Callback context: main loop, RTOS task, ISR, or scheduler hook.
  • Time units used by the library and application.
  • Number of timers and longest expected uptime.
  • Whether callbacks may start/stop other timers.

Integration Checklist

1. Confirm tick monotonicity. Timer logic needs a stable increasing timebase or explicit wraparound handling.

1. Match units. Milliseconds, ticks, microseconds, and RTOS ticks must not be mixed silently.

1. Define callback context. Timer callbacks must not block if they run in ISR or scheduler critical context.

1. Test one-shot and periodic behavior. Verify start, stop, restart, and callback ordering.

1. Test wraparound. Use simulated ticks or shortened counters to prove overflow behavior.

Common Failures

  • Tick function returns seconds while timer expects milliseconds.
  • Callback blocks in interrupt context.
  • Timer list is modified while iterating without protection.
  • Drift accumulates because periodic timers restart from callback time instead of scheduled time.
  • Wraparound breaks after long uptime.

Verification

Before claiming timer integration works:

  • State tick source, frequency, unit, callback context, and protection strategy.
  • Confirm one-shot, periodic, cancel, restart, and wraparound behavior.
  • Confirm callback execution time is acceptable.
  • Confirm timer operations are safe from ISR/task contexts in use.

Example

User:

MultiTimer 定时回调偶尔不准。

Agent:

1. Asks for tick source, units, callback context, and scheduling frequency. 1. Checks unit conversion and whether callbacks block. 1. Tests periodic drift and tick wraparound with a small counter.

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.

skills10d309k
@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…

react1d252k
@facebook@facebookInstall Skill

Questions about embedded-timing-libs.

Which coding agents can use embedded-timing-libs?
embedded-timing-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.