"A debugging probe based on the popular 1BitSquared Black Magic Probe design with a twist: the ability to operate wholly wirelessly via battery power and a Wi-Fi data link."

Open Debugging Probe Based on the Black Magic Probe

ctxLink is an open hardware, open firmware debugging probe, based on the Black Magic Probe (BMP), that supports Wi-Fi connectivity and battery powered operation. It implements SWD and JTAG interfaces for remote, cable-free programming and debugging of ARM Cortex-M microcontrollers.

Remote Debugging Done Right

When connected to a battery or powered from the target, ctxLink brings remote hardware to your source level debugger, even in situations where a USB cable might be impractical. Whether you’re debugging a robotic system, programming a shielded device, working around an awkward enclosure, or hacking on a project that’s just a little bit too far away from your sofa, ctxLink can help you bridge the gap.

And if your target is really remote? Like in another country remote? ctxLink can bridge that gap too. Just configure your router to forward incoming connections for the GDB server port to ctxLink, and your local debugger will gain access to the remote device.

Network deployment of ctxLink can be managed either through Wi-Fi Protected Setup (WPS) or by using HTTP provisioning with a smartphone.

Open Source

ctxLink is open hardware driven by open source firmware. Because it is based on the popular BMP, it benefits from an active community that brings support for new target MCUs. ctxLink is synchronized with BMP so additional MCU support from the BMP community can be implemented promptly.

Features

Usability Open hardware and open source firmware based on the BMP Uses built-in STM32 system bootloader for firmware updates Compatible with Windows, Mac, and Linux

Debugging Implements SWD and JTAG interfaces Supports a wide range of ARM Cortex targets, including ST, Atmel, Nordic, NXP, and others Includes a built-in GDB Server that can be used with a wide range of Integrated Development Environments (IDEs) Supports a wide range of target voltages (1.7 V to 5 V)

Connectivity Supports USB and Wi-Fi connections to the host computer Wi-Fi can be configured using WPS or through HTTP provisioning with a smartphone

Power Can be powered from the target (3 V to 5 V targets only) Can be powered by a LiPo battery (not included). Has been tested with Adafruit's 3.7V 1200mAh battery Battery can be charged through USB Can be used to power the target (up to 100 mA) regardless of whether ctxLink itself is powered from a battery or through USB



Specifications

Microcontroller : STM32F401RE

: STM32F401RE Wi-Fi module : Microchip WINC1500

: Microchip WINC1500 Physical: 89 mm x 33 mm, 4-layer PCB

Support & Documentation

You can find support for the basic features of ctxLink on the BMP Discord channel. You can use this invite link to get started. For more specific ctxLink support, check out the ctxLink repository wiki. The source code for ctxLink is in the ctxLink branch of the Sid Price fork of the Blackmagic Probe repository.

Manufacturing Plan

ctxLink will be fabricated and assembled by a US-based contract manufacturer (CM) and tested here in New Mexico. We used a CM for the last two prototype versions, as well, and we are confident this production run will go smoothly.

Fulfillment

Crowd Supply will be fulfilling orders to our backers and all questions regarding shipments should be directed to them. Take a look at their Frequently Asked Questions (FAQ) page for answers to the most common fulfillment questions.

Risks & Challenges

ctxLink is based on the stable hardware and software of the BMP. It has been under development for almost two years, as well, and the hardware design has been through several iterations. We have already received pre-production hardware from a CM, and the only changes required are a very minor layout improvement and some modifications to the silkscreen text. These adjustments have already been made, and we do not anticipate any further changes before we begin manufacturing ctxLink boards and sending them to backers.