UNIT CH55x SDK#
The UNIT CH55x SDK is the CH55x firmware development base used by this documentation. The recommended implementation workflow is PlatformIO. PlatformIO uses SDCC and integrates the default upload flow validated on Linux and Windows.
Repository: UNIT-Electronics-MX/unit_ch55x_sdk
Recommended Workflow#
Use the dedicated PlatformIO Support for CH55x chapter for installation, project configuration, build, upload, and supported boards.
The container-based Makefile workflow is optional and low priority. It is documented only in Optional Docker and spkg for legacy examples or isolated builds.
Features#
PlatformIO platform support for CH55x projects on Linux and Windows.
SDCC-based firmware builds for
firmware.ihx,firmware.hex, andfirmware.bin.Default upload flow with
chprog.pyon Linux andvnproch55xon Windows.Board definitions for CH551, CH552, CH554, and CH559 targets.
Optional container tooling for legacy Makefile projects.
Requirements#
For the recommended PlatformIO workflow:
Visual Studio Code with the PlatformIO IDE extension.
Git.
Python 3 on Linux.
WCH USB driver CH372DRV on Windows for USB upload.
PlatformIO Core can also be used for command-line automation, but the recommended installation path is the VS Code extension.
macOS Status#
macOS has not been tested in the current SDK validation process. Do not present macOS as a supported installation, build, or upload target until it has a verified test procedure.
Version Compatibility#
Use SDK v0.1.4 or newer for the current PlatformIO upload flow. This
version avoids treating the Windows-only Arduino tools archive as a PlatformIO
package on Linux and keeps the default chprog.py uploader path clean.
Projects can pin a released SDK version in platformio.ini:
[env:unit_ch552]
platform = https://github.com/UNIT-Electronics-MX/unit_ch55x_sdk.git#v0.1.4
board = unit_ch552
Project Structure#
unit_ch55x_sdk/
|-- boards/ # PlatformIO board definitions
|-- builder/ # PlatformIO build scripts
|-- examples/ # CH55x example projects
|-- platform.json # PlatformIO platform metadata
`-- README.md
License#
This SDK is released under the MIT License.
Some example projects inside examples/ are derived from the work of Stefan
Wagner and are licensed under Creative Commons Attribution-ShareAlike 3.0
Unported (CC BY-SA 3.0). Each source file includes its origin and license
header where applicable.