Skip to main content

U01 / U??

Status

FieldValue
Extension(s).u00.u99, commonly .u01
Common ecosystemBarudan U-series / FDR
Format familyMachine-specific file
Satin Studio statusResearching
Open / importNo
ExportNo
ConfidenceMedium for family identity.

What it is

U01 is a Barudan-family machine format. It is also described as FDR in some technical material. The extension family appears to allow numbered variants such as .u00 through .u99, with .u01 being common.

Satin Studio direction

Research lead for later commercial-machine support after DST-style expanded-stream work.

Versions and variants

The numbered extension is part of the risk: Satin Studio should treat U-series files as a family until the meaning of each suffix is verified.

File identification notes

Known structure:

  • Header begins with 128 ASCII 0 bytes (0x30).
  • Header continues with extent, command-count, final-position, and machine-editing fields.
  • Body starts at offset 0x100 in documented examples.
  • Body records are three bytes in control, x, y form.
  • Control byte contains sign/direction bits plus a command code.

Reported command functions include normal stitch, jump, fast/slow stitch modes, trim, stop, needle-bar selection, sequin on/off/jump, chain stitch, loop stitch, and presser-foot height.

Observed structure notes

  • Observed U-series records are three bytes in control, y, x order after a 256-byte header. The first 128 header bytes are commonly ASCII 0 (0x30).
  • Control bit 0x20 negates X and bit 0x40 negates Y after Y-axis inversion. Low five command bits identify stitch, jump, speed, trim, stop, needle, and end operations.
  • Observed commands: 0x00 stitch, 0x01 jump, 0x02 fast stitch, 0x03 fast jump, 0x04 slow stitch, 0x05 slow jump, 0x06 top trim, 0x07 bobbin trim, 0x08 stop, 0x09 through 0x17 needle changes, 0x18 end, and rare 0x2B machine postfix end.
  • Observed writers fill bytes 0x00..0x7F with ASCII 0, then write little-endian extents, an unknown 32-bit zero, command count, final position, and zero padding to offset 0x100.
  • Observed writers set high bit 0x80 on command records, set 0x40 for nonnegative Y, and set 0x20 for nonpositive X before writing absolute magnitudes.
  • Observed writers terminate with F8 00 00, which corresponds to the low five-bit end command with sign/high bits set.

Structure sketch

U-series files use a fixed header prefix and Barudan-style records:

struct BarudanUFile<'a> {
zero_prefix: [u8; 128], // documented as 128 ASCII '0' bytes: 0x30
header_rest: [u8; 128], // extents, counts, final position, machine-edit fields
records: &'a [BarudanURecord], // body starts at offset 0x100 in documented examples
}

struct BarudanURecord {
control: u8, // 0x20 negates x; 0x40 negates y; low five bits are command
y: u8,
x: u8,
}

enum BarudanUCommand {
Stitch, // 0x00
Jump, // 0x01
FastStitch, // 0x02
FastJump, // 0x03
SlowStitch, // 0x04
SlowJump, // 0x05
TopTrim, // 0x06
BobbinTrim, // 0x07
Stop, // 0x08
NeedleChange { needle: u8 }, // 0x09..0x17
End, // 0x18 or rare control 0x2B postfix
}

What we still need

Known-machine U-series files, extension suffix mapping, needle/color behavior, and command compatibility tests.