HydraFW binary 1 Wire mode guide - hydrabus/hydrafw GitHub Wiki
HydraFW binary 1-Wire mode guide
This guide is updated towards firmware release HydraFW v0.9 Beta and later
This mode allows to control 1-Wire
- 1-Wire pin: PIN=PB11
For more details see https://github.com/hydrabus/hydrafw/wiki/HydraFW-1-wire-guide
Commands
Once the raw-wire mode has been selected, the following commands are available :
0b00000000
Return to main mode. ReturnsBBIO1
0b00000001
Mode identification. Returns1W01
0b00000010
Bus reset0b00000100
Read byte0b0001xxxx
Bulk raw-wire transfer0b00100000
SWIO read register0b00110000
SWIO write register0b11xxxxxx
Binary Auxiliary pins
Command details
0b00000010
)
Bus reset (This command sends a bus reset signal on the 1-Wire bus. No value is sent back.
0b00000100
)
Read byte (This command reads a byte on the 1-Wire bus, and sends it back to the user.
0b0001xxxx
)
Bulk 1-Wire transfer (In this mode, the last 4 bits of the command define the number of bytes to write (from 1 to 16) (Command 0b00010000
will send 1 byte). Hydrabus will wait for the defined number of bytes, then send a 0x01
(acknowledge).
0b00100000
)
SWIO read register (This command will issue a read register command on the SWIO line. The command expects 1 byte containing the register address and will output 4 bytes containing the register value (little endian)
0b00110000
)
SWIO write register (This command will issue a write register command on the SWIO line. The command expects:
- 1 byte containing the register address
- 4 bytes containing the value to write (little endian)
This command returns
0x01
if successful,0x00
in case of error.
0b0100xyz0
)
Configure 1-Wire peripheral (This allows to set the following parameters :
x
sets 1-wire interface using SWIO timings (see this document )y
sets the pull-up resistors (if 1 use internal on-board pull-up resistors about 50Kohm else use external on-board pull-up resistors)z
sets AUX[0] high (1) or low(0)
See https://github.com/hydrabus/hydrafw/wiki/HydraFW-1-wire-guide for explanation.
This command returns 0x01
if successful, 0x00
in case of error.