Skip to main content

BRO

Status

FieldValue
Extension(s).bro
Common ecosystemBits & Volts lead
Format familyMachine-specific lead
Satin Studio statusResearching
Open / importNo
ExportNo
ConfidenceLow-medium.

What it is

BRO is tracked as an embroidery format lead associated with Bits & Volts references.

Satin Studio direction

Research lead only.

Versions and variants

Unknown.

File identification notes

Reported structure includes a 256-byte header and x == 0x80 control-event encoding. Reported command values include stop and jump controls, but the full command map is not verified.

Observed structure notes

  • Observed BRO readers skip to offset 0x100 before reading stitches.
  • Normal stitch movement is a two-byte signed dx, dy pair. A first byte of 0x80 switches to a control form where an additional control byte follows.
  • Observed controls include 0x02 and 0xE0 as end-like commands, 0x7E and 0x03 as long signed 16-bit little-endian movement commands, and 0xE1 through 0xEF as needle-change controls followed by long movement.

Structure sketch

The observed BRO stitch stream starts at offset 0x100:

struct BroFile<'a> {
header: [u8; 0x100],
records: &'a [BroRecord],
}

enum BroRecord {
Stitch { dx: i8, dy: i8 }, // two signed bytes when first byte != 0x80
End { control: u8 }, // observed 0x02 or 0xE0 after marker
LongMove { control: u8, dx: i16, dy: i16 }, // 0x7E or 0x03; signed 16-bit LE
NeedleMove { needle: u8, dx: i16, dy: i16 }, // controls 0xE1..0xEF
UnknownControl { control: u8 },
}

What we still need

Known-source files, command mapping, and reader validation.