Flashing via CP2102 serial adapter (boards without USB)

Reading time: ~6 minutes ยท Execution time: ~15 minutes (wiring + flash) ยท Audience: anyone with a JoyReef dosing pump without a USB port, or who needs to recover a board that no longer responds

๐Ÿ”ต Advanced guide (technical) โ€” this is the "plan B" of guide 16 โ€” USB firmware install. You need it if: - Your dosing pump has no USB port on the board (some of the boards sold don't have one) - You need to recover a board that shows no signs of life after a failed update

If your board has a USB port, you don't need this guide: follow guide 16 directly.


1. What you are about to do

The dosing pump board is programmed through its serial port, which is normally hidden behind the USB chip. If there is no USB port, the serial port is exposed on 4 pins on the board: you connect a small USB-serial adapter (CP2102) to them, and from there the flash is identical to guide 16 โ€” browser, the portal's /usb-flash page, two minutes of waiting.

The flow is:

  1. Buy a CP2102 adapter (once, ~โ‚ฌ5)
  2. Connect 4 jumper wires between adapter and board
  3. Put the board in flash mode with the PROGRAM button
  4. Flash from the browser as in guide 16
  5. Disconnect everything and reassemble the dosing pump

๐Ÿ’ก No fear: this is what every maker did before boards came with built-in USB. Four wires, one button, done. And if you get something wrong, nothing breaks: double-check the wires and try again.


2. What you need

CP2102 adapter with the 3V3, TXD, RXD, GND and +5V pins and the included dupont wires

โš ๏ธ Watch the voltage: the adapter in the photo has two separate power pins, 3V3 and +5V โ€” for our board use only the 3V3. Connecting the +5V to the board's 3V3 pin can damage it. (On other models the voltage is selected with a jumper: it must be on 3.3V.)


3. Find the pins on the board

On the dosing pump board there are 4 pins dedicated to the serial port โ€” 3V3, GND, TX, RX โ€” and a PROGRAM button.

The dosing pump board: the serial pin header is on the right edge and the PROGRAM button is the one next to the pins

๐Ÿ’ก Which button? There are two buttons on the board: the one you need, PROGRAM, is the one near the programming pin header (right edge). The other one, near the power jack, has nothing to do with flashing.

โš ๏ธ Board powered off: before touching the pins, disconnect the dosing pump from power. During the flash the board will be powered by the adapter through the 3V3 pin โ€” it must never be powered by two sources at the same time.


4. Connect the wires

Four connections, two of them crossed:

CP2102 adapter Doser board
3V3 3V3 straight
GND GND straight
TXD RX crossed
RXD TX crossed

The logic of the crossing: what the adapter transmits (TX) the board must receive (RX), and vice versa. It's the number one mistake of anyone doing this for the first time โ€” if the flash doesn't start, 90% of the time it's because TX and RX are straight instead of crossed.

The complete wiring: the CP2102 adapter connected with the 4 dupont wires to the serial header on the right edge of the board


5. Put the board in flash mode

The board accepts new firmware only if it powers up in "programming mode". Here's how:

  1. Hold down the PROGRAM button on the board (the one next to the pin header, see photo in sec. 3)
  2. With the button held, plug the CP2102 adapter into the PC's USB port (this is what powers the board)
  3. Wait 2 seconds and release the button

The board is now waiting for the firmware. You won't see LEDs blinking or any other signal: that's normal, it's simply listening on the serial port.

The sequence: a finger holds down the PROGRAM button while the CP2102 adapter goes into the PC's USB port

๐Ÿ’ก Got the sequence wrong? No problem: unplug the adapter from the PC and repeat from step 1. The sequence only matters at power-up.


6. Flash from the browser

From here on the procedure is identical to guide 16:

  1. Open portal.joy-reef.com/usb-flash in Chrome or Edge
  2. Choose the Dosing Pump firmware
  3. Click "Install" / "Connect and flash"
  4. In the serial port window choose "Silicon Labs CP210x"
  5. Wait for completion (2-3 minutes, progress bar)

โš ๏ธ Flash starts and stops halfway? It's almost always the power supply: the 3V3 pin of some cheap adapters doesn't deliver enough current. Try another USB port on the PC (the rear ones on a desktop are best), avoid passive USB hubs, or try another adapter.


7. After the flash

  1. Unplug the adapter from the PC and disconnect the 4 wires
  2. Reassemble the dosing pump and power it normally
  3. Within 30 seconds the WiFi network joyreef-XXXXXX will appear: the firmware is installed and waiting for configuration

โžก๏ธ Continue with guide 03b โ€” Firmware flash and WiFi connection to connect the dosing pump to your network and the portal.


8. Troubleshooting

Symptom Probable cause Solution
The browser sees no port CP210x driver missing Install the driver from silabs.com, restart the PC
The port is there but the flash doesn't start TX/RX straight instead of crossed Swap the TX and RX wires
Flash doesn't start (wires ok) Board not in flash mode Repeat the sequence: PROGRAM held โ†’ plug in USB โ†’ release
Flash stops halfway Insufficient 3V3 power Another USB port, no hubs, another adapter
No joyreef-XXXXXX network after the flash Flash not completed Repeat from step 5; check the jumper is on 3.3V

๐Ÿ’ก This procedure always works, even on a board that seems "dead" after a failed update: the flash mode activated by the PROGRAM button doesn't depend on the installed firmware. That's why this guide is also the official recovery procedure.