What is a .hlx file?
A .hlx file is a single Line 6 Helix or HX preset: one patch, exported from the hardware itself or from HX Edit. Despite the unfamiliar extension it is not a binary blob — a .hlx is plain, human-readable JSON, so it can be opened and inspected by anything that can read a text file. Helrig opens .hlx files directly in the browser, with no Line 6 software installed.
What is inside one
Every .hlx is a JSON document with four top-level keys: schema, version, meta and data. The preset itself lives under data:
data.meta— the preset name, the application that wrote it (HX Edit,Helixwhen the device exported it itself, orHelix Native), and a packed firmware version.data.device— a numeric id for the hardware the preset belongs to. This is the field that distinguishes a Helix preset from an HX Stomp or HX Effects one.data.tone— the signal chain.dsp0anddsp1are the DSP paths, each holdingblock0…blockNplus its input, output, and split/join markers. Alongside them sitsnapshot1…snapshot8and acontrollermap that records footswitch, expression pedal and MIDI CC assignments.
A single block, trimmed, looks like this:
"block0": {
"@model": "HD2_DistScream808",
"@enabled": true,
"@position": 0,
"@path": 0,
"@stereo": false,
"Gain": 0.52,
"Tone": 0.65,
"Level": 0.67
}@modelis Line 6’s internal model name — here a Tube Screamer 808 — and the remaining entries are that block’s parameters, stored as normalised 0–1 values rather than the numbers printed on the knobs.
.hlx vs .hxb vs .hls
Three extensions turn up when moving presets around, and they are not interchangeable:
| Extension | Holds | Format |
|---|---|---|
.hlx | One preset | JSON |
.hxb | A whole-device backup — every setlist and slot | Binary container |
.hls | One exported setlist | Container |
Helrig reads all three. Opening a .hxb or .hls lists the setlists and slots inside, and any preset can be pulled out of one and edited as though it had been exported on its own.
Which devices a preset can come from
The data.device id maps to one of three hardware families, and they differ in ways that matter when a preset moves between them:
| Device | DSP paths | Blocks / path | Snapshots | Amp + cab |
|---|---|---|---|---|
| Helix Floor / LT / Rack | 2 | 16 | 8 | Yes |
| HX Stomp | 1 | 8 | 3 | Yes |
| HX Effects | 1 | 9 | 4 | No |
Helrig can convert a preset between these families and reports every change it had to make — amp and cab blocks dropped for HX Effects, snapshots beyond the target’s count, footswitch assignments with no matching switch on the destination.
How to open a .hlx file
Drop it onto the Helrig editor. The file is parsed in your browser — nothing is uploaded — and you get the whole signal chain: blocks and their parameters, amp and cab pairings, parallel splits, snapshots, and controller assignments. Edits export back out as a standard .hlx that the hardware loads the usual way.
Line 6’s own HX Edit opens .hlx files too, on a desktop with the software installed. Helrig needs neither, which is the point: any modern browser on a desktop, iPad or phone will do, and no account is required.
A note on where this comes from
Line 6 does not publish a .hlx specification. Everything above is read out of real files rather than from a document: the structure described here holds across all 1,246 presets in the corpus Helrig is developed and tested against, every one of which declares schema: “L6Preset” and version: 6.
That is a strong sample, not a guarantee. A firmware release could introduce a field this page has never seen, and Helrig is written to show a block’s raw internal name rather than invent a friendly one when it meets something unfamiliar.
Disclaimer
Helrig is an independent, one-person project. It isn’t built by, affiliated with, or endorsed by Line 6 or Yamaha — “Line 6”, “Helix” and “HX” are their trademarks.

