Firmware v4.5.1 is now available for the Binho Supernova and Pulsar. It brings a big jump in how much data a single transfer can move, a matching jump in throughput, and a major new capability: your adapter can now emulate an I2C or SPI device, not just drive one. You can install it in seconds, right from your browser.
Much larger transfers. A single SPI, I2C, or I3C transfer used to be capped at about a kilobyte. Now the Supernova moves up to 32 KB per transfer across I3C, I2C, and SPI, and the Pulsar moves up to 16 KB for I2C and SPI. Large register images, memory contents, and payloads that once took dozens of transfers now go in one.
And a lot faster. Alongside the bigger buffers, we reworked how data moves between the adapter and your host. Depending on the workload, that yields up to a 19x improvement in throughput on the Supernova and up to a 4x improvement on the Pulsar.
I2C and SPI target mode. The headline feature: the Supernova and Pulsar can now act as a target on the bus, emulating an I2C or SPI device instead of only controlling one. That lets you develop and test the other side of a bus, the host talking to your device, before the real silicon is in hand.
It runs on a new on-device emulation engine. Because the adapter answers each transaction itself, without waiting on the host PC, the emulated device behaves like real hardware: it responds at full bus speed, with none of the unnatural pauses you would see if every byte had to round-trip to a PC over USB.
I2C target supports three models:
- Memory: a plain register file your host preloads and reads back.
- EEPROM: page-wrapped writes, a busy window after a write (with NACK and ack-polling or clock stretching), and write protect.
- Register map: per-region access rules (read/write, read-only, write-only, write-1-to-clear, and reserved), with an optional no-auto-increment mode.
SPI target supports three as well:
- Memory: a full-duplex arena.
- Flash: a 25-series serial-flash command set (device ID, read, fast read, page program, status register, and write enable or disable) with a configurable JEDEC ID, page size, and write-cycle time.
- Register map: a command byte carrying read or write plus a 7-bit register address.
Every completed transaction is reported back to your host, so you can see exactly what the emulated device saw.
Getting it, and the new SDK. Update your Supernova or Pulsar in seconds at dfu.binho.io. To reach the larger transfers and target mode from your own code, use the latest CosmicSDK v1.5.1. There is also a new Python package, pyCosmicSDK v1.5.1, which is fully backwards-compatible with our previous Pulsar and Supernova SDKs and our popular SupernovaController library, all now unified into one Python package.