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

# Binho Supernova: Setup

> Connect a Binho Supernova over USB-C, check that the computer sees it with PyCosmicSDK, and find its USB serial port for UART.

Connect a Binho Supernova to the computer and to the circuit, and check that it works.

## Connection to the Host PC

Connect the Supernova's USB Type-C port to the computer with the supplied USB Type-C to Type-A cable, or with the Type-A to Type-C adapter for a Type-C port. The Supernova is powered from USB; no external supply is needed. It is a USB 2.0 Full-Speed device (12 Mbps).

The Supernova is a USB HID device, so Windows and macOS need no driver. On Linux, allow the current user to access it once, as described in [Solving USB Connection Issues on Linux](/support/troubleshooting/solving-usb-connection-issues-on-linux/).

The Supernova also appears as a USB serial port (a COM port on Windows, `/dev/ttyACM*` on Linux, `/dev/cu.usbmodem*` on macOS) that carries its UART. Any serial terminal can open it while the other protocols run over HID.

### Check that the computer sees it

With [PyCosmicSDK](https://binhollc.github.io/pycosmicsdk/getting-started.html) installed (`pip install pycosmicsdk`):

```python
import pycosmicsdk

for d in pycosmicsdk.list_devices():
    print(d.model, d.serial_number, d.fw_version)
```

Nothing is sent to the adapter: the model, serial number and firmware version come from its USB descriptor. If the list is empty, check the cable and, on Linux, the permissions above. If the firmware version reads `bootloader` or `3.x.x`, see [Updating Firmware](/guides/firmware-updates/).

## Connection to the Test Circuit

<figure><img src="/files/Supernova%20Diagram.png" alt="Front of the Binho Supernova with its four device-under-test ports"><figcaption><p>The four front ports of the Supernova.</p></figcaption></figure>

The front of the Supernova has four ports for the device under test. Use the cable kit that matches the port:

| Port                   | Use it for                   | Voltage     | Cables in the box                                                                    |
| ---------------------- | ---------------------------- | ----------- | ------------------------------------------------------------------------------------ |
| I3C High-Voltage Port  | I3C, legacy I2C on I3C, SMBus | 1.2–3.3 V   | I3C harness with 2.54 mm female headers, male pin headers, I3C to Qwiic adapter      |
| I3C Low-Voltage Port   | I3C, legacy I2C              | 0.8–1.2 V   | Same I3C port kit                                                                    |
| Multifunction Port     | I2C, SPI, UART, GPIO         | 1.2–3.3 V   | 30-conductor ribbon cable and a breakout board to 2.54 mm headers                    |
| Dedicated I2C Port     | I2C (same bus), Qwiic devices | 1.2–3.3 V   | Qwiic to Qwiic cable, and Qwiic cables with male or female headers                   |

<figure><img src="/files/image%20(47).png" alt="Pin numbering of the Qwiic I2C, multifunction, LV I3C and HV I3C connectors"><figcaption><p>Pin numbering of each port. Pin 30 of the multifunction port is not connected.</p></figcaption></figure>

For the function of every pin, see the [Pinout Guide](/hardware/supernova/reference/#pinout-guide) in the Supernova user guide.

* Only one I3C port works at a time. Using the HV port disables the LV port, and the reverse.
* The I3C ports and the Multifunction and Dedicated I2C ports run on separate rails. A 1.2 V I3C bus and a 1.8 V SPI bus can run at the same time.
* The DETECT pin (pin 2) on the I3C ports tells the Supernova which harness is plugged in. Do not connect it to the board.

### Target Voltage (VTARG)

Each port has a target voltage (VTARG) pin that sets the bus logic level.

* **The board has no supply:** set the voltage it expects from Mission Control 3 or the SDK **before** enabling a bus. The Supernova powers the board through VTARG, up to 200 mA on the HV and multifunction rails and 350 mA on the LV rail.
* **The board has its own supply:** do not set a voltage. Select external voltage (`use_external_voltage()` in the SDK) and connect the board's logic supply to VTARG.

:::danger
On firmware 4.6.x and earlier, setting a voltage connects the Supernova's supply to VTARG even when the board already powers it.

:::

The I3C voltage is not saved: the I3C ports start unpowered every time the Supernova starts. Set it in every session.

Always connect ground between the Supernova and the device under test.

<figure><img src="/files/Supernova_LowRes_34_38.jpg" alt="Two Supernova setups driving I3C targets"><figcaption><p>Two Supernova setups driving I3C targets.</p></figcaption></figure>

## First Steps

* **Without code:** open [Mission Control 3](/software/mission-control/download-and-installation/), as a desktop app or in a Chromium browser at [mc3.binho.io](https://mc3.binho.io), and select the Supernova under Connected Devices.
* **From Python:** follow [Getting started with PyCosmicSDK](https://binhollc.github.io/pycosmicsdk/getting-started.html). The [Supernova user guide](/hardware/supernova/protocols/#examples) has I3C and I2C examples.
* **From C or C++:** see the [CosmicSDK documentation](https://binhollc.github.io/CosmicSDK/).
* **Check the firmware:** the examples on these pages assume firmware 4.6.x. See [Updating Firmware](/guides/firmware-updates/).

## Worked Examples on binho.io

Setups we built and wrote up, with the traps we hit:

* [Flashing STM32 firmware over I3C using Binho Supernova](https://binho.io/blog/flashing-stm32-firmware-over-i3c-using-binho-supernova/): the STM32H5 system bootloader over I3C.
* [Exploring I3C HDR-DDR on the ams OSRAM TMF8829](https://binho.io/blog/exploring-i3c-hdr-ddr-on-the-ams-osram-tmf8829/): whole measurement frames in HDR-DDR. Use firmware 4.6.1 or later for HDR-DDR.
* I3C on MEMS sensors: [STMicroelectronics](https://binho.io/blog/exploring-the-i3c-interface-on-stmicroelectronics-mems-sensors/) (LSM6DSV, LPS22DF), [Bosch Sensortec](https://binho.io/blog/exploring-the-i3c-interface-on-bosch-sensortec-mems-sensors/) (BMI323, BMP581, BMP585), [TDK InvenSense](https://binho.io/blog/exploring-the-i3c-interface-on-tdk-invensense-mems-sensors/) (ICM-45686).