Documentation / Get started

Troubleshooting

Find what you see in the first column. Error names such as E_STATE_LOCKED are listed in the error codes.

You seeIt meansDo this
A paired device does not show up as connectedFinding devices on the local network works on a best-effort basis. It does not cross routers, guest networks with client isolation or VPN boundaries.Check that both devices run easysync and are on the same network. If they are not, add a relay on both devices with easysync relay add <url> (a relay sees IP addresses, timing and volume: What the relay sees), or check the firewall: see Network and ports.
The pairing fails with E_PAIRING_EXPIREDThe code was not used within its lifetime, or the inviting device is not reachable.Start a new invitation with easysync pair. A code can be used once and for 180 seconds only.
The pairing fails with E_PAIRING_CONSUMEDThe code was already used or cancelled. A joining device never tries the same code twice after the other device answered.Start a new invitation.
The confirmation digits differ on the two devicesSomeone or something may sit between the devices.Answer no on both devices and start a new invitation. If the digits differ again, do not continue and check your network.
E_STATE_LOCKEDAnother easysync process already uses the same state directory.Use that process: a daemon may already be running. Stop it with easysync daemon stop if you want to start another.
E_ENGINE_UNAVAILABLEThe command could not reach or start an engine, or the endpoint of the engine is not owned by your user account.Check that no other program uses the endpoint. Start the daemon with easysync daemon and run the command again.
E_STORAGE_FAILURE at start on a serverThe operating system's key store is not reachable, for example because there is no desktop session. easysync never falls back to another store by itself.Select the key file explicitly with the variable EASYSYNC_KEY_STORE set to file, on a headless machine. Do this only for a device that has no state yet; a device that already has state must be started inside its user's session, because the key file would be another identity. See Headless daemon and Reset and recovery.
E_CONFIG_INVALIDconfig.toml has an error. The message names the file and the key, never the value.Fix or remove the key. See Configuration file.
A transfer does not startThe receiver has not accepted the offer, or the policy for your device denies it.On the receiving device run easysync transfer list, then easysync transfer accept <id>.
A transfer stops with E_INSUFFICIENT_SPACE or E_QUOTA_EXCEEDEDThe receiving device has too little free space or has reached the limit for your device. E_QUOTA_EXCEEDED is not final: the sender tries again later.Free space on the receiver, or, on the receiving device, raise the limit for the sender with easysync peer policy <sender> --max-incomplete <size> (or --max-pending <n> for waiting offers).
A transfer ends with E_CANCELLEDOne side cancelled it, and the cancel is final.Send the file again.
Text does not arrive on the other deviceReceiving is off by default, the text is longer than the receiver's limit, or the text was marked as concealed.Check easysync peer policy <peer> on the receiving device and turn on --clip-receive. See Clipboard sync.
A command says that nothing was received since the engine startedeasysync clip paste shows the latest text received after the engine started.Receive a text first, and keep the daemon running.
The device lost its identity or refuses to start after a restorePart of the state, or an entry of the key store, is missing.See Reset and recovery. Do not reset a device that only has an unreachable key store.

If the table does not help, run easysync status. It shows the device, its fingerprint, the engine and any condition that needs attention. To see events while you try again, run easysync events. Events never show clipboard text, pairing codes or tokens.

Sources: error codes.