> **Source:** Core Electronics is an Australian maker-electronics retailer and manufacturer based in Newcastle, NSW, run by a team of makers and educators. We design and manufacture our own product lines (PiicoDev, CE originals) and are official retailers for iconic maker and industrial brands including Raspberry Pi, Arduino, Adafruit, SparkFun and DFRobot. Orders ship Australia-wide from our Newcastle warehouse. Prices are in AUD and include GST. Pricing, stock and dispatch on this page are generated from the store's live catalog. Full machine-readable index: https://core-electronics.com.au/llms.txt

# Adafruit CH9328 UART to HID Keyboard Breakout

**Type:** Product page · **SKU:** ADA5973 · **Brand:** [Adafruit](https://core-electronics.com.au/brands/adafruit-australia)
**Page:** https://core-electronics.com.au/adafruit-ch9328-uart-to-hid-keyboard-breakout.html ([markdown](https://core-electronics.com.au/adafruit-ch9328-uart-to-hid-keyboard-breakout.html.md))

We love using chips with 'native USB' peripherals - that's the magic silicon that lets a microcontroller act like an HID keyboard or mouse or...

## Pricing

- **Price:** $12.25 (inc GST) — $11.14 AUD, exc GST
- **Quantity discounts:** 10+ $10.80 (exc GST) · 50+ $10.58 (exc GST)

## Availability & dispatch

- Available with a lead time — expect dispatch between Aug 24 and Aug 27.

## How to buy

- **Build a cart:** compose `https://core-electronics.com.au/cart/link?items=ADA5973:1` (comma-separated SKU:qty pairs) and share the link. Opening it shows a confirmation page with live pricing and stock before anything is added to the cart.
- **Verify the cart first:** fetch `https://core-electronics.com.au/cart/link/ADA5973:1.md` for live line prices (inc & exc GST, quantity discounts applied), stock and dispatch estimates, and totals. Append `/to/{AU-postcode}` (or `/to/{country-code}:{postcode}`) before `.md` for delivery options and prices to that destination. Unknown, retired, or out-of-stock SKUs are flagged. (Query form `cart/link.md?items=...` also works but some robots parsers refuse query strings here.)
- **Checkout** is completed on-site and includes a captcha at the payment step. Share the cart link; checkout takes it from there.
- **Search the catalogue:** `https://core-electronics.com.au/search/{query}.md` (URL-encode the query; pages 2-3 at `search/{query}/{page}.md`; `search.md?q=` also works)
- **Payment methods, purchase orders, policies and contact details:** https://core-electronics.com.au/llms.txt
## Description

Adafruit love using chips with 'native USB' peripherals - that's the magic silicon that lets a microcontroller act like an HID keyboard or mouse or disk drive or MIDI synth. It's a standard addition on [SAMD21](https://core-electronics.com.au/adafruit-qt-py-samd21-dev-board-with-stemma-qt.html), [RP2040](https://core-electronics.com.au/raspberry-pi/pico/rp2040-boards.html), and even the latest [ESP32 ](https://core-electronics.com.au/development-boards/esp32.html)boards. But what about when you have a classic ATmega328 Uno? or an original ESP32 or ESP8266? Maybe even a single-board computer like a Raspberry Pi? We would say "sorry...that's not possible" UNTIL NOW!

The [CH9328](https://www.wch-ic.com/products/CH9328.html) is a funky chip that is basically a programmed microcontroller that enumerates as an every-day HID keyboard and can convert ASCII or 8-byte raw reports, read over a standard serial port UART, into keypresses. So, you can emulate a keyboard even if your chip doesn't have native USB! You *do* need a hardware or software serial port: some way to generate 9600 baud 3V-logic signal that the CH9328 can read.

Adafruit added all the support circuitry to make this chip easy to use, you may not even need to do any soldering. The CH9328 is connected to a USB Type C port so it's easy to plug into any computer, laptop or even phone/tablet. Then, you can get 5V power from the 5V and Ground pads. There's a UART RX receive input plus a reset line if you want to perform a hard reset. If you want 'solderless' functionality, grab one of Adafruit's [JST SH cables](https://core-electronics.com.au/jst-sh-compatible-1mm-pitch-3-pin-to-premium-male-headers-cable-100mm-long.html): the red line will provide 5V, black is Ground, and the white wire is data in.

You can configure the 'Mode' using the 4 on-board switches, do that before powering it up:

- **Switch #1** is used to configure the "Upload speed" - for most cases it doesn't matter which way its set
- **If Switch #2, #3 and #4 are all 'ON' the chip is in Mode 0:**Visible ASCII characters are sent as-is: if you send ASCII "A", an "A" is typed. If 0x1B is received, it is converted to the Enter key
- **If Switch #2 and #4 are 'ON' and Switch #3 is 'OFF' the chip is in Mode 1:**Visible ASCII characters are sent as-is: if you send ASCII "A", an "A" is typed
- **If Switch #2 and #3 are 'ON' and Switch #4 is 'OFF' the chip is in Mode 2:**Visible ASCII characters are sent as-is: if you send ASCII "A", an "A" is typed. If 0x28 is received, it is converted to the Enter key
- **If Switch #3 and #4 are 'ON' and Switch #2 is 'OFF' the chip is in Mode 3:**This is the mode for sending raw 8-byte HID reports. This is also good if you want more control over the keypresses, or keyholds, or to mimic a non-US keyboard because you can control exactly what control codes are sent and when.
 
Adafruit recommend using mode 3 if possible, but you'll want to use Adafruit's CH9328 library to do so.

This is a nice and easy way to emulate a keyboard without having to worry about native USB support, gadget mode, or maybe you just want to emulate more than one kind of device. You can also do 'funky' things like have one desktop or single-board computer 'type' into a device such as a computer or mobile device by running Adafruit's Python code and having it [send UART data via a USB-to-UART converter](https://core-electronics.com.au/usb-to-ttl-serial-cable-debug-console-cable-for-raspberry-pi.html). Either way, the CH9328 will make it easy to keeb away.

## Technical Details

Product Dimensions: 26.4mm x 20.3mm x 4.6mm / 1.0" x 0.8" x 0.2"

Product Weight: 2.7g / 0.1oz

 ![RoHS 2 2011 65 EU Compliant](https://core-electronics.com.au/attachments/localcontent/RoHS2_2011_65_EU_7356c5574c.svg)![RoHS 2 2015 863 EU Compliant](https://core-electronics.com.au/attachments/localcontent/RoHS2_2015_863_EU_86773f57f9.svg)

## Images

- [Product image 1](https://core-electronics.com.au/media/catalog/product/A/D/ADA5973-1.jpg)
