Pymcp2221
A python driver for the Microchip MCP2221/MCP2221A USB 2.0 to I2C/UART protocol converters
Install / Use
/learn @vpaeder/Pymcp2221Quality Score
Category
Development & EngineeringSupported Platforms
README
pymcp2221
This is a python driver for the Microchip MCP2221/MCP2221A USB 2.0 to I2C/UART protocol converters (manufacturer's page).
First and foremost, there are python packages for the same chip available here and here. If you use them and are satisfied, you probably won't find improvements in my package. If you're missing some features however, my code is meant to expose every chip feature described in the datasheet in a systematic manner, for python 3.2+.
Implemented features
- Status/Set Parameters (0x10) - ok
- Read Flash Data (0xB0) - ok
- Write Flash Data (0xB1) - ok
- Send Flash Access Password (0xB2) - ok
- I2C Write Data (0x90) - ok
- I2C Write Data Repeated Start (0x92) - ok
- I2C Write Data No Stop (0x94) - ok
- I2C Read Data (0x91/0x40) - ok
- I2C Read Data Repeated Start (0x93/0x40) - ok
- Set GPIO Output Values (0x50) - ok
- Get GPIO Values (0x51) - ok
- Set SRAM Settings (0x60) - ok, except GPIO directions/values through SRAM (duplicate with 0x50)
- Get SRAM Settings (0x61) - ok, except GPIO directions/values through SRAM (duplicate with 0x51)
- Reset Chip (0x70) - ok
Every feature marked ok is implemented, but some of them, like I2C, haven't been tested in real conditions.
Requirements
Setup
From command line, use:
python setup.py install
or for Linux/OSX:
sudo python setup.py install
On Linux, to access your devices without root privileges, you need to set specific udev rules, as explained in hidapi documentation.
Examples
See examples folder.
Tests
The tests folder contains unit tests for most of the aspects of this package. To run them, use:
python -m unittest
API
You can find docs in the docs folder (generated from python docstrings). Alternatively, you can rely on python docstrings
- either from the command line, use pydoc:
pydoc mcp2221
- or from within python:
import mcp2221; help(mcp2221)
Related Skills
node-connect
350.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
claude-opus-4-5-migration
109.9kMigrate prompts and code from Claude Sonnet 4.0, Sonnet 4.5, or Opus 4.1 to Opus 4.5
frontend-design
109.9kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
model-usage
350.1kUse CodexBar CLI local cost usage to summarize per-model usage for Codex or Claude, including the current (most recent) model or a full model breakdown. Trigger when asked for model-level usage/cost data from codexbar, or when you need a scriptable per-model summary from codexbar cost JSON.
