UNIHIKER Expansion Servo Control

SkillDev tools

Use this skill when the user asks to set the angle of a 180° servo or set the direction/speed of a 360° servo on a DFRobot UNIHIKER Expansion board (SKU: DFR1216). Chinese name is 行空板扩展板.

Use UNIHIKER Expansion Servo Control in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add UNIHIKER Expansion Servo Control and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use the UNIHIKER Expansion Servo Control skill

Details

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

UNIHIKER Expansion Servo ControlStart free
About this skill

ESP-Claw Skills Lab

What this skill tells your AI

The instructions your AI receives, as published by espressif/esp-claw-skills-lab in skills/unihiker_expansion_servo_control/SKILL.md and read by Ahel’s review.

Use this skill when the user asks to set the angle of a 180° servo or set the direction/speed of a 360° servo on a DFRobot UNIHIKER Expansion board (SKU: DFR1216). Chinese name is 行空板扩展板.

Run exactly one bundled Lua script with lua_run_script.

If script execution returns an error, report that error directly to the user. Do not retry with changed arguments in the same turn unless the user explicitly asks.

Script Args Schema

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": ["angle", "servo360"]
    },
    "servo": {
      "type": "integer",
      "minimum": 0,
      "maximum": 5
    },
    "angle": {
      "type": "integer",
      "minimum": 0,
      "maximum": 180
    },
    "direction": {
      "type": "string",
      "enum": ["forward", "backward", "stop"]
    },
    "speed": {
      "type": "integer",
      "minimum": 0,
      "maximum": 100
    },
    "duration_ms": {
      "type": "integer",
      "minimum": 0
    },
    "i2c_port": {
      "type": "integer",
      "minimum": 0,
      "maximum": 1
    },
    "sda": {
      "type": "integer",
      "minimum": 0,
      "maximum": 63
    },
    "scl": {
      "type": "integer",
      "minimum": 0,
      "maximum": 63
    },
    "i2c_freq_hz": {
      "type": "integer",
      "minimum": 10000,
      "maximum": 1000000
    },
    "addr": {
      "type": "integer",
      "minimum": 8,
      "maximum": 119
    }
  },
  "required": ["mode", "servo"]
}

Tool Call Inputs

Set a 180° servo to 90°:

{"path":"{CUR_SKILL_DIR}/scripts/set_servo.lua","args":{"mode":"angle","servo":0,"angle":90}}

Set a 360° servo to forward at speed 50:

{"path":"{CUR_SKILL_DIR}/scripts/set_servo.lua","args":{"mode":"servo360","servo":1,"direction":"forward","speed":50}}

Stop a 360° servo:

{"path":"{CUR_SKILL_DIR}/scripts/set_servo.lua","args":{"mode":"servo360","servo":1,"direction":"stop","speed":0}}

Run a 360° servo for 2 seconds and then stop:

{"path":"{CUR_SKILL_DIR}/scripts/set_servo.lua","args":{"mode":"servo360","servo":2,"direction":"backward","speed":30,"duration_ms":2000}}

Recommended Flow

  1. Confirm the expansion board is connected to the expected I2C bus.
  2. Use the default UNIHIKER expansion board I2C settings unless the user explicitly provides custom wiring or address values.
  3. Choose mode = "angle" for 180° servos and mode = "servo360" for 360° servos.
  4. Run {CUR_SKILL_DIR}/scripts/set_servo.lua with the resolved servo number and motion parameters.
  5. Report the script output directly to the user, including any error.

Signals

GitHub stars
34
Forks
17
Last commit
Sep 2026
Advanced
Item type
skill
Key
unihiker-expansion-servo-control
Source
github.com/espressif/esp-claw-skills-lab