Loading devices
The Device panel is where you choose what actually gets drawn on the graph. Open it from the menu carousel (it's the first icon) or press 1 on desktop.
Header and panes
The Device panel has a fixed header bar at the top containing a search field, and (up to) two columns below it:
- Brand pane on the left — a vertical list of every brand in the database.
- Phone pane on the right — the scrollable list of devices, filtered by whatever you've picked in the brand pane and whatever you've typed in the search field.
The search field sits in the header and spans both panes, so you can search by name no matter which pane is visible.
On wide screens both panes show side-by-side. On narrow screens (mobile, or a very skinny panel) only one is visible at a time, and you switch between them with Brand / Devices buttons that appear in the header next to the search field.
Filtering by brand
Click a brand name in the brand pane to filter the phone list to just that brand. Click more brands to add them to the filter — the filter is additive, not exclusive, so selecting Sennheiser and Sony shows devices from both. A highlighted left border and a stronger text color mark the brands you've picked.
When one or more brands are selected, a Clear selected brands button appears at the top of the panel. Use it to reset the filter back to "show everything".
If no brand is selected, the phone pane shows every device in the database. Most people either use brand filtering to narrow things down or just search — both work fine.
Searching
The search field in the header does a live substring match against device names. It works together with brand filtering: if you've picked two brands and then type into the search box, you'll only see matching devices from those brands.
Clear the search box to get back to the full filtered list.
Loading and unloading
Click a device to load it. A colored curve appears on the graph, and the device row gets a highlighted left border and shows a bit of extra metadata — review score, price, review link, shop link if available. Click the device again to unload it (unless your site has locked loaded devices in place; that's an operator setting).
There's no limit on how many devices you can load at once, other than readability — three or four is usually the sweet spot for visual comparison.
If a device has a short loading spinner next to it while the file is being fetched, that's normal. Individual FR files are tiny and should load almost instantly.
Cross-site search
On squig.link-hosted sites, the phone pane also shows matching devices from other squig.link sites underneath the local results. These appear only while a search query is active and let you jump to another site that has the device you're looking for. See squig.link Integration for the full story.
Sites that aren't part of the squig.link network won't show cross-site results.
Uploading your own measurement
Switch to the Graph panel and scroll to the bottom of the selection list. You'll find a Graph Uploader with two buttons:
- Upload FR — load the file as a headphone measurement.
- Upload target — load the file as a target curve instead.
Click the button that matches what you're uploading, pick one or more .txt files from your computer, and they appear on the graph as if they were local devices or targets. The accepted format is the standard CrinGraph-style two-column frequency\tSPL text file — the same format modernGraphTool and CrinGraph both use for their on-disk device databases. You can use this to:
- Overlay your own measurements against the ones the site hosts.
- Compare a target curve you found online against the built-in targets.
- Sanity-check a file before sharing it.
Left/right channels and multiple files
You can select several files at once, and Upload FR pairs left/right channels into a single device — exactly like the site's hosted measurements. Name the files with a matching base name plus an L or R channel marker, separated by a space, underscore, or dash:
| Files you select | What you get |
|---|---|
HD600 L.txt, HD600 R.txt | One device "HD600" with L, R, and AVG curves |
HD600_L.txt, HD600-R.txt | Same — _ and - markers work too |
HD600 L.txt, HD650 L.txt, … | One device per base name, grouped automatically |
HD600 L.txt (no matching R) | A single-channel device showing just that side |
MyMeasurement.txt (no L/R marker) | One curve, as before |
Upload target also accepts multiple files (each becomes its own target); targets are always single-curve, so channel markers don't apply.
Uploaded files live only in your browser session — they're not uploaded anywhere. Reload the page and they're gone.
Once you have at least one curve on screen, the per-curve controls become useful. Working with curves covers them.