Need Help? +44 (0) 123 4567
You can add your content here.

Programmers

Filters
Featured
Popularity
Date
Set Ascending Direction
View as Grid List
Items 1-24 of 29
24
36
48
60

A usb programmer is not one universal tool category, so choose by target first. The CH341A EEPROM Flash Programmer is for 24xx Series EEPROM and 25xx Series SPI flash, the USBasp AVR ISP Programmer is for ATtiny and ATmega chips over ISP, the Waveshare ST-LINK V2 (mini) handles SWIM for STM8 and SWD for STM32, and USB-to-TTL tools such as the CH340G adapter or CP2102 module are for UART communication and flashing rather than full-chip universal programming.

  1. 13123
    Logic Analyzer Test Probe
    SAVE
    As low as $0.1700
    Rating:
    91%
Page
24
36
48
60

Which programmer fits your target?

Task / target Best tool family Example product Why it fits What it does not replace
Flash a BIOS chip or read an 8-pin memory device EEPROM / SPI flash programmer CH341A EEPROM Flash Programmer Supports 24xx Series EEPROM and 25xx Series SPI flash, which makes it the right fit for BIOS recovery and similar memory work. Not an AVR, STM32, PIC, or Nuvoton microcontroller programmer.
Program a bare ATtiny or ATmega, or restore an AVR bootloader AVR ISP programmer USBasp AVR ISP Programmer Made for ATtiny and ATmega series microcontrollers over ISP, so it fits AVR boards and loose AVR chips. Does not debug ARM targets and does not replace a UART adapter.
Flash or debug an STM32 or STM8 board STM programmer / debugger Waveshare ST-LINK V2 (mini) Supports SWD for STM32 and SWIM for STM8. That is what makes it the STM-specific choice here. Not a general USB serial adapter and not for PIC or AVR families.
Program or debug PIC and dsPIC Flash devices PIC programmer / emulator PICKIT3.5 PIC/dsPIC Programmer MPLAB IDE compatible and aimed at PIC and dsPIC Flash microcontrollers. Does not cover STM32, AVR, or memory-only BIOS flashing jobs.
Work with Nuvoton microcontrollers Vendor-specific ICP programmer NU-Link Programmer for Nuvoton Built for Nuvoton 8051 1T, M0, and M4 microcontrollers, with online and offline download modes. Vendor-locked to Nuvoton rather than a general-purpose tool.
Debug ARM targets across more than one vendor ARM debug probe j-Link OB ARM Debugger Supports both SWD and JTAG, so it fits broader ARM debug work than an STM-only probe. Not the low-cost answer for BIOS chips or simple UART console access.
Open a serial console, flash over UART, or connect to a router or dev board USB-to-serial adapter CH340G USB to TTL Converter, CP2102 USB to UART Module, or PL2303 USB to TTL Converter These are USB-to-serial tools for UART communication, programming, and debugging. They are not universal memory programmers and do not replace ISP, SWD, or JTAG tools.
Flash an ESP-01 or ESP-01S with minimal wiring Board-specific UART downloader USB to ESP-01/01S Downloader Targets ESP-01 and ESP-01S directly and simplifies setup for those modules. Not the right choice for general AVR, STM32, or BIOS programming.
See whether UART, I2C, SPI, or CAN signals are actually present Logic analyzer 24MHz 8-Channel Logic Analyzer Made for debugging digital protocols including UART, I2C, SPI, and CAN. It shows traffic; it does not flash chips or replace a programmer.
Identify or measure loose components on the bench Component tester LCR-T4 Multifunction Component Tester or LCR-T7 Tester with IR and Li-ion Useful for identifying parts and checking values before repair or assembly. These are for measurement, not programming chips.

Stock Arduino boards do not need a programmer for sketch upload because they already use a bootloader and USB cable. A separate programmer mainly makes sense for bare AVR chips, bootloader recovery, or direct ISP access.

Compatibility, voltage, and connector checks before you buy a programmer

Product family Target chips/boards Interface/connector Voltage note Common extra part or caution
CH341A memory programmer 24xx Series EEPROM, 25xx Series SPI flash, BIOS chips ZIF socket, SOIC8/SOP8 workflows 1.8V chips need a 1.8V adapter module, which is common on newer laptop BIOS chips. A SOIC8 clip is for in-circuit flashing of 8-pin BIOS or flash chips; the socket path is for desoldered DIP chips or SMD chips used with a SOP8/SOIC8-to-DIP8 adapter. In-circuit BIOS flashing often fails because the board loads the SPI lines and the programmer’s 3.3V rail can sag, so desoldering is the repeatable path. For a process overview, see how BIOS clip flashing works and when chip removal may be the better option.
USBasp AVR ISP ATtiny and ATmega AVR chips ISP, with 10-pin and 6-pin connectors included Fresh 1MHz AVR chips often need slow SCK support; this unit has adjustable clock frequency from 1.5 kHz to 200 kHz. Check which ISP header your board exposes before ordering cables or adapters.
ST-LINK for STM8/STM32 STM8 and STM32 boards SWIM or SWD The Waveshare ST-LINK V2 (mini) provides 3.3V and 5V outputs and includes a 500mA self-recovery fuse. Verify power expectations before wiring. Debugger/programmers may expose power pins, but they should not be treated as a universal power source for every target board.
PIC / dsPIC programmer PIC and dsPIC Flash microcontrollers PIC programming/debug connection PICKIT3.5 supports 2.0V to 6.0V operation. It requires external power for the PIC chip, and VDD must be connected to activate the data line.
USB-to-TTL serial adapters UART targets, serial consoles, ESP32, ESP8266 TX/RX/GND/VCC serial header ESP32 and ESP8266 use 3.3V logic only; 5V on RX/TX can damage the chip. The CH340G USB to TTL Converter supports 3.3V and 5V TTL levels based on its VCC pin connection, the CP2102 module has an on-chip regulator but its 3.3V output cannot power a microcontroller, and the PL2303 adapter provides dual 3.3V and 5V outputs. If you are flashing a board with onboard USB-UART already, a separate adapter may be unnecessary; many ESP32 boards only need a 3.3V UART path when onboard USB is absent or when you need direct serial access.
ESP-01 / ESP-01S downloader ESP-01 and ESP-01S modules Module-specific socket Uses regulated 5V USB input for the board while handling the ESP module interface automatically. Best fit when the target is specifically the ESP-01 form factor, not general ESP32 boards.

Software and driver expectations by tool

  • For the CH341A EEPROM Flash Programmer, Windows users often work with NeoProgrammer or AsProgrammer, while Linux and macOS users take the flashrom or IMSProg route.
  • On Windows 10 and 11, the USBasp AVR ISP Programmer needs a libusb or WinUSB driver installed through Zadig. On Linux, it often also needs a udev rule.
  • If avrdude reports cannot set sck period. please check for usbasp firmware update, that warning is usually benign. If you do want to update USBasp firmware, expect to need a second programmer or a spare Arduino.
  • The 24MHz 8-Channel Logic Analyzer uses the sigrok software path, usually through PulseView. Linux users may also need udev rules for logic analyzer clones.
  • PICKIT3.5 PIC/dsPIC Programmer fits the MPLAB IDE ecosystem, while the NU-Link programmer is positioned for Keil and IAR workflows.
  • The CH340G USB to TTL Converter and the USB to ESP-01/01S Downloader may both require CH340 driver installation. The CP2102 USB to UART Module is often chosen for its better driver reputation than CH340-class adapters, even though both are functionally suitable for normal flashing and serial work.

Spec matrix: what each product actually does

If you are comparing by hard specs rather than product type, this matrix shows the main protocol, the key stated limit, and the practical catch that tends to matter most. STM32 users choosing between external probes may also want to compare against STM boards that pair naturally with ST-LINK or J-Link style debugging.

Product Family/type Interface/protocol Key stated spec Best for Main gotcha
CH340G USB to TTL Converter USB-to-serial converter module UART / TTL serial, USB-A 30mm x 16mm size; 3.3V or 5V TTL based on VCC pin connection Compact serial programming and console access Driver installation may be required
USBasp AVR ISP Programmer AVR ISP programmer ISP Adjustable clock frequency from 1.5 kHz to 200 kHz; on-board over-current protection ATtiny and ATmega programming, including slow-clock targets Driver setup is part of first use on many systems
LCR-T4 Multifunction Component Tester Multifunction component tester Component test terminals 128*64 LCD; resistance to 50MΩ, capacitance to 100mF, inductance to 20H Sorting and checking discrete parts on the bench Highly sensitive to static and damaged by charged capacitors
CP2102 USB to UART Module USB to UART bridge UART, full-speed USB 2.0 300bps to 1Mbps baud range; 12 Mbps USB 2.0 support General UART links with fewer driver complaints Its 3.3V output cannot power a microcontroller
PL2303 USB to TTL Converter USB to TTL converter UART / TTL serial 70 bps to 12 Mbps baud support; dual 3.3V and 5V outputs Portable serial work and STC downloading Check target voltage before wiring
24MHz 8-Channel Logic Analyzer USB logic analyzer 8-channel digital analysis CY7C68013A chip; 24MHz maximum sampling rate Debugging UART, I2C, SPI, and CAN activity Sample rate is not the same as guaranteed signal bandwidth
Waveshare ST-LINK V2 (mini) STM8/STM32 programmer and debugger SWIM and SWD 500mA self-recovery fuse; upgradable firmware STM8 and STM32 in-circuit programming and debugging Do not assume its power pin should supply every target board
PICKIT3.5 PIC/dsPIC Programmer PIC programmer and emulator PIC programming/debug interface, full-speed USB 2.0V to 6.0V support; Programmer-to-Go up to 512K byte flash; 12 Mbits/s USB PIC and dsPIC Flash development in MPLAB External target power is required and VDD must be connected
j-Link OB ARM Debugger ARM debugger/programmer SWD and JTAG via Micro USB host connection Unlimited flash breakpoints; unique ID for multi-device operation ARM debugging across broader toolchains Heat-shrink protection instead of a rigid enclosure
CH341A EEPROM Flash Programmer EEPROM/Flash memory programmer 24xx / 25xx memory programming In-circuit capability; 500mA fuse for motherboard protection Low-cost BIOS flashing and memory reads/writes Interruptions during programming can damage the job
NU-Link Programmer for Nuvoton 3-in-1 ICP programmer and emulator ICP / emulation / online and offline download Can save flash data to the device for standalone use; supports Keil and IAR Nuvoton 8051 1T, M0, and M4 development or production Only relevant if your target is Nuvoton
LCR-T7 Tester with IR and Li-ion Handheld component tester Component test terminals, IR receiver 160 x 128 TFT LCD; automatic Zener diode detection from 0.01-30V More advanced component characterization and IR checks Cannot connect to a computer for logging
USB to ESP-01/01S Downloader ESP8266 programmer ESP-01/ESP-01S socketed UART flashing Integrated automatic download circuit, so no buttons are required Fast setup for ESP-01 and ESP-01S firmware uploads Specific to that module format rather than a general UART tool

When not to buy the cheapest programmer option

  • If you already own an Arduino and only need a one-off AVR bootloader burn, Arduino-as-ISP is the zero-budget alternative to a USBasp, but it is slower and commonly needs the 10µF reset-cap fix.
  • If you already have a Raspberry Pi board, Raspberry Pi or Pico plus flashrom is a recognized alternative to a CH341A for occasional SPI flashing, especially if you are comfortable on Linux.
  • If you need parallel EEPROM, 27-series EPROM, or broader chip coverage than 24xx and 25xx memory, a CH341A is the wrong endpoint. That job points toward universal programmers such as XGecu T48, XGecu T56, or TL866II+.
  • For STM32-only work, the Waveshare ST-LINK V2 (mini) is enough. If you expect ARM work across multiple vendors, moving up to a j-Link OB debugger-class tool is the more appropriate call.
  • For normal ESP32 or ESP8266 UART flashing, a serial adapter such as the CP2102 USB to UART Module is enough. A dedicated downloader is most useful when the target is specifically an ESP8266 ESP-01 or ESP-01S module, or when you want the convenience of the ESP-01/01S downloader with automatic download circuitry.
  • For digital protocols such as I2C, SPI, and UART, a 24MHz 8-channel logic analyzer is often the better first buy than a programmer. If the fault is analog, timing-edge quality, or power-related, you should be comparing against an oscilloscope instead.

FAQs on Programmers

Will one programmer work with every chip?

No — CH341A covers 24xx Series EEPROM and 25xx Series SPI flash, USBasp is for ATtiny and ATmega AVR chips, Waveshare ST-LINK V2 (mini) is for STM8 and STM32, PICKIT3.5 is for PIC and dsPIC, and NU-Link is for Nuvoton devices. Product titles all say “programmer,” but the protocol and chip family decide whether the tool will work at all.

Do I need a SOIC8 clip for BIOS flashing?

Yes for in-circuit work on 8-pin BIOS and flash chips; the socket is for desoldered DIP chips or SMD chips used with a SOP8/SOIC8-to-DIP8 adapter. If the chip stays on the board, the clip is the part that makes contact with the SOIC8 package.

Do I need a 1.8V adapter?

Only for 1.8V chips; newer laptop BIOS chips commonly need it, and buyers often run into this with some GD25LQ parts. If the chip is 3.3V, the adapter is unnecessary, but using a 1.8V chip without one risks failed detection or damage.

Can I flash a BIOS chip in-circuit, or should I remove it?

In-circuit flashing often fails because the board loads the SPI lines and the programmer’s 3.3V rail can sag; desoldering is usually the more repeatable path. Clip flashing can work, but it is board-dependent rather than guaranteed.

Will USBasp work on Windows 10 or 11?

Yes — but it usually needs a libusb or WinUSB driver installed with Zadig, and Linux users often need a udev rule. That setup step is normal for USBasp and does not mean the hardware is faulty.

Do I need a programmer for Arduino?

No for a stock Arduino with its bootloader and USB cable; yes for bare AVR chips, bootloader restores, or when you want ISP access. If you are only uploading sketches to a normal Arduino board, the board’s own USB interface already handles that job.

Is a 24MHz logic analyzer enough?

Yes for I2C up to 400kHz, UART, and SPI up to a few MHz; the 24MHz figure is sample rate, and a common rule is sampling at least 4–10× faster than the signal. That makes this class of analyzer practical for low- to mid-speed digital buses, but not for fast signal-integrity work.

Glossary

Programmer
A hardware tool that writes firmware or memory data to a chip, but only for the chip families and protocols it supports.
Debugger / debug probe
A tool such as ST-LINK, j-Link, or PICKIT that can both program a target and inspect or control running code.
ISP
In-System Programming, usually referring here to AVR programming through a 6-pin or 10-pin header without removing the chip.
SWD
A two-wire ARM programming and debug interface used by STM32 boards and many other ARM microcontrollers.
EEPROM vs Flash
24xx devices are EEPROM and 25xx devices are SPI flash, so chip family selection in hardware and software matters.
SOIC8 / SOP8 / DIP8
Three common 8-pin package styles; SOIC8 and SOP8 are surface-mount packages, while DIP8 is the through-hole style that fits a ZIF socket directly.
UART / TTL serial
The serial communication link used by adapters like CH340G, CP2102, and PL2303 for console access, flashing, and basic debugging.
Logic level
The signal voltage a target expects, such as 1.8V, 3.3V, or 5V, and the mismatch that most often causes failed programming or damaged hardware.
To Top
Help
Shop
Account
0 Cart