Skip to main content
Version: Next

2.1: Features and Parameters

note

PW200/PW300 hardware version 2.0 and above are upgraded with OLED status display; other features remain unchanged.

tip

The interface definition parameters described in this section apply to PW200, PW300 devices, and the functional parameters apply to all PowerWriter® devices.

caution

For status descriptions of different products, please refer to PowerWriter® Device Operating Status Description.

2.1.1 Introduction

PW200/PW300 is an integrated comprehensive development tool officially launched by ICWorkshop, combining a universal debugger, online programmer, and offline programmer in one device. It is primarily aimed at individual developers, small-batch production, and authorization control. With rich features and secure design, it meets developers' needs throughout the entire process from development and debugging, online verification, to product mass production.

tip

Different product models have slight differences in features. The full-featured device is PWX1 (abbreviated as X1). For details, see PWX1 User Manual.

2.1.2 Product Parameters

image-20260512164506672

  • Product Dimensions: 92.000mm 56.000mm 16.000mm
  • Operating Voltage: DC 5V
  • Power Consumption: 30mA@5V~100mA@5V
  • Drive Capability: 5V@700mA (Max)

2.1.3 Package Contents

list

2.1.4 Interface Signals

2.1.4.1 Output Port

The PW200 (PW300) interface combines programming machine signals, TRACE signals, SWIM signals, standard serial port signals, BOOT0 control, and power supply (power supports output of 1.8V, 3.3V, 5.0V, and can also serve as an input reference to provide logic level for PowerWriter®), as shown in the figure below:

image-20260512164952367

NameDescription
VREFTarget chip IO reference voltage output (VDDIO)
VINDevice alternative power supply (supports voltage range 5.0V~5.5V)
5VDefault 5V voltage output (commonly used for driving the mainboard, configurable to 3.3V)
GNDPower ground
TXGeneral serial port, ISP programming, unlock transmit (device side)
RXGeneral serial port, ISP programming, unlock receive (device side)
SWDIOSWD interface data line SWDIO
SWCLKSWD interface clock line SWCLK
BOOT0Target chip BOOT control pin
SWIMSWIM interface data line
RSTTarget chip auxiliary reset control pin
CTRLProgramming control (low pulse start)
OKProgramming success status output (output high)
Tip

The VREF (VEXT) voltage is the target chip IO reference voltage. It can be set via the configuration software to output 1.8V, 3.3V, or 5V, or configured as an external input reference voltage to switch the PowerWriter® logic level based on the external chip's operating voltage.

caution

Different hardware versions and models may have slight differences in interfaces. Please refer to the actual device. New versions are compatible with older designs and provide more features.

Power Writer supports power supply from the USB interface and from the programming port VIN to power the device:

Power Supply MethodInput VoltageDescription
USBDC 5VEnsure sufficient input drive capability
VINDC 5VMay not work below or above this range

2.1.4.2 Main Panel

image-20260512165208745

2.1.4.2.1 LED Indicators

  • POWER: Power indicator (blue).
  • STATUS: Status indicator (yellow).
  • NG: Programming failure indicator (red).
  • OK: Programming success indicator (green).
  • Screen: Real-time display of device operating status. For details, refer to OLED Status Display.

2.1.4.3 Main Button

When the button is pressed briefly, offline programming starts.

tip

During offline programming, please close the PowerWriter® application or disconnect the device before operating.

2.1.4.4 Status Description

Signal NameSignal Description
POWER LEDAlways on when powered on
STATUS LEDOff when powered on with no operation
Flashes during communication with the application software, flash rate follows the communication speed setting
Flashes during offline programming, flash rate follows the communication speed setting
Stays on when connected to the target chip
NG LEDLights up when an operation error occurs, such as read, erase, or programming failure, and turns off when a new operation starts
OK LEDLights up when read, erase, or programming operations succeed, and turns off when a new operation starts
Buzzer FrequencyPWM frequency is 2.7K Hz (defined as follows)
Buzzer CountBeeps once when powered on with no operation
Beeps once when connected to the target chip
Beeps twice when programming succeeds or offline project download succeeds
Beeps three times when an operation fails
Beeps four times when offline programming count is 0
ButtonEffective for offline programming (released trigger, press longer than 1s ignored)
OK Signal PinOutputs high when offline operation succeeds, cleared when a new operation starts
NG Signal PinOutputs high when offline operation fails, cleared when a new operation starts
CTRL Signal PinInput >=40ms low signal to start one offline programming session

2.1.4.5 OLED Status Display

tip

Tip: Only devices with hardware version 2.0 and above support this feature. Please check the device information bar:

05/12-16:47:00:973> Writer Info:  hwVer:2.0   blVer:x.xx.xx  ....

The PW200/PW300 provides bilingual Chinese-English OLED display with a resolution of 128x32 and font size of 12 pt. The factory default is English display. When connected to the PowerWriter client software, the device automatically synchronizes with the client language settings.

2.1.4.5.1 Startup Screen

image-20260512175319683

2.1.4.5.2 Display Overview

Display Mode 1 (mainly in offline mode):

image-20260513161213494

The screen content display is divided into four areas:

  1. Project file or working mode display: Used to display current project file information and working mode information.
  2. Information display: Displays dynamic information within the project file, such as checksum information.
  3. Status: Displays the current operating status of the device.
  4. Progress display: Displays the current operation progress, mainly shown during offline programming.

Display Mode 2 (mainly in online mode):

image-20260513161757203

The screen content display is divided into three areas:

  1. Working mode: Used to indicate the current working mode of the device
  2. Status information: Displays the current working status.
  3. Progress display: Displays the current operation progress, such as showing progress when programming data.

2.1.4.5.3 Idle State

2.1.4.5.3.1 Without Project File

image-20260513161830331

2.1.4.5.3.2 Device with Project File Loaded

image-20260513161933660

  1. Project file name carousel.
  2. Project file basic information carousel, including firmware checksum, serial number, and other basic information.
  3. Current device status.
tip

With firmware upgrades, the carousel display information may be adjusted. This document will not provide additional notices. Please pay attention to the carousel information display.

2.1.4.5.3 Online Mode

When the device is connected to the PowerWriter client software, the device will display the working mode and status changes in real time. In online mode, the display mode is always Display Mode 2. Please refer to Display Overview. Online mode mainly includes the following modes:

  • USB mode (connected to the client)
  • Bluetooth mode (connected to the PowerWriter WeChat Mini Program)
  • AT mode (communicating with the device using the PowerWriter AT Core open-source library)
  • Debug mode (when IDEs such as Keil/GDB/IAR are connected to the device)
  • UART CDC forwarding (when the device is in CDC forwarding state)
  • Other modes

In online mode, all working status processing follows the same information flow. This section uses USB mode as an example to illustrate the display content under different states.

2.1.4.5.3.1 Communication Established

image-20260513162311065

After communication is established, the current working mode and status will be displayed.

2.1.4.5.3.2 Progress Display

image-20260513162320659

Some online commands also display progress information. For example, loading data will show a progress bar at the bottom, as shown in the figure above.

2.1.4.5.3.3 Error Occurrence

image-20260513162741045

During communication, if an error occurs, the error description will be displayed in real time.

2.1.4.5.3.4 Communication Disconnected

image-20260513162849214

When disconnected, it displays that the device has been disconnected, as shown in the figure above.

2.1.4.5.3 Offline Mode

2.1.4.5.3.1 Standard Mode

In offline programming mode, the OLED will display current project information, working status, progress, BUSY, success or failure status, as shown in the figure below:

image-20260513135408132

  1. Current project file scroll display.
  2. Project file basic information display.
  3. Busy/Success/Failure status display (BUSY/OK/NG).
  4. Progress display.
2.1.4.5.3.2 When an Error Occurs

image-20260513162937000

When an error occurs during offline programming, the detailed error reason will be displayed. Based on this information, you can troubleshoot the error, as shown in the figure above.

2.1.4.5 Features

  • Supports data encryption.

  • Supports project import/export.

  • Supports loading encrypted projects to PowerWriter® for offline production control.

  • Supports reading offline projects from PowerWriter®. (Note: correct password required).

  • Supports online chip Program Flash area reading.

  • Supports online chip Program Flash area read address and read size settings, full chip reading function, making it easy to read target chip firmware data.

  • Supports online chip blank check.

  • Supports online chip erase. Developers and users can directly erase the target chip through the software.

  • Supports online programming of Program Flash area data. Users can write firmware via online programming without having to use offline mode or debuggers like MDK/IAR/CUBEIDE.

  • Supports online verification of Program Flash data.

  • Supports online automatic programming, automatically executing erase, write, verify, and update Option Byte functions.

  • Supports online target chip reset.

  • Supports setting read protection: Level-0, Level-1, Level-2 levels can be set, and automatically identifies whether the user's protection bits are enabled.

  • Supports complete Option Byte settings list.

  • Supports complete Option Byte default settings.

  • Option Byte supports multiple languages.

  • Supports automatic recognition of Option Byte options and execution of corresponding operations.

  • Supports online factory Option Byte restore

  • Supports online Option Byte reading

  • Supports reading option bytes of locked chips

  • Supports online Option Byte writing

  • Supports saving user-defined option bytes. Users can save configured option bytes to a file and send it to the programming factory or use it for other purposes

  • Supports loading user-defined option bytes from saved files into the project

  • Option Byte dynamic real-time synchronization, automatically syncs to PC client when connected to target chip

  • Supports Bank automatic recognition

  • Supports multiple Option Byte update methods

    No operation before programming -> No operation after programming

    No operation before programming -> Write user-defined Option Byte after programming

    Restore factory Option Byte before programming -> No operation after programming

    Restore factory Option Byte before programming -> Write user-defined Option Byte after programming

  • Supports online reading of target chip Chip ID, making it easy for users to check Chip ID. Non-contiguous Chip IDs are automatically presented in continuous address format.

  • Supports online reading of target chip internal data at any address, mainly for developer debug analysis of target chips, with configurable read address and read size. See relevant chapters for details. Mainly used for:

    Reading any memory data

    Reading any Flash data

    Reading any register data, etc.

  • Supports automatic online software upgrade (when network is available)

  • Supports multiple languages, fully supports mainstream ARM Cortex-M chips

  • Supports multiple erase methods: Page erase, full chip erase, Bank automatic recognition erase (no user selection required)

  • Supports multiple voltage selections: 1.8V/3.3V/5.0V or user-defined reference voltage

  • Supports free adjustment of programming speed, 5KHz~10MHz speed freely adjustable

  • Supports online buzzer notification tones. For definition rules, refer to the signal definition description chapter

  • Supports serial number writing, with configurable serial number address, initial value, step size, and endian mode

  • Supports serial number decimal and hexadecimal display switching

  • Supports serial number address legality check (automatically checks for overlap with other setting addresses)

  • Supports offline programming count setting, up to 4.2 billion times

  • Supports automatic chip detection, auto start/stop programming when chip is inserted

  • Supports setting auto chip detection stabilization time, default 100ms

  • Supports setting chip removal delay time during auto programming, default 100ms

  • Supports decimal and hexadecimal display switching for programming count settings

  • Supports legality check of programming count setting parameters

  • Supports starting target chip after programming (Reset & Run)

  • Supports turning off power output after target chip programming. In batch programming, turning off power after programming effectively protects chips from being removed from the programming socket while powered.

  • Supports setting power stabilization time or power-down stabilization time before and after programming (valid when power output on/off option is enabled)

  • Supports RESET pin signal control, with the following three modes

    Output constant low level

    Turn off output (high impedance state)

    Output reset then turn off (generate reset signal before programming)

  • Supports data verification: verifies whether data programmed to the target chip is correct, enabled by default

  • Supports UID-based online chip authorization programming via ICWorkshop official authorization server

  • Supports Power Writer built-in offline authorization algorithm for chip authorization

  • Supports flexible configuration of Power Writer built-in offline authorization algorithm key storage address, key size (4/8/12 byte), key endian mode, and user-defined password function

  • Supports user-defined offline authorization algorithm function, beyond the existing modes

  • Supports automatic generation of random offline authorization algorithms. Power Writer can automatically generate random offline authorization algorithms, each unique with near-zero probability of duplication. Supports algorithm strength check and provides manual adjustment reference suggestions. Users can manually adjust or regenerate until satisfied.

  • Supports exporting Sample Project for custom offline authorization algorithms. Users simply need to compile the exported source code into their project to implement the offline authorization algorithm, convenient and fast. Through a comprehensive system kernel scheduling mechanism, Power Writer can execute concurrent operations

  • Supports complete online operation log display, providing timely user notifications. Logs mainly include the following colors

    Light blue: Represents general operation results

    Green: Represents successful operations

    Red: Represents errors or other critical information, such as Power Writer disconnection

    Yellow: Represents warnings, possible operation issues, or potential setting problems

  • Supports log reset, log saving. Want to save operation records? Try saving the log for backup, so you can clearly see the last operation flow when encountering problems in the future

  • Supports encrypted saving and loading of programming configuration parameters

  • Supports complete chip Flash space mapping, displayed in HEX view, allowing users to intuitively see the loaded raw data

  • Supports Flash data area copy and paste operations, allowing users to edit the Flash data area

  • Supports Flash data area address jumping, allowing users to quickly jump to specified addresses

  • Supports multi-segment firmware programming function with no limit on firmware quantity. Multi-segment firmware can display real-time firmware start address, end address, size, and CRC32 information

  • Supports custom firmware addresses. Users can customize addresses for binary format firmware and check address legality

  • Supports rich firmware formats: bin/Hex/S19/pkg formats (pkg format is ICWorkshop's custom format)

  • Supports adding random array function with no limit on the number of random arrays (under development)

  • Supports complete chip sector table viewing, allowing intuitive viewing of chip sector information: start address, end address, and size

  • Supports automatic identification of firmware corresponding sector information. When selecting firmware, the corresponding sectors can be seen

  • Supports online custom sector erase. Users can erase specified sectors online

  • Supports Bank automatic recognition. For single/dual Bank chips, when users sync modify or read Option Byte, the sector table follows the Option Byte settings for switching

  • Supports random filling of selected sector tables. Users can fill remaining free parts of Flash with random data

  • Supports starting offline programming via CTRL control signal

  • Supports manual programming: press the button to start programming

  • Supports LED status indication: LEDs indicate the operating status of the offline programmer. Four independent multi-color LEDs display POWER / BUSY / OK / NG status, rather than a single LED, making it more intuitive

  • Supports ICWorkshop server remote download

  • Supports ICWorkshop chip mass production authorization

  • Supports third-party self-built authorization server authorization

  • Supports machine signal output, providing NG and OK signals

  • Supports device current configuration reading (Note: some sensitive information will not be read and displayed)

  • Supports one-click firmware upgrade: simple and convenient, ensuring easy product upgrades. Software auto device detection: insert the device into USB and the software automatically detects the connection, no manual operation required

  • Supports programmer-to-target-chip data encryption, preventing user firmware data theft

  • Supports data encryption: device and PC communication data is encrypted multiple times to ensure data security

  • Device storage data encryption: firmware data stored in the device uses multiple encryption algorithms to ensure data cannot be decrypted

  • Supports automatic programming address validity detection to ensure program runs correctly

  • Multi-firmware simultaneous programming supports address overlap check

  • Compatible SWJ pin signals

  • Supports ARM core chip Debugger / Trace function. Power Writer is not just an online programmer and production programmer, but also a full-featured Debugger. It supports not only Cortex-M chip debugging but also Cortex-A CPU debugging

  • Mainstream USB HID communication method for debugging ARM core chips as a Debugger

  • Supports reading the last offline operation result for quick self-diagnosis of errors

  • Supports online simulation of offline programming. Through this function, all configured information can be written online, refer to smart automatic programming

  • Integrated serial port assistant

  • One-click export of the complete chip list currently supported by PowerWriter®

  • Supports multi-level speed adjustment. Standard edition supports up to 20MHz clock speed, professional edition speed reaches up to 50MHz

  • Supports option byte buffer direct editing, loading, and saving

  • Supports memory extension pages, such as: EEPROM, OTP, Flash loader, Data and other virtual block read/write

  • Supports adding random block function

  • Supports multi-firmware document format, segmented loading

  • Supports multi-firmware document format, merged loading

  • Supports real-time viewing of wiring reference for the currently selected chip

  • Supports CID reading

  • Supports programmer reserved data read/write

  • Supports adding notes to Pkg project files

  • Supports binding Pkg project files to programmer SN, with no limit on the number of bindings

  • Supports Pkg specified UID programming range

  • Supports target chip protocol layer encryption for programming.

  • Supports server remote online authorization. Production authorization can be controlled through ICWorkshop's built-in authorization server.

  • Supports third-party self-built server online authorization. By using the ICWorkshop authorization server development kit, third-party users can quickly build their own authorization server and customize authorization algorithms, independently controlling key product security authorization algorithms. ICWorkshop serves as the platform provider for production programming.

  • Supports built-in automatic Matrix offline authorization.

  • Supports ICWKEY asymmetric encryption algorithm hardware authorization algorithm. See the hardware authorization module user manual for details.

  • Supports custom ICWKEY secondary development. (requires official authorization)

  • Supports factory mode.

2.1.4.6 Supported Chips

  • STM32 (STMicroelectronics) Full Series
  • STM8 (STMicroelectronics) Full Series
  • GD32 (GigaDevice) Full Series
  • MM32 (MindMotion) Full Series
  • HK32 (Hangshun) Full Series
  • CS32 (Chipsea) Full Series
  • Zbit32 (Zbit Semiconductor) Full Series
  • HC32 (HuaDa Semiconductor) Full Series
  • Artery (Artery Technology) Full Series
  • Nations (Nations Technologies) Full Series
  • SINOMICON (SINOMICON) Full Series
  • Geehy (Geehy Semiconductor) Full Series
  • Nuvoton (Nuvoton) Full Series
  • WCH (WCH)
  • Aisinochip (Aisinochip)
  • Synwit (Synwit)
  • innostar (Innostar)
  • CMIOT (CMIoT)
  • CKS (CKS)
  • CW32 (Wuhan XinYuan)
  • Cmsemicon (Cmsemicon)
  • UNICMICRO (Unicmicro)
  • Puya (Puya Semiconductor)
  • PANCHIP (PANCHIP)
  • PAI-IC (PAI-IC)
  • LCM 8-bit + 32-bit (LCM)
  • CubicLattice (CubicLattice)
  • edgeless (Edgeless)
  • Linko (Linko)
  • Nordic (Nordic Semiconductor)
  • FMD (Fremont Micro Devices)
  • Qorvo (Qorvo)
  • ChipNexus (ChipNexus)
  • SinoMCU (SinoMCU)
  • HED (HuaDa Electronic)
  • Renesas (Renesas)
  • RMW (RMW)
  • A1SEMI (A1SEMI)
  • Air (Air)
  • AUCU
  • GFCHIP (GFCHIP)
  • MH (MH)
  • TAE (TAE)
  • XK32
  • AisinoChip (AisinoChip)
  • AMICRO (AMICRO)
  • Autochips (Autochips)
  • Dascom (Dascom)
  • FCM (FCM)
  • Flagchip (Flagchip)
  • FMSH (FMSH)
  • HCFA (HCFA)
  • HELLO-SI (HELLO-SI)
  • Hoperf (Hoperf)
  • HSEC (HSEC)
  • LightNing (LightNing)
  • LinkedSemi (LinkedSemi)
  • Mesilicon (Mesilicon)
  • Metanergy (Metanergy)
  • Microchip (Microchip)
  • MKSEMI (MKSEMI)
  • Mysentech (Mysentech)
  • NXP (NXP)
  • Runjet (Runjet)
  • Silan (Silan)
  • SineMicro (SineMicro)
  • SinOne (SinOne)
  • SoulSemi (SoulSemi)
  • Synvee (Synvee)
  • TI (Texas Instruments)
  • UNICMICRO (Unicmicro)
  • XXSC (XXSC)
  • Yuntu (Yuntu)
  • More brands being adapted continuously
tip

The above list is not a fully updated list. Please visit the official website query portal for official compatibility information: PowerWriter® Compatibility Query.