Anki Remote Driver

AnkiWeb addon 306050281

Control Anki reviews with wireless remotes, touchpads, or clickers, supporting HID, UDP, keyboard input, gestures, button mapping, auto-reconnect, and configuration.
AI-generated summary; may contain mistakes.

review-flowshortcutsaccessibility

Open on AnkiWeb GitHub Ask about alternatives

AnkiWeb

Rating
0 (๐Ÿ‘ 0 ยท ๐Ÿ‘Ž 0)
Updated
2026-02-09
Anki versions
2.1.50~
Description language
en

Maintenance

stale

  • Last update or commit was 234 days before the snapshot (2026-02-09).

Will it work on my Anki?

Version branches
Min AnkiMax AnkiUpdated
2.1.12.1.50+2026-02-09
History across monthly snapshots

Loadingโ€ฆ

Similar addons

Memra

Provides zero-configuration Bluetooth remote control for Anki, with default review buttons, visual guide, optional remapping, background input blocking, and grading only after answers appear.

review-flowshortcutsaccessibilityservice-client

Rating 0 ๐Ÿ‘ 0 ยท ๐Ÿ‘Ž 0 Anki 2.1.66~ Updated 2026-07-28
Gamepad/Controller Mapper

Enables native gamepad control in Anki with auto-switching profiles, modifier layers, press-to-bind shortcuts, and analog-stick scrolling, without external mapping software.

shortcutsaccessibility

Rating 3 ๐Ÿ‘ 3 ยท ๐Ÿ‘Ž 0 Anki 2.1.1~ Updated 2026-09-24

README

Remote Driver for Anki

Control Anki flashcard reviews with a wireless remote, touchpad, or presentation clicker.

Features

  • โœ… Auto-reconnect: Plug/unplug your remote anytime without restarting Anki
  • โœ… Gesture support: Use swipe gestures on touchpad remotes
  • โœ… Button mapping: Configure discrete button presses
  • โœ… Multiple input methods: HID, UDP network, or keyboard
  • โœ… Silent operation: No logging by default, runs completely in the background
  • โœ… Debug mode: Enable detailed logging only when troubleshooting

Supported Devices

  • Touchpad presentation remotes (tested with VID 0x0e05, PID 0x0a00)
  • USB/Bluetooth HID remotes
  • Keyboard-style presentation clickers
  • Phone apps that can send UDP packets

Installation

  1. Install hidapi Python package:

    • Tools โ†’ Add-ons โ†’ Get Add-ons
    • Or manually install the hidapi package
  2. Install this add-on from AnkiWeb or manually:

    • https://ankiweb.net/shared/info/306050281?cb=1770654300015
  3. macOS users: Grant Input Monitoring permission:

    • System Settings โ†’ Privacy & Security โ†’ Input Monitoring
    • Enable Anki
    • Restart Anki

Quick Start

First-Time Setup

  1. Find your remote's device IDs:

    • Tools โ†’ Add-ons โ†’ Remote Driver โ†’ Config
    • Set "hid_scan_mode": true
    • Set "debug": true
    • Restart Anki
    • Press buttons on your remote
    • Check remote_driver.log in the addon folder for lines like:
      Trying device #X: vid=0x0e05 pid=0x0a00 path=...
      ๐Ÿ“ก DATA RECEIVED: [6, 7, 239, 3, 160, 6]
      
  2. Configure your remote:

    • Copy the vendor_id and product_id (in decimal) to the config
    • Set "hid_scan_mode": false
    • Set "debug": false
    • Restart Anki
  3. Test it:

    • Start a flashcard review
    • Press buttons or swipe on your remote
    • It should control the cards!

Default Controls

For Touchpad Remotes (Gesture Mode)

  • Center button press: Flip card (show answer)
  • Swipe LEFT: Again (button 1)
  • Swipe UP: Hard (button 2)
  • Swipe RIGHT: Good (button 3)
  • Swipe DOWN: Easy (button 4)

Customization

All controls can be customized via: Tools โ†’ Add-ons โ†’ Remote Driver โ†’ Config

See config.md for detailed configuration options.

Troubleshooting

Remote not connecting

  1. Enable debug mode in config: "debug": true
  2. Restart Anki
  3. Check remote_driver.log in the addon folder
  4. Look for connection attempt logs

macOS: "open failed" error

Grant Input Monitoring permission:

  • System Settings โ†’ Privacy & Security โ†’ Input Monitoring โ†’ Enable Anki
  • Restart your Mac (not just Anki)

Buttons not working

  1. Enable "hid_scan_mode": true and "debug": true
  2. Restart Anki
  3. Press each button multiple times
  4. Check remote_driver.log for the HID sequences
  5. Copy the sequences to your config as seq_flip, seq_again, etc.

Gestures too sensitive/insensitive

Adjust gesture_threshold in the config:

  • Increase (e.g., 500) if accidental triggers occur
  • Decrease (e.g., 200) if swipes don't register

Configuration Examples

Example 1: Keyboard-style remote

{
    "use_hid": false,
    "use_keyboard": true,
    "key_actions": {
        "Key_Space": "flip",
        "Key_1": "again",
        "Key_2": "hard",
        "Key_3": "good",
        "Key_4": "easy"
    }
}

Example 2: Phone app via UDP

{
    "use_hid": false,
    "use_udp": true,
    "udp_host": "0.0.0.0",
    "udp_port": 50505
}

Configure your phone app to send hex strings like "06 07 ef 03 a0 06" to your computer's IP on port 50505.

Support

  • Report issues on the GitHub repository
  • Check the remote_driver.log file (when debug is enabled) for diagnostic info
  • Include your Anki version, OS, and remote model when reporting issues

License

MIT License - Free to use and modify

Credits

Created for Anki users who want hands-free flashcard review.

Anki-Remote-Driver