FutureBit Apollo Full Node Update is Here!This took way longer than I ever imagined, but one of the most important updates for the Apollo and FutureBit in general is finally here! As you guys all know I have been slowly building up FutureBit to be the answer to the increasingly centralized shift of every vertical in the crypto ecosystem in the last few years. Everything from mining, to blockchain/node services, to wallets etc are moving to online centralized "services" in an effort to mimic the traditional banking sector and onboard new users without educating them on what makes crypto different goes against everything they are doing.
The Apollo Full Node update is the first major step in bringing all these online services back to the control of each user. At the core of each online crypto service is a Full Node running on a server with a glorified front end, whether that be a your coinbase wallet, or blockchain explorer etc. By using these services you are trusting the centralized entity for all your crypto and blockchain information you get from them, and giving up all the personal power you hold in the crypto ecosystem to them.
This update will lay the foundation needed to run almost every aspect of the blockchain on your personal desktop device. While this update "only" runs a full Litecoin node, that step alone is the most important and should have a pretty profound effect just on the Litecoin network. There are less than 2,000 nodes running Litecoin right now, if every Apollo user updates we will be the #1 node on the network, and definitely the most decentralized network, with more individual users running nodes than centralized entities.
Going forward we will slowly be able to add many of the services you rely on online centralized companies currently serve. For example small features like basic wallet functionality and solo mining on the Apollo, and in future hardware updates with our separate full node device you'll be able to run your own block explorer querying your own full node, and not trusting some online site that they are serving you the correct information.
Anyway enough of the why, here is all the good stuff you guys have patiently waited over a year for
Full Node InstructionsFirst a quick overview of the Apollo Full node update and why it took us so long to get here. As you know we wanted to launch the update as a pure software update, and spent nearly half a year trying to optimize the node code and system on purely a software layer. Due to the constrained memory environment and SD card based OS we realized this would create more issues than was worth to solve, and we didn’t want to create a version of the node that would be so different from how LitecoinCore runs that it would cause issues with the community (since we are expecting a large chunk of active nodes to be Apollo nodes once our update goes live). We scrapped those plans late last year and came up with the current hardware based solution.
What we ended up with is a fair compromised that allows us to run a FULL node (some of our previous implementations were running pruned full nodes), with minimal changes in hardware. The full node implementation that will be shipping in Apollo Batch 3 units will be a smaller OS industrial SD card (8 GB of MLC flash that is better suited for write demands of our embedded system), and an external 64GB USB based flash drive that will be plugged into the USB port of the Apollo, and serve as the storage medium of the full node, as well as offload some of the system swap operations off of the SD card.
This allows us a far more stable system with minimal node code changes other than the runtime environment of the node, and system level optimizations. The cost impact is not a free software update unfortunately, but we have kept it to under 20 USD with a simple external USB flash drive. With flash prices so low we can source 64GB flash drives that will store the full node at sufficient write speeds for this to be successful.
We have two simple options for most Apollo customers to participate from novice users to experienced.
1) The simplest is to purchase our upgrade kit we have made available that serves both Batch 1 and Batch 2 customers and are providing at cost. It includes everything you need and is a matter of swapping out an SD card and plugging in a USB drive if you dont want to deal with doing all the prep work yourself. Unfortunately for Batch 1 users we were not forward thinking enough to realize the MCU would have needed way more RAM than is provided for Batch 1 units, so it will require an MCU swap to run the full node. The link for these kits are here:
https://shop.futurebit.io/products/apollo-full-node-upgrade-kit2) The other option for Batch 2 customers is to simply update your existing micro SD card use a USB drive you have lying around. The update image/instructions has been posted in the first post. For a USB drive you can use anything from a good USB 2 magnetic based drive, a good quality USB thumb drive, or even an external SSD. Basic requirements are > 64GB of space, and 4k random write speed that exceeds 2 MB/s. You can test your drive by downloading the following software
Windows:
https://crystalmark.info/en/software/crystaldiskmark/Mac:
http://www.katsurashareware.com/pgs/adm.htmlThe recommended USB flash drives we have tested are below and all can be found for less than 20 USD:
https://www.samsung.com/us/computing/memory-storage/usb-flash-drives/usb-3-1-flash-drive-fit-plus-64gb-muf-64ab-am/https://www.samsung.com/us/computing/memory-storage/usb-flash-drives/usb-3-1-flash-drive-bar-plus-64gb-titan-gray-muf-64be4-am/https://www.lexar.com/portfolio_page/jumpdrive-m45-usb-3-1-flash-drive/Keep in mind that real external USB SSD/Disk drives will be more reliable and be prone to less corruption/reboots while running a full node, but that above is a good balance vs cost to getting running quickly if you dont have a spare external drive. Cheap USB flash drives will probably not work at all and choke up the system, but we have had limited success with some if you want to try them out.
The drive either needs to be formatted in windows FAT, or Linux EXT4 format. The drive will need to be pre-loaded with a recent copy of a Litecoin Full Node chainstate and blocks folder placed in a folder named “Litecoin” in the root directory of the USB drive.
If you are already running LitecoinCore wallet version 16+ you can simply just copy your whole data directory into the Litecoin folder on the USB drive. This needs to be done since it will be very inefficient to download and validate the whole blockchain on an Apollo (it could take weeks from Block 0). While it is possible, if you dont want to wait for a full sync I am providing a weekly updated snapshot of Litecoin blockchain data thats inside the same MEGA download link for the update image. This is way faster as the time it takes to download ~20GB of data is orders of magnitude quicker than downloading and validating the whole chainstate on an Apollo due to its limited compute resources. Of course the downside is that you trust me to be providing a valid blockchain (which anyone can verify if they wanted too).
Once you have imaged your SD card with the Full Node update, and setup your USB drive just follow these steps to get started:
1)Boot the unit without the USB drive first. You obviously need to set up your Apollo again, and if you boot with the USB drive plugged in it will cause the UI to become unresponsive at times while the Full Node is loading, so you want to set it up first.
2)After you have setup the mining side of your Apollo, plug in your USB drive and reboot the system from the navigation menu. If you setup your drive correctly the Node will start up in the background after the Apollo reboots. Loading can take up to half an hour initially, but once it loads you will be presented with the new Node Dashboard with all the stats of you running node.
3) The node should automatically configure your router to open port 9333 via UPnP, and you should see more than 8 connections in your dashboard. If it stays on 8, this means you need to manually open the port to your Apollos IP address in your router port forwarding rules. If you dont do this your node won't be counted as a public node.
Always shutdown your Apollo through the Dashboard shutdown menu when running a Full Node, and wait for the front LED to turn off/Red before turning off powerNever Remove the USB drive while the Apollo is running, even if you have shutdown the node. The system offloads critical swap operation to the USB drive instead of using the onboard SD card, and you will crash your ApolloThats it! You are now running the worlds only Full Node that Mines at the same time! Hopefully in the coming days/weeks well see a huge spike in Litecoin Full nodes, and a large % being run by all you guys
Thanks to all the beta testers and every customer that has supported us....you guys rock and cant wait to release all the new stuff we are working on!