Umbrel + BlueWallet + LNDHub

UPDATE (I don’t know why I can’t edit anymore the original post).

For those who have problems connecting BW with your LNDhub, I did this latest test.

  • Android 8.1 + BW 6.0.8 (not updated to 6.1.1 because is not compatible anymore with old Android)
  • Open Orbot, activate VPN and add BW app in the list. Start Tor, wait to be 100% connected
  • Open BW mobile, go to Settings - Network - Electrum and add my electrum host from my Umbrel (from “connect wallet” - Selecting Electrum mobile, I just copied manually the host and port)
  • restart BW mobile
  • Open BW mobile and go to Settings - Network - Lightning, scan the QR from Umbrel LNDhub, save the settings and restart BW mobile
  • Open BW mobile, wait to sync, doesn’t take too much and click to create new wallet. Choose Lightning and create. Done, you can save that lndhub onion address as backup

Testing transactions with that new wallet:

  • Open that new wallet, create invoice of 100 sats, copied
  • In the same BW mobile app, go to your usual BW LN wallet and click send, paste the invoice you created from your LNDhub wallet and send. (this didn’t worked me, says “payment in transit”, that means, can’t find the right path between BW servers and mine). Ok this can happen.
  • I created a new invoice of 120 sats in my LNDhub wallet and went to Telegram LNtxbot and pay it. Went through perfectly.
  • Go to RTL - LN - Transactions and in invoices I can see the 120 sats received and also showing up in my LNDhub wallet balance
  • So I went to my LNtxbot LNurl and paid 100 sats + 1 sat fee with the LNDhub wallet from my Umbrel
  • Tx appeared in RTL transactions immediately

So, in conclusion, for those who have problems connecting your BW to your LNDhub, I suggest to try this, until a new version of BW will fix the issues with freezing.
IT’S WORKING FINE!

3 Likes
  1. Even if the wallet on the same node, the tx still have to get through a LN route, so will pay a min fee. You can see the route and who was taking the fee, if you decode the LN invoice in Thunderhub app decoder.

  2. Maybe in the future, but right now is not possible to fund LNDhub wallet with funds directly from the same node. You could try the refill option and taking from an onchain wallet if you have one setup in your BW. But that I think will open a channel in your node so will have more costs.
    So use an external wallet to fund that LNDhub wallet, for the moment. I use LNtxbot from Telegram.

  3. That will be an interesting scenario to see. It supposed to not let you send all funds from your node, keeping the funds of those LNDhub wallets. I never try it. Interesting situation indeed.

Last days I tried this:

  • Android 8.1 installing BW 6.1.1 - not supported, revert to 6.0.8
  • Android 10 installing BW 6.1.1 - connect to Umbrel LNDhub + Electrum - freeze to death
  • android 8.1 + Orbot + BW 6.0.8 - connect to Umbrel LNDhub - works fine

I opened an issue yesterday https://github.com/BlueWallet/BlueWallet/issues/3079
Also on Zeus github https://github.com/ZeusLN/zeus/issues/452

Last version 6.2.10 has brought some stability at least on my phone. I haven’t managed to make it freeze, which was pretty easy even on version 6.2.9.

Did you noticed?

Question if someone can help. I’m very new at this, but have managed to set up and fund my lightning wallet and fund channels. I set up the BlueWallet integration today, linked Blue Wallet HUB, and added funds to my personal BlueWallet Lightning Wallet via sending BTC from Cash App.

I do now see the funds in my BlueWallet app, but have noticed that the funds were also added to my Bitcoin wallet on the node itself. How does this work? doesnt that mean I can now spend those funds from my node’s bitcoin wallet, and if so, what happens to the duplicate lightning funds in blue wallet?

Confused. sorry if it’s a noob question.

Yeah, it’s bit confused, because lndhub txs are still shown in the general node listing.
In the future it will be (I hope) marked in some different way and not shown / or shown in a different way in the node listing txs.
But don’t worry, those sats are NOT in your regular LN wallet available to spend. Are only using the liquidity of your node, not the balance.
But yes, you need to provide good liquidity with your node in order to be able to offer those “banking services” for lndhub wallets.

Thanks for the answer. Indeed the transfer did show up in the transaction list, but it also increased my Bitcoin balance on Umbrel. Is this a bug?

Note the image here. Before this addition from CashApp to Blue Wallet, I had 35k sats or so in my Umbrel Bitcoin Core Wallet. After the transfer of 61k sats, it shows as a deposit in the Bitcoin core Wallet and balance is increased by that amount.

But man, this is onchain wallet, and have nothing to do with LNDHUB. This is totally different.

Exactly, hence my confusion.

Just so you can see, my blue Wallet lightning balance also increased. At first I thought I had accidentally transferred to my on chain Wallet, but no because it shows here too.

Note that I found someone with I think the same issue, but not sure if that was resolved. Blue Wallet Lightning Node

To add additional context, I used the “Refill with External Wallet” button under “Manage Funds” in the Blue Wallet app and sent from an on-chain custodial wallet (cash app) to produce this issue. Can someone else try this on their instance to verify what is occurring here?

Does that mean that people who get a BW wallet on your node create a channel to your node?

No. Please read again the guide. it is explained there what is happening.

I see, sorry, I had to read it more carefully. So what is happening is that LNDHub is managing the money in the wallets, but that money is not actually used for transactions, instead the liquidity on the node is used.

So in case I want to use Bluewallet with my own Lightning Node, then in order to spend eg 50 ksat, I would have to create a channel with 50ksat on my node + create a lightning wallet on BlueWallet with 50ksat ?

No.

Your node channels / liquidity is like water in some pipeline. The water is transport meaning.
Your funds in a LNDHUB wallet, is linked and depends on that liquidity, your funds are the “ships” carrying value (sats) from your wallets. Your node is only facilitating to you the way of transport.

Without good liquidity, your ships will just wreck in ports (wallets), so it is important that you, as node operator, keep a good flow of water in/out of your node channels.

The user of LNDHUB wallet, do not have to worry about that liquidity or opening channels, is just a user/customer of that liquidity.

So as a node operator, try to keep the total amount of inbound and outbound liquidity at a certain level of balancing. Not channel balancing is important, but total liquidity.


As you can see in this report in Thunderhub. This is the most important one. You see? My node have less inbound liquidity.
So what I should do?

  • look for more peers to open towards my node some channels,
  • I can loop out to onchain some funds from my outbound liquidity,
  • keysend some funds to a known peer and he send back the funds to my onchain wallet (ghetto swap)

Still a lot of confusion around this topic. I think in your example the gasoline would better apply to your channels liquidity to “send” the car is the channel. The family and friends using your node borrow your car and its gas and they provide the cargo (how much to send and to whom) and their cargo rides in your car using your gas. They cannot see or use your cargo “your balance”.

What has caused me confusion is grasping these items:
Umbrel only has 1 wallet built in and it is an onchain BTC wallet
Connecting BW to your umbrel, all it does is use your node instead of BW node when creating wallets. If you create BTC wallets or vaults it just uses your BTC node to validate. If you use BW to create LN wallets then it does not use any balance on your umbrel but it does use your nodes channels and liquidity to send and receive to your BW lightning wallet. Creating a LN wallet in BW that is connected to your node, that LN wallet is still on your phone, not viewable on the node, just uses the node to route.

2 Likes