-
Notifications
You must be signed in to change notification settings - Fork 23
build_usb_c_cli_cable
MYND’s firmware can route a UART-style CLI/log stream to the USB‑C connector, but it does not present itself as a normal USB serial device. Practically, you use a 3.3V FTDI USB‑to‑UART adapter and connect it to the USB‑C connector’s USB2 data pair (D+ / D−) plus GND.
This page is only about building the cable. For the actual “how to get a prompt” procedure, see:
- Speaker side: a USB‑C plug that goes into the MYND speaker
- PC side: an FTDI adapter plugged into your computer (appears as a serial port)
-
Between them: wiring that connects
- USB‑C D+ and D− ↔ FTDI RX and TX (crossed)
- USB‑C GND ↔ FTDI GND
Important: USB‑C cables also carry VBUS (+5V). For this CLI cable you typically do not need VBUS at all. Avoid accidentally feeding 5V into any signal pin.
-
FTDI USB‑to‑UART adapter (3.3V logic)
Example:TTL-232R-3V3or equivalent -
USB‑C breakout / adapter that exposes D+, D−, GND (and usually VBUS)
This can be:- a small breakout PCB with labeled pins (D+, D−, GND, VBUS, CC…), or
- a USB‑C-to-screw-terminal adapter, or
- a sacrificial USB‑C cable you cut open (more work; see below)
Example of the “USB‑C to terminals/breakout” style adapter (check its labeling/silkscreen for
D+,D-,GND): USB C Male to 5-Pin Terminal Block Cable -
Jumper wires / dupont leads (or solder + heatshrink)
-
Multimeter (strongly recommended)
Reference (USB2 wire color conventions and signals):
- PinoutGuide USB 2.0 cable wiring:
https://pinoutguide.com/SerialPortsCables/usb_cable_pinout.shtml
Reference (USB‑C breakout boards and what they expose):
- Pololu USB‑C (USB2) breakout overview:
https://www.pololu.com/product-info-merged/2585 - Adafruit USB‑C breakout overview:
https://www.adafruit.com/product/4090 - Solder Party USB‑C breakout notes (D+/D- pair, CC pull resistors):
https://solder.party/docs/usb-c-breakout/2
-
Get a USB‑C breakout/adapter with labeled pins
Look for silkscreen labels likeD+,D-,GND(sometimesVBUStoo). -
Connect GND first
- USB‑C breakout
GND→ FTDIGND
- USB‑C breakout
-
Connect the data pair to FTDI RX/TX
- USB‑C
D+→ FTDIRX - USB‑C
D-→ FTDITX
- USB‑C
-
If there is no output in the terminal, swap D+ and D− Some devices map UART TX/RX onto D+/D- opposite of the above. If you get no prompt, try:
- USB‑C
D+→ FTDITX - USB‑C
D-→ FTDIRX
- USB‑C
-
Do not connect VBUS unless you know you need it Many breakouts include CC resistors intended for “USB device / sink” behavior (see references above). For MYND’s factory CLI you typically only need GND + D+/D-.
This is the approach your original doc implied. It works, but it’s easy to get wrong because USB‑C cables can contain extra shielding and (for USB3) additional high‑speed pairs.
- Prefer a USB 2.0 USB‑C cable (charge + USB2 data).
Avoid “USB‑C 3.x SuperSpeed” cables if possible; they have more conductors and make identification harder.
-
Decide which end you need:
- USB‑C plug that will go into the speaker: keep this end intact.
- The other end: this is the end you cut/terminate to reach the inner conductors.
-
Cut the cable and strip back the outer jacket carefully.
-
You’ll typically find:
- a shield braid / foil
- red (VBUS +5V)
- black (GND)
- green (D+)
- white (D−)
- sometimes additional wires (CC/SBU/e-marker) depending on cable
The common USB2 color scheme is red=VBUS, black=GND, green=D+, white=D−, but verify with a multimeter because cables can vary. (See the PinoutGuide reference above.)
- Use a multimeter in continuity mode against the USB‑C plug pins (or against a known breakout/connector) to confirm which conductor is
D+,D−, andGND. - Keep D+ and D− twisted together as much as possible when re‑routing them.
If you’re using a USB‑C adapter that exposes terminals/pads labeled D+, D-, GND:
- Cable
GND(and shield, if present) → adapterGND - Cable
D+→ adapterD+ - Cable
D−→ adapterD− - Leave
VBUSunconnected unless you explicitly need it
Then wire the adapter to FTDI exactly like in Option A.
- Heatshrink every solder joint.
- Ensure shield/drain wire cannot short to
D+/D-. - Add strain relief so tugging the cable doesn’t rip pads/wires off.
- Logic level: FTDI must be 3.3V (not 5V)
- Common ground: GND must be shared (USB‑C GND ↔ FTDI GND)
-
Terminal settings (used later when you run the CLI):
- 115200 baud
- 8 data bits
- no parity
- 1 stop bit
- no flow control
-
No prompt / nothing prints:
- swap
D+andD-↔TX/RXmapping (see Option A step 4) - verify FTDI is 3.3V
- verify you enabled serial routing on the speaker (see CLI access guide)
- verify you are on the correct serial port
- swap
-
Garbled text:
- wrong baud rate (should be 115200)
- noisy/too-long untwisted D+/D- run; shorten wiring and keep D+/D- paired