> Complete documentation index: [llms.txt](/llms.txt). Markdown versions of all pages are available by appending `.md` to page URLs.

# Binho Atira

> SWD debug probe for Arm Cortex-M, with metered target power, SPI flash programming and a USB-to-UART bridge

<figure class="product-photo"><img src="/files/binho-atira.jpg" alt="Binho Atira debug probe"><figcaption><p>Binho Atira debug probe.</p></figcaption></figure>

**In this guide:** [Setup](/hardware/atira/setup/) · [Hardware reference](/hardware/atira/reference/) · [Protocols](/hardware/atira/protocols/) · [Firmware](/hardware/atira/firmware/) · [FAQ](/hardware/atira/faq/) · [Troubleshooting](/hardware/atira/troubleshooting/)

## Summary

The Binho Atira is a USB debug probe for Arm Cortex-M microcontrollers. One probe provides:

* **SWD debug:** attach, halt, run, step, read and write registers and memory, hardware breakpoints.
* **Target flashing:** the Atira is a CMSIS-DAP probe, so stock [pyOCD](https://pyocd.io) programs the target's internal flash.
* **Target power:** a switched 3.3 V rail on the debug header, with voltage, current and power readings.
* **SPI controller and SPI NOR flash programming:** detect, erase, program and verify an external 25-series flash.
* **USB-to-UART bridge:** an ordinary serial port on the computer.

Drive it from the [Mission Control 3](/software/mission-control/) desktop app (MCU Programmer and MCU Debugger), from Python with [PyCosmicSDK](https://binhollc.github.io/pycosmicsdk/) 1.7.0 or newer, from C/C++ with [CosmicSDK](https://binhollc.github.io/CosmicSDK/getting_started/debug_probe.html) 1.7.0 or newer, or from pyOCD for flashing.

:::note
The Atira needs **Atira firmware 1.0** or newer. The SDKs refuse to open a probe with older firmware and report that an update is needed.

:::

## Not yet available

The binho.io product page describes the Atira's full feature set. These features are not in Atira firmware 1.0 and its SDKs. This page will cover them when they ship.

| Feature | Status in Atira firmware 1.0 / SDK 1.7.0 |
| ------- | ----------------------------------- |
| JTAG | Not available |
| RTT (Real-Time Transfer) | Not available |
| SWO trace | Not available |
| UPDI | Not available |

## Software

| Software | Version | What it covers |
| -------- | ------- | -------------- |
| [PyCosmicSDK](https://pypi.org/project/pycosmicsdk/) (Python) | 1.7.0 and later | `DebugProbe` (blocking) and `AsyncDebugProbe` (asyncio): power, SWD debug, SPI, SPI flash, UART bridge port |
| [CosmicSDK](https://binhollc.github.io/CosmicSDK/getting_started/debug_probe.html) (C/C++) | 1.7.0 and later | `libdebugprobe` with C++ (`debugprobe/DebugProbe.hpp`) and C (`DebugProbe_API_c.h`) headers |
| [Mission Control 3](/software/mission-control/) (desktop app) | 9.1 and later for device packs | MCU Programmer and MCU Debugger: flash, verify, erase, halt, step and set breakpoints, with no code. See [Install a device pack](/software/mission-control/tools/install-a-device-pack/) |
| [pyOCD](https://pyocd.io) | 0.44.1 verified | Program, erase and read back the target's internal flash |

A probe and a Supernova or Pulsar can be open in the same Python process.

Full Python API: [PyCosmicSDK debug probe guide](https://binhollc.github.io/pycosmicsdk/guides/debugprobe.html).