1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- cp210x-program
- ==============
- ATTENTION: THIS VERSION OF cp210x-program IS NOT FULLY TESTED. IT MAY RENDER
- YOUR CP210x USELESS OR DESTROY IT.
- Be aware that the current version is only tested on CP2102.
- The goal of this library is to provide access to the EEPROM of an Silabs CP210x
- under Linux.
- The CP210x is an USB-to-serial chip used in a lot of USB devices (similar to
- FTDIs and PL2303). The CP210x has a EEPROM on the chip which can be programmed
- via USB. Silabs provides already a library and gui programm to program this
- EEPROM, but only for windows.
- This project uses results from monitoring the USB bus when the windows library
- programms an CP210x. The windows library was not disassembled for this protocol
- analysis.
- When the programm is finished, a later goal would be to provide a library which
- can be used to access further functions of the CP210x like the general IO pins
- of the CP2103. The goal is not to provide an tty driver, such driver exists
- already for linux and BSD.
- Version: 1.0
- Author: Johannes Hölzl <johannes.hoelzl@gmx.de>
- Maintainer: Petr Tesařík <cp210x@tesarici.cz>
- Dependencies
- ------------
- * Python >= 2.4
- * PyUSB
-
- Since libusb is available on most Linux, Mac OS X and FreeBSD cp210x-program
- should run flawlessly on these platforms. Currently it is only tested on
- Linux 2.6 (Ubuntu).
- If cp210x-program should run as non-root user, add the udev rule found in
- doc/45-cp210x-programming.rules to /etc/udev/rules.d. When devices with already
- programmed IDs are reprogrammed at this IDs to 45-cp210x-programming.rules.
- Usage
- -----
- Read EEPROM content into hexfile:
- $ cp210x-program --read-cp210x -F eeprom-content.hex
- Show EEPROM content from device 002 on bus 001:
- $ cp210x-program --read-cp210x -m 001/002
- Write some data to device with vendor id 0x10C4 and product id 0xEA62:
- $ cp210x-program --write-cp210x -m 10C4:EA62 \
- --set-product-string="Product String" \
- --set-max-power=100 \
- --set-bus-powered=no
- TODO
- ----
- * Test on other than CP2102
- * Implement CP2103 GIOP settings
-
- * Implement GUI
-
- Links
- -----
- * CP210x Product page on Silicon Labs:
- http://www.silabs.com/tgwWebApp/public/web_content/products/Microcontrollers/Interface/en/interface.htm
-
- * AN114 Customization Guide:
- http://www.silabs.com/public/documents/tpub_doc/anote/Microcontrollers/Interface/en/an144.pdf
- http://www.silabs.com/public/documents/software_doc/othersoftware/Microcontrollers/Interface/en/an144sw.zip
-
- * AN205 CP210x Baudrate Guide:
- http://www.silabs.com/public/documents/tpub_doc/anote/Microcontrollers/Interface/en/an205.pdf
- http://www.silabs.com/public/documents/software_doc/othersoftware/Microcontrollers/en/AN205SW.zip
-
- * AN223 Port Configuration and GPIO for CP210x
- http://www.silabs.com/public/documents/tpub_doc/anote/Microcontrollers/Interface/en/an223.pdf
- http://www.silabs.com/public/documents/software_doc/othersoftware/Microcontrollers/Interface/en/AN223SW.zip
- License
- -------
- The python package 'cp210x' and the python script 'cp210x-program' are provided
- under the terms of the GNU LGPL. See LICENSE.
|