summaryrefslogtreecommitdiffstats
path: root/contrib/cp210x-program/doc/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/cp210x-program/doc/index.html')
-rw-r--r--contrib/cp210x-program/doc/index.html129
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 &lt;johannes.hoelzl@gmx.de&gt;</dd>
+ </dl>
+
+ <h2>Dependencies</h2>
+
+ <ul>
+ <li>Python &gt;= 2.4</li>
+ <li>ctypes &gt;= 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>