diff options
Diffstat (limited to 'contrib/cp210x-program/doc/index.html')
-rw-r--r-- | contrib/cp210x-program/doc/index.html | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/contrib/cp210x-program/doc/index.html b/contrib/cp210x-program/doc/index.html new file mode 100644 index 0000000..1998469 --- /dev/null +++ b/contrib/cp210x-program/doc/index.html @@ -0,0 +1,129 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> +<html lang="en"><head> + + +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>CP210x Programmer</title> +<style type="text/css"> +</style> +</head><body> + <h1>CP210x Programmer</h1> + + <p> + <strong>ATTENTION: THIS VERSION OF cp210x-program IS NOT FULLY TESTED. +IT MAY RENDER YOUR CP210x USELESS OR DESTROY IT.</strong> + </p> + + <ul> + <li><a href="http://sourceforge.net/projects/cp210x-program">Project Page</a> + </li><li><a href="http://sourceforge.net/tracker/?group_id=193093">Bug Database</a></li> + <li><a href="http://sourceforge.net/project/showfiles.php?group_id=193093">Download</a></li> + <li><a href="http://cp210x-program.hg.sourceforge.net/hgweb/cp210x-program/cp210x-program/">Code Repository (Mercurial)</a> + </li></ul> + + <p> +Be aware that the current version is only tested on CP2102. + </p> + + <p> +The goal of this library is to provide access to the EEPROM of an Silabs CP210x +under Linux. + </p> + + <p> +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. + </p> + + <p> +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. + </p> + + <p> +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. + </p> + + + <dl> + <dt>Version:</dt> <dd>0.2</dd> + <dt>Author:</dt> <dd>Johannes Hölzl <johannes.hoelzl@gmx.de></dd> + </dl> + + <h2>Dependencies</h2> + + <ul> + <li>Python >= 2.4</li> + <li>ctypes >= 0.9 (only when Python 2.4 is used)</li> + <li>libusb 0.1</li> + </ul> + + <p> +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). + </p> + + <p> +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. + </p> + + <h2>Usage</h2> + + <h3>Read EEPROM content into hexfile:</h3> +<pre>$ cp210x-program --read-cp210x -F eeprom-content.hex +</pre> + + <h3>Show EEPROM content from device 002 on bus 001:</h3> +<pre>$ cp210x-program --read-cp210x -m 001/002 +</pre> + + <h3>Write some data to device with vendor id 0x10C4 and product id 0xEA62:</h3> +<pre>$ cp210x-program --write-cp210x -m 10C4:EA62 \ + --set-product-string="Product String" \ + --set-max-power=100 \ + --set-bus-powered=no +</pre> + + <h2>TODO</h2> + + <ul> + <li>Test on other than CP2102</li> + <li>Implement CP2103 GIOP settings</li> + <li>Implement GUI</li> + </ul> + + <h2>Development</h2> + + <ul> + <li>Clone repository: <code>hg clone http://cp210x-program.hg.sourceforge.net/hgweb/cp210x-program/cp210x-program/</code></li> + <li>Run, Change, Debug, Commit, Repeat</li> + <li>Ask me to get commit rights</li> + <li>Profit!</li> + </ul> + + <h2>Links</h2> + + <ul> + <li><a href="http://www.silabs.com/tgwWebApp/public/web_content/products/Microcontrollers/Interface/en/interface.htm">CP210x Product page on Silicon Labs</a></li> + <li><a href="http://www.silabs.com/public/documents/tpub_doc/anote/Microcontrollers/Interface/en/an144.pdf">AN114 Customization Guide</a> (<a href="http://www.silabs.com/public/documents/software_doc/othersoftware/Microcontrollers/Interface/en/an144sw.zip">Software</a>)</li> + <li><a href="http://www.silabs.com/public/documents/tpub_doc/anote/Microcontrollers/Interface/en/an205.pdf">AN205 CP210x Baudrate Guide</a> (<a href="http://www.silabs.com/public/documents/software_doc/othersoftware/Microcontrollers/en/AN205SW.zip">Software</a>)</li> + <li><a href="http://www.silabs.com/public/documents/tpub_doc/anote/Microcontrollers/Interface/en/an223.pdf">AN223 Port Configuration and GPIO for CP210x</a> (<a href="http://www.silabs.com/public/documents/software_doc/othersoftware/Microcontrollers/Interface/en/AN223SW.zip">Software</a>)</li> + </ul> + + <h2>License</h2> + + <p> + The python package 'cp210x' and the python script 'cp210x-program' are provided +under the terms of the GNU LGPL. See LICENSE. + </p> + +</body></html> |