Back to School with STEM-Limited-Time Event(Aug 6-Sep 5)

user-img

Kapacita22uF

+ Follow

CH591D BLE USBC module

CH591D pcb for IMK8K macro keyboard

CH591D BLE USBC module
 
  • thumbnail-img
  • thumbnail-img
  • thumbnail-img
  • thumbnail-img
  • thumbnail-img
  • thumbnail-img
 

Story

 

 

 

 

Device Overview

The CH591D module-Bluetooth Low Energy (BLE) and USB-C connectivity, making it ideal for low-power wireless applications that also require USB communication .

 

 

 


Technical Specifications

Parameter Value / Description
Microcontroller CH591D
Flash 192+24+32 KB
RAM 24+2 KB
Bluetooth BLE 5.4
USB USB 2.0 Full Speed (via USB-C connector)
Power Supply 3.3 V (via USB-C )
USB Connector USB Type-C
Interfaces UART, , SPI, ADC, GPIO
ADC 4+1
GPIO 12
Programming Support ICP, ISP and IAP, support OTA wireless upgrade 
Antenna PCB
Board Size 40*20mm

Connection & Pins

Pin Function
USB-C Power and USB communication
VCC USB VBUS
GND Ground
RX / TX UART communication
PB7 BOOT
GPIOx Multi-function (ADC, SPI)

Use Cases

  • Wireless controllers or macro keypads( IMK8K )

  • Portable BLE-enabled gadgets

  • USB-HID device development

  • IoT modules with BLE notifications

  • Development and testing of BLE applications


Software Support

Programming Steps:

1. Preparation

  • Download and install MounRiver Studio from: https://www.wch.cn

  • Create a new project for CH591D:

    • File → New → Project → CH591

    • Select target chip: CH591D

2. Write Code

  • Write your C code (e.g., LED blink).

  • Make sure you have a main() function.

  • Save your .c file in the src directory.

    or 

  • Download example
  • Unzip
  • Moun River Studio > Open existing project
  • Edit ...
  • Generating HEX File

    • Right-click your project in MounRiver → Build Project

    • The generated .hex file will be located at:
      ProjectFolder/output/ch591.hex

3. USB DFU Boot Setup

  • CH591D can be programmed over USB if PB7 is pulled to GND during power-up.Steps:

    1. Press and hold the button BOOT1 (PB7 = GND)

    2. Plug in the USB cable

    3. Release the button

  • The device will show up as WCHISP (depends on OS)

4. Uploading to Chip

 

  • In MounRiver go to: Tools → WCHISPTool
    Or use standalone WCHISPTool

  • Load the HEX file and click Download

  • The firmware will be flashed over USB

  • wchisp - WCH ISP Tool in Rust

  • wchisp -tested on Kubuntu: 

    Quick Guide to Program CH591D with wchisp

    1. Install dependencies

    bash
    sudo apt install libusb-1.0-0-dev

    2. Install wchisp tool

    bash
     
    cargo install wchisp --git https://github.com/ch32-rs/wchisp

    3. Add udev rule (if not done yet)

     

    Create /etc/udev/rules.d/50-wchisp.rules with:

     

    sudo nano /etc/udev/rules.d/50-wchisp.rules
     
    SUBSYSTEM=="usb", ATTRS{idVendor}=="4348", ATTRS{idProduct}=="55e0", MODE="0666"
     
    (Ctrl+OEnterCtrl+X)

    Reload rules:

    bash
    sudo udevadm control --reload-rules sudo udevadm trigger

    4. Connect CH591D via USB and check detection

    bash
    lsusb | grep 4348

    or

    bash
    dmesg | tail

    5. Check MCU info (verify access)

    bash
    wchisp info

    6. Flash hex/bin file

    Use absolute or relative path without leading ./:

    bash
    wchisp flash /path to/firmware.hex


Prototype Notice

 

NOTICE: This CH591D module is a development prototype. It may contain limitations, experimental firmware, or test components. Intended for development, debugging, and testing only.

 

CH591D BLE USBC module

CH591D pcb for IMK8K macro keyboard

280
 
10
0
4
These revenues will go back into supporting creators, contests, and the open source ecosystem, and more.

Share your project on social media to expand its influence! Get more people to support it.

  • Comments( 0 )
  • Like( 10 )
/1000
Upload a photo:
You can only upload 1 files in total. Each file cannot exceed 2MB. Supports JPG, JPEG, GIF, PNG, BMP

You May Also Like

View All
Add to cart
Board Type : GerberFile :
Layer : Dimensions :
PCB Qty :
Different PCB Design
PCB Thickness : PCB Color :
Surface Finish : Castellated Hole :
Copper Weight : 1 oz Production Time :
Total: US $
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.

PCB Assembly

PCBA Qty: BomFile:
NO. OF UNIQUE PARTS: NO. of Components:
Country: Shipping Way:
Assembly Cost: US $
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
3dPrintingFile : Size :
Unit : Volumn :
3D Printing Qty : Material :
Total: US $12.99
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
Acrylic Type : AcrylicFile :
Dimensions: Engrave:
Acrylic Qty :
Acrylic Thickness:
Acrylic Color:
Total: US $12.99
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
CNC Milling File : Size:
Unit: Volumn:
CNC Milling Qty : Material:
Type of Aluminum: Surface Finish:
Tolerance:
Surface Roughness:
Total: US $12.99
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
Item Price Qty Subtotal Delete
Total: US $0.00
Certified Product | Supported Purchase: Full After-sales Protection