I heard a lot of "horror" stories of noobs that do not know how to proceed in disaster situations, with their Zeus mobile node. Nothing to worry, just have patience and follow these instructions.
How to start fresh with a new Zeus node.
In case you had some issues in Zeus like:
- problems syncing
- force closed channels
- coop closing channels with low fee
- you want to migrate to another device or the old device is broken
I would recommend the following steps:
Scenario A - Migrate to a new device
It is much better to start fresh, with a new nodeID, new set of keys. Also for less stress in the process of closing channels, small UTXOs, lots of bloated txs history that could load up your wallet.
- Save your seed
- Use this procedure to import your LND aezeed into Sparrow
- Coop close all your channels in Zeus and wait until are all confirmed, you will see also the txs into Sparrow
- Uninstall Zeus and install again, latest version, fresh (strongly recommend to use Obtainium and now app store)
- create a new embedded node 6a. Wait for it to fully sync. 6b. At this stage, I recommend to prepare your Zeus properly:
- set good neutrino peers. Test the default ones to see the ping response. Depending on your location, some of them will have a long time response. If the ping is higher than 150-200ms, you better remove it from the list and add better ones. Here is a list with worldwide neutrino peers. Make your own list based on the ping and select the option to use only peers from list, not random.
- put Zeus in persistent mode. Go to settings - embedded - advanced - select persistent mode. When you will start opening channels this option is very useful, because it will maintain the LND service alive and even if you close the app, the service is still running in background and will keep alive the connections.
- Activate EGS (express graph sync) and also activate reset EGS at startup. This could make a bit slow Zeus to start but you always have a fresh updated graph sync.
- activate LSP, Default is https://0conf.lnolymp.us. In the same screen, activate simple taproot channels. Later will be useful.
- Go to settings - invoice - click on top right option icon and select Taproot type of address
- Go to main screen, swipe to the right the onchain tab and click on receive. It will generate a new Taproot address
- Send to that address all the sats you have in Sparrow (old Zeus imported). Put a decent fee, not too low. and wait to have 6 confirmations
- Once you have the funds confirmed, open your first channel to a well known node, LSP. Do not open with random unknown nodes, choose a good one, for example one of this list.
- Do not use all your funds ! Always leave an UTXO of like 50-100k for the anchors reserve. In case the mempool fees will increase drastically is better to have a reserve UTXO to be able to push the fees.
- Opening channels procedure. Let's consider that you had almost 2M sats in your old Zeus and you already moved them all to the new Zeus.
- open a 1M to Blixt node, or any other good node you want. I choose Blixt because I know is a LND node and also is supporting STC. You can set that in the opening channel screen, in advanced options.
- wait for the channel to confirm and also to have the new UTXO ready.
- open another channel of 500k to any other node from that list.
- wait for the channels to be confirmed and ready
- swap out 750k to Blink / Alby / coinos / walletano or whatever other simple custodial temporary LN account. It could be in batches or all at once, but must be all into same destination. The idea is to reuse part of the sats from already opened channels to open a new channel with Olympus LSP.
- do not swap out more than 50% of your existing channels.
- Once you got around 1M sats into the temporary LN account, open 1M channel with Olympus LSP. How to do that? Simply, hit the receive button from the main screen and put 1M sats. It will appear a message on top, that this transaction will use the LSP and ill incour some fees (around 10k sats).
- Pay that generated invoice from your temporary LN account. It will be paid to Olympus LSP and the LSP will open a channel towards your Zeus node, pushing all the sats into your side. Will deduct the fee from the total amount you've sent, but also will give you a plus 100k inboundund liquidity, so your channel will be in total 1,1M sats with 990k sats on your side, ready to be spend.
- Now is time to make a full backup of your node. Go to Settings - embedded node - disaster recovery.
- be sure the automatic backups are enabled
- do also an export of the data into clipboard. This will create a special encrypted string. Copy it into an external file and keep it safe. This is your LN channels backup that could be used later to recover.
- do also the backup to olympus server. That will keep a copy of this string to the LSP server. It also can be used to recover in case you lost your personal file.
- Done. Additionally if you want some more inbound in your new Olympus channel, just move out into the temporary LN accounts, with the amount you expect to receive through this channel. For example if you use the LN Address provided by Zeus (zeuspay.com) you will need some inbound liquidity into this channel with Olympus.
Scenario B - old Zeus node had issues
Let's say you had some problems with syncing, channels got force closed, database corrupted, app not responding correctly etc. Shit can happen, all the time and in some situations is better to start over, clean, fresh.
In any case, before doing these steps, consult with the devs and more experienced users in the Telegram group. In order to be sure that is nothing can be done, is better to have a second opinion for a correct diagnostic of your problems.
Please DO NOT DO THIS SCENARIO WITHOUT CONSULTING WITH ZEUS SUPPORT !
We suppose you already have backup the seed and the channels backup string.
We suppose that you cannot coop close the existing channels, databse is borked or the device is dead, app cannot be open anymore.
So uninstall Zeus, completely and install it fresh, new, latest version.
- Open Zeus and in the screen of creating a new node, select restore.
- Insert your 24 words seed and also paste the backup channels string.
- Wait patiently to fully sync and do the recovery process ! It will take several minutes.
- Try to keep the app alive as much as you can, at least in the initial phase of closing the channels. In this moment you cannot activate the persistent mode because it will require to restart the app and you do not want that to happen in the recovery process. In the future versions this persistent mode will be ON by default for the recovery process.
- Optional you can go and set better neutrino peers, that do not require to restart, but could help with better keeping alive the sync. See previous scenario point 6.
- Go to channels screen (from main screen, bottom right icon) and switch the central button to "closed/pending) channels. You will see there in few moments that was initiated the force closure of the old channels. Optional you can monitor their closing in mempool.space using the closing txid.
- In case the channels were closed with a a low fee, you can import your old Zeus seed into Sparrow (see previous scenario point 2) and from there bump the fee with RBF or CPFP. Othwerwise just wait patiently for channels to be closed. IT COULD TAKE TIME ! Don't freak out, is normal. If there were pending HTLC from previous channels, it could take even 144 blocks or more.
- Once you have all channels closed and funds back to onchain, also checking in Sparrow that all funds are confirmed, then uninstall Zeus and start fresh, proceeding with point 5 and the rest from the previous scenario. Is much better to start with new set of keys and nodeID, database etc.
That's it, Happy Lightning with Zeus.
More resources:
- Zeus documentation page
- Zeus github releases page
- Zeus Telegram support group
- Darth guide - Getting started with Zeus LN mobile node
- Obtainium github releases page - replace the App Store with direct sources from github repos