

Serial remote access esp32 c6
That download will give you a binary file that you can install to the chip using esptool. Then to push the firmware you would run the following: Where FIRMWARE.bin is the binary MicroPython firmware you downloaded or…
- Size
- 59.1 × 31.6 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 19
- Nets
- 84
- Pads
- 231
- Tracks, vias
- 292, 50
- Routed
- Yes
- KiCad
- KiCad 8.0 (file 20240108)
- Created
- 14 May 2025
- Updated
- 14 May 2025
Overview
Serial remote access esp32 c6 is an open-source printed circuit board by jalbrethsen, from the jalbrethsen/serial-router repository on GitHub, published under the MIT licence. It is a 2-layer board of 59.1 × 31.6 mm with 19 parts on 84 nets, routed with 292 tracks and 50 vias.
It is built around the CH340C, ESP32-C6-MINI-1U-H4 and JW5211. Its parts include 6 ICs, 5 connectors, 3 capacitors, 3 resistors and 1 switch. It belongs with the interfaces and adapters boards and the ESP32 and RISC-V boards of this library.
Main components
3CH340C
SOP-16-20℃~+70℃ 2Mbps 3.3V、5V 50uA 7mA Transceiver USB 2.0 SOP-16 USB Converters ROHSWCH (Nanjing Qinheng Microelectronics)USB ConvertersESP32-C6-MINI-1U-H4
SMD,13.2x12.5mm-105.5dBm -40℃~+105℃ 2.4GHz 20.5dBm 382mA 3V~3.6V 73mA ESP32-C6FH4 Integrated Bluetooth function、Integrated Zigbee function、Support USB interface UART、SDIO、SPI、I2C、GPIO、USB SMD,13.2x12.5mm WiFi Modules ROHSEspressif SystemsWiFi ModulesJW5211
SOT-23-5-40℃~+125℃@(TJ) 1 1.2A 1.2MHz~1.8MHz 2.5V~6V 40uA 600mV~6V Adjustable Buck Buck Built-in Yes SOT-23-5 DC-DC Converters ROHSJoulWatt TechDC-DC Converters
README
README.mdWhat it does
This project is to enable remote administration of machines through a USB serial port. You can have several machines connected to the serial router and as long as one of them is accessible over the network, you can use it to reach the other machines. This was motivated by the fact that I work remotely and also do a lot of SDN experiments that cause me to lose connectivity if something is misconfigured.
How to build
I designed the PCB itself in KiCAD based around an Espressif Esp32-c6 chip with several CH340 USB-to-serial convertors. Everything is big enough to be hand solderable if needed, I used JLC PCB to build the PCB and assemble everything except the esp32 chip.
Firmware Install
I use MicroPython for my firmware, it is easy to install, easy to use, and is well supported for Espressif devices. You can build from source or download the latest release from Here.
That download will give you a binary file that you can install to the chip using esptool.
pip install esptoolThen to push the firmware you would run the following:
esptool.py --port PORTNAME erase_flash
esptool.py --port PORTNAME --baud 460800 write_flash 0 FIRMWARE.binWhere FIRMWARE.bin is the binary MicroPython firmware you downloaded or compiled and PORTNAME is the port when you plug the left most usb port into your computer. In my case it was /dev/ttyACM0, but it maybe /dev/ttyUSB0 or something else.
Software Install
Now that you have the board running MicroPython, you can push the boot.py file to the board to run our serial router program. I use ampy to push files to esp chips, you can install it:
pip install adafruit-ampyNow you can push the program which will run on boot in MicroPython
ampy --port /dev/ttyACM0 put boot.py /boot.pyNow the serial router should be running UART on the four right most usb ports and able to link between them.
Create login shell
Now on all your machines that you want to remotely access (assuming they are running Linux):
sudo systemctl enable serial-getty@ttyUSB0.serviceReplace ttyUSB0 with whatever the USB serial port shows up as.
Access a machine
If this is running on 4 machines, you can use any 1 to access the other 3. Simple disable the login shell that is bound to the serial port:
sudo systemctl stop serial-getty@ttyUSB0.serviceNext use a tool like tmux or screen to connect to the serial port
sudo screen /dev/ttyUSB0 9600You may or may not need to specify the baud rate, I am using the default 9600 but you can also change this by modifying the boot.py and modifying the serial-getty@ttyUSB0.service. Now that you have a screen session you can hold down the 0,1,2,3 key to connect to the login shell running bound to that specific USB port. When you are finished press ctl+d to tell the router to disconnect the ports, then close your screen session and start up your login shell again.
sudo systemctl start serial-getty@ttyUSB0.serviceThat's all there is to it.
Parts
19| Qty | Value | Footprint | References |
|---|---|---|---|
| 5 | USB_B_Micro | Connector_USB:USB_Micro-B_Amphenol_10118194_Horizontal | J1, J2, J3, J4, J5 |
| 4 | CH340C | Package_SO:SOIC-16_3.9x9.9mm_P1.27mm | U2, U3, U4, U5 |
| 2 | 2.2uF | Capacitor_SMD:C_0402_1005Metric | C1, C2 |
| 2 | 49K9 | Resistor_SMD:R_0402_1005Metric | R2, R3 |
| 1 | 11K | Resistor_SMD:R_0603_1608Metric | R1 |
| 1 | 2.2uH | Inductor_SMD:L_0805_2012Metric | L1 |
| 1 | 22uF | Capacitor_SMD:C_0603_1608Metric | C3 |
| 1 | ESP32-C6-MINI-1/U | PCM_Espressif:ESP32-C6-MINI-1 | U1 |
| 1 | JW5211 | Package_TO_SOT_SMD:SOT-23-5 | U6 |
| 1 | SW_Push | Button_Switch_SMD:SW_SPST_CK_RS282G05A3 | SW1 |
Similar boards
- 4 layers75.5 × 79.3 mm

- 4 layers54.6 × 89.5 mm

Hdmi2rgb adapter
embeddedboys/hdmi2rgb_adapter
hdmi2rgb_adapter is a simple HDMI to RGB deserializer based on TFP401 (TI)
55 parts4MIT - 2 layers89 × 51 mm

BusinessCard
JubilantMarmot/pcc5
This is my first PCB project. It took me around 20 hours. It is a small Linux computer that is the size of a business card. Based off of Allwinner F1C200s.
39 parts - 2 layers90 × 54.5 mm

- 2 layers150 × 100 mm

New year card for fhd
xiaoyaowudi-extreme/new-year-card-for-fhd
This repository contains the design of the pcb which will be sent to fhd on the Valentine's Day.
43 parts - 2 layers61 × 61 mm

- 4 layers79 × 79 mm

Minuet
brown-studios/minuet
Minuet upgrades your MAXXAIR Maxxfan with a brushless DC motor, home automation features, and accessories.
103 parts67MIT - 4 layers36.5 × 69 mm

Storm tracker
solderable/storm-tracker-hardware
Open-source-ready Storm Tracker hardware design, documentation, BOM, and manufacturing package
102 parts58
Questions
How big is the Serial remote access esp32 c6 PCB?
It measures 59.1 × 31.6 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Serial remote access esp32 c6 use?
19 parts, built around the CH340C, ESP32-C6-MINI-1U-H4 and JW5211. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the Serial remote access esp32 c6 KiCad files?
From the jalbrethsen/serial-router repository on GitHub, at the commit this page was made from: the board is kicad_files/serial_remote_access_esp32_c6.kicad_pcb and its schematic kicad_files/serial_remote_access_esp32_c6.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Serial remote access esp32 c6 design in my own project?
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).