Satin Studio Manual

PES

Status

FieldValue
Extension(s).pes
Common ecosystemBrother / Baby Lock / Deco
Format familyMachine-specific file
Satin Studio statusSupported
Open / importYes
ExportYes
ConfidenceHigh for PEC-payload import and compact PES v6 export; PES metadata coverage is version-specific.

What it is

PES is the common home-embroidery format for Brother, Baby Lock, and Deco-family workflows. It is a hybrid format: the PES section stores higher-level design/application data, while the PEC section stores the low-level machine stitch payload.

Satin Studio behavior

Satin Studio imports PES as preserved stitches and exports Brother-compatible PES as the primary machine format.

Versions and variants

PES is version-sensitive. Satin Studio identifies signatures from #PES0001 through #PES0100, imports compatible embedded PEC stitch payloads, and writes #PES0060. Version-specific metadata that cannot be interpreted is reported rather than silently converted. See the PES versions index and PES file structure.

File identification notes

Common files start with a #PES signature followed by four version digits and a four-byte little-endian offset to the PEC payload. Satin Studio writes #PES0060 and stores a pointer to an embedded payload beginning with LA:.

Observed structure notes

Structure sketch

PES is a versioned wrapper with a pointer to an embedded PEC payload. The detailed byte map lives in PES file structure.

struct PesFile<'a> {
    signature: [u8; 8],                 // b"#PES0001", b"#PES0060", etc.
    pec_offset: u32,                    // little-endian offset after the signature
    pes_metadata: &'a [u8],             // version-specific PES-side data
    pec_payload: PecPayload<'a>,
}

struct PecPayload<'a> {
    label_area: &'a [u8],               // compatible payload begins with b"LA:"
    header_512: [u8; 512],
    stitch_stream: &'a [u8],
}

Compatibility evidence

Compatibility checks cover signatures, metadata, command boundaries, malformed records, and files from the machines and software named above. Unsupported variants stop with a specific report instead of being silently rewritten.