add project README (hardware files are upcoming)
This commit is contained in:
parent
f37b743740
commit
a17c5188e4
|
@ -0,0 +1,98 @@
|
|||
purpose
|
||||
=======
|
||||
|
||||
the name of the device says it all: "USB cable tester".
|
||||
it will test what kind of USB cable it is by checking which signals on the connectors are inter-connected by the cable.
|
||||
this helps identifying if a cable can transmit data or just deliver power.
|
||||
Apple's lightning connector is also supported although it is not strictly a USB connector.
|
||||
|
||||
background
|
||||
----------
|
||||
|
||||
micro-USB (USB micro-B) cables come with each new gadget to power it, or recharge its battery.
|
||||
these cable are not actual USB cables (which can transfer USB data), but only deliver power.
|
||||
the USB connectors are just used because it is convenient, and an ubiquitous power source.
|
||||
but you don't want to confuse them with actual USB cables supporting data transfer.
|
||||
sadly there are often no visible differences between a USB data cable and one just to deliver power.
|
||||
the USB cable tester is a tool to identify the USB cables.
|
||||
afterwards don't forget to label them afterwards to not get tricked in the future and stop wasting debugging time.
|
||||
|
||||
since I would built a device to test USB cables, why stop at just testing if it has data lines.
|
||||
it can also test if the cable is shielded, supports USB 3.x, and even other USB connectors.
|
||||
this becomes even more interesting for USB-C cables since they have plenty of signals, some optional, and this is not identifiable just by looking at the cable.
|
||||
|
||||
connectors
|
||||
----------
|
||||
|
||||
the USB cable tester has the following connectors:
|
||||
- 2x USB type-A, supporting USB 3.x
|
||||
- 2x USB type-C, with all 24 pins
|
||||
- 1x USB type-B, supporting USB 3.x
|
||||
- 1x USB mini-B, USB 2.0 only
|
||||
- 1x USB micro-B, supporting USB 3.x
|
||||
- 1x Apple lightning
|
||||
|
||||
these are the most commonly used USB connectors.
|
||||
the Apple lightning socket has been added because it is also a common charging connector, and there were enough free pins to also test this.
|
||||
there are two USB type-A connectors because some rare devices also use it (for example PCIe extension boards), although this should be a host-side connector.
|
||||
some Y-cables also use a second type-A host connector for devices requiring additional power.
|
||||
any combination of the connectors and signals can be tested (a list of know cables is built in the firmware).
|
||||
|
||||
usage
|
||||
-----
|
||||
|
||||
- plug all ends of the USB cable to test in the corresponding sockets
|
||||
- choose if the USB cable tester should be powered through its USB port or the battery using the switch
|
||||
- press on the RESET/START button
|
||||
- the result of the cable test will be displayed on the LCD and/or OLED screen
|
||||
|
||||
if you connect the USB cable tester over USB (using the dedicated micro-B connector) to a computer, it will appear as USB device with a serial port.
|
||||
you can connect to it using a terminal (the baud rate does not matter) and have a console for more detailed tests and results.
|
||||
this is useful for cables with could not be identified, often because they are faulty.
|
||||
more tests are available on the serial prompt to identify the issues with the cable.
|
||||
just type "help" to get the available commands.
|
||||
|
||||
limitations
|
||||
-----------
|
||||
|
||||
the USB cable tester only tests if the signals are connected.
|
||||
it does not test:
|
||||
|
||||
- the resistance of the cable (useful for cables used to delivery high currents)
|
||||
- if the shield is actually shielding the data cables or is just a wire (the impedance would need to be measured, which is complicated)
|
||||
- if the data line pairs are twisted (the impedance would need to be measured, which is complicated)
|
||||
|
||||
I did not include the mini-A, micro-A, mini-AB, and micro-AB connectors since they are quite uncommon.
|
||||
|
||||
firmware
|
||||
========
|
||||
|
||||
binary
|
||||
------
|
||||
|
||||
ready to flash firmware binaries are in the `release` folder
|
||||
|
||||
source code
|
||||
-----------
|
||||
|
||||
the firmware source code for this device is in the `firmware` folder.
|
||||
if you got this project using git, you need also check out this submodule using `git submodule init`.
|
||||
the source code in under GPL version 3 license.
|
||||
for more details check the `README` file on the `firmware` folder.
|
||||
this will also provide informations for firmware development.
|
||||
|
||||
hardware
|
||||
========
|
||||
|
||||
production
|
||||
----------
|
||||
|
||||
the pdf schematic, board layer gerbers, and various other output files are in the `release` folder.
|
||||
|
||||
design files
|
||||
------------
|
||||
|
||||
the source design files are in the `hardware` folder.
|
||||
they are under the CERN Open Hardware Licence version 1.2.
|
||||
for more information check the `README` file on the `hardware` folder.
|
||||
|
Loading…
Reference in New Issue