HydraFW Binary mode guide - hydrabus/hydrafw GitHub Wiki

HydraFW Binary mode guide

This guide is updated towards firmware release HydraFW v0.11 and later

Binary mode description:

Like the bus pirate, HydraBus can be used inwith a more compact protocol which allows scripting its usage

Note All hex (0x00) or binary (0b00000000) values below represent a raw byte, not an ASCII string.

Usage

Enter binary mode

Send 20 0x00 (null bytes) to Hydrabus. It should then respond with the string BBIO1

Main mode commands

Utilities

  • 0b00010100 Read ADC (PA1). Returns 2 bytes with the ADC value (big-endian).
  • 0b00010101 Read ADC (PA1) continuously. Returns ADC values continuously. Stop by sending 0x00.
  • 0b00010110 Read PWM frequency (PC6). Returns frequency in Hz (4 bytes), then duty cycle in % (4 bytes).

Auxiliary-pins

  • 0b11000000 Read auxiliary pins
  • 0b1101wxyz Write auxiliary pins
  • 0b11100000 Read auxiliary pins mode
  • 0b11110000 Set auxiliary pins mode

Auxiliary-pins are not available for all BBIO modes see each BBIO mode to check if available.

For more details on Binary Auxiliary-pins see https://github.com/hydrabus/hydrafw/wiki/Auxiliary-pins

Related information

Information about the bus pirate binary mode is available here : http://dangerousprototypes.com/2009/10/09/bus-pirate-raw-bitbang-mode/

In order to use Binary mode on any computer see Python 3.6+ library https://github.com/hydrabus/pyHydrabus