I find academic articles and books for research and literature reviews.

MCP2200
Python -Schnittstelle zum MCP2200
2
Github Watches
6
Github Forks
9
Github Stars
Drive the MCP2200 with python
MCP2200 is the Microchip USB-Serial transceiver. Datasheet
The USB link is also used to configure the device, and, as a bonus, to easily manage some GPIO and EEPROM on the device.
When connected to a computer, it creates 2 new USB devices
- A USB CDC that's the actual virtual serial port any tool will use to communicate.
- A USB HID, that can be used to personalize and configure the chip.
The MCP2200 is delivered along with a user interface that helps easily configuring it. BUT... it's pure Windows !!
Thanksfully, Microchip delivers this document as well : The fully documented HID protocol
This project implements the microchip specifications at 3 levels :
- The graphical configuration tool
- The USB HID specification
- The API as described in the component's datasheet
Install
git clone https://github.com/cdtx/mcp2200.git
cd mcp2200
pip install -r requirements.txt
python setup install
GUI
Example at USB HID level
from cdtx.mcp2200.device import MCP2200Device
try:
dev = mcp2200Device(autoConnect=True)
except:
sys.exit('Cannot connect the device')
try:
# Set GPIO 0 as output and set it
config = dev.read_all()
# Reset bit0 of IO_bmap
config['IO_bmap'] &= 0xFE
dev.configure(**config)
dev.set_clear_outputs(Set_bmap=0x01, Clear_bmap=0x00)
finally:
mcp2200.disconnects()
Example at API level
from cdtx.mcp2200.api import SimpleIOClass
# Init class and connect device
dev = SimpleIOClass()
dev.InitMCP2200(0x04d8, 0x00df)
assert dev.GetNoOfDevices() == 1
# Set GPIO 0 as output and set it
dev.SelectDevice(0)
assert dev.IsConnected() == True
# Set all pins as outputs
dev.ConfigureIO(0x00)
dev.SetPin(0)
assert dev.ReadPinValue(0) == 1
Problem with permissions ?
1. Quick and dirty solution is to install and run as root
2. Prefer allowing current user to manage USB devices
Add the following rule to file /etc/udev/rules.d/50-myrules.rules (create if necessary)
```
ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="00df", GROUP:="plugdev", MODE="0660"
```
The current user must belong to the __plugdev__ group
```
sudo usermode -a -G plugdev ${USER}
```
[Source](https://askubuntu.com/questions/112568/how-do-i-allow-a-non-default-user-to-use-serial-device-ttyusb0)
相关推荐
Confidential guide on numerology and astrology, based of GG33 Public information
Advanced software engineer GPT that excels through nailing the basics.
Converts Figma frames into front-end code for various mobile frameworks.
Take an adjectivised noun, and create images making it progressively more adjective!
Siri Shortcut Finder – your go-to place for discovering amazing Siri Shortcuts with ease
Entdecken Sie die umfassendste und aktuellste Sammlung von MCP-Servern auf dem Markt. Dieses Repository dient als zentraler Hub und bietet einen umfangreichen Katalog von Open-Source- und Proprietary MCP-Servern mit Funktionen, Dokumentationslinks und Mitwirkenden.
Die All-in-One-Desktop & Docker-AI-Anwendung mit integriertem Lappen, AI-Agenten, No-Code-Agent Builder, MCP-Kompatibilität und vielem mehr.
Ein leistungsstarkes Neovim -Plugin für die Verwaltung von MCP -Servern (Modellkontextprotokoll)
MCP -Server für den Fetch -Webseiteninhalt mit dem Headless -Browser von Dramatikern.
Brücke zwischen Ollama und MCP -Servern und ermöglicht es lokalen LLMs, Modellkontextprotokoll -Tools zu verwenden
Fair-Code-Workflow-Automatisierungsplattform mit nativen KI-Funktionen. Kombinieren Sie visuelles Gebäude mit benutzerdefiniertem Code, SelbstHost oder Cloud, 400+ Integrationen.
🧑🚀 全世界最好的 llm 资料总结(数据处理、模型训练、模型部署、 O1 模型、 MCP 、小语言模型、视觉语言模型) | Zusammenfassung der weltbesten LLM -Ressourcen.
Reviews

user_1ZnlJ6UD
The mcp2200 by cdtx is a phenomenal tool for efficient USB-to-serial conversion. I appreciate its reliable functionality and seamless integration in my projects. The detailed documentation on GitHub makes it easy to get started and utilize its full potential. If you need a solid converter, this is a must-have!