Skip to content

Martin8617/DeFiNode

 
 

Repository files navigation

✨ DeFiNode for more decentralization ✨

Title

Online resources

Telegram Group

Raspberry-Pi - DeFiChain-Wiki

DeFined designd - DeFiChain printing service


The DeFiNode is a do-it-yourself DeFiChain full node DeFiChain original source code. No code will be altered during installation and will 100% taken from the DeFiChain repository.

Basic Features

  • Easy installation (Easy mode and Expert mode)
  • All functionalities of the official full node GUI wallet app
  • Can run a Master node
  • Controlled by web browser (From your PC or smartphone)
  • 100% open source

Table of Contents 🔭

A. Shopping list (also German)

B. Tools needed

C. DeFi Node Software Installation

  • DeFi Main Menu (bash scripts)
  • DeFi Raspberry PI Image
  • DeFi AppImage

1. Basic Raspberry Pi setup

  • OS installation
  • Add coolers
  • Connections (Stick, PSU, Mouse, Keyboard, HDMI, Network)
  • First boot with monitor + mouse + keyboard
    • Initial setup
    • VNC activation (+ edit /boot/config.txt on stick: uncomment #hdmi force)
    • Edit /boot/config.txt for VNC only usage
    • (Optional) Edit resolution with “sudo raspberry-config”
    • (Optional) Change hostname to “definode” with “sudo raspberry-config”
  • Remote control VNCViewer
  • Download script and execution
  • First Wallet usage and test

2. 3D Printing

  • Download files
  • Slice files (Tips with Raft)
  • Print and Material (PLA)
  • Clean up and Test print
  • NEW! Order your DefiNode case online

3. Custom Case assembly

  • Put Raspberry into case
  • Cut grids and insert
  • Connect PSU
  • Assembly the bottom
  • Connect and assembly Fan
  • Final Assembly (Stick and Network cable)
  • Power on and Wallet usage

4. Bonus (only for advanced users with soldering iron) not essential for operation, but very cool

  • Solder LED ring
  • Assembly LED ring
  • Connect LED ring (right after step 4.c)
  • Install LED script and auto start it
  • LED (rainbow) test and usage (in development)

5. FAQ and Trouble shooting guide

Basic Shopping List

A. Amazon Shopping List (en)

Please try to use the exact hardware models that are recommended in the shopping lists. A monitor and mouse keyboard are needed for the initial setup. Estimated cost around 100-150 USD - based on shops and location.

  • Basics:

    • Raspberry 4 4GB (or 8GB) amazon link
    • Power Supply US - USB-C, 5V, >=3A amazon link
    • Power Supply EU - USB-C, 5V, >=3A amazon link
    • 256GB - Samsung FIT Plus Flash Drive amazon link min. 128GB version
    • Heatsink for RPi4 : amazon link
    • HDMI to micro HDMI adapter amazon link
    • 20cm Jumper cable (you will only nee a couple of male -> female) amazon link
    • Cooling Super Silent Fan 7 amazon link
    • Bumper Pads 10mm-12mm wide and 2mm-4mm high or similar I.e. amazon link
    • Fan Filters amazon link
    • Depending on your monitor input, you will need a HDMI cable or a HDMI -> (DFI, VGA...) adapter
    • Network cable to your router (you can use Wi-Fi if you have a good 5Ghz connection). Ethernet is recommended
  • Bonus:

🇩🇪 A. German Basic Amazon Shopping List 😅 🇩🇪

  • Raspberry 4 4GB (or 8GB) amazon link
  • Power Supply EU - USB-C, 5V, >=3A amazon link
  • 256GB - Samsung FIT Plus Flash Drive amazon link min. 128GB version
  • Heatsink for RPi4 : amazon link
  • HDMI to micro HDMI adapter amazon link
  • 20cm Jumper cable (you will only nee a couple of male -> female) amazon link
  • Cooling Super Silent Fan 7 amazon link
  • Bumper Pads 10mm-12mm wide and 2mm-4mm high or similar I.e. amazon link
  • Fan Filters amazon link
  • Depending on your monitor input, you will need a HDMI cable or a HDMI -> (DFI, VGA...) adapter
  • Network cable to your router (you can use Wi-Fi if you have a good 5Ghz connection). Ethernet is recommended

B. Tools needed:

  • Cutter to clean the 3D Prints
  • Scissors to cut the Fan Filters
  • Big screw driver or a 5ct coin to open the case gain if needed
  • Bonus: Soldering iron only for LED Ring (everything can run without the LED Ring)

C. DeFi Node Software Installation

There are three ways to set up a DeFi Node:

  • Markus' trational, proven and purist way with the help of the DeFi main menu and the different bash scripts (see top of page). Required installation time about 2.5 hours. The DeFi wallet is displayed in a browser on port 5050.
  • Using Daniel's RaspberryPI Image provided on Google Drive and the RaspberryPI Imager. Required installation time about 10Min. The DeFi wallet is displayed in a browser on port 5050.
  • Using Martin's DeFi Wallet AppImage. Required installation time about 10Min. The DeFi wallet is an App on the Raspberry PI.

✨ LFG!

1. Basic Raspberry Pi setup

OS installation

2021-07-06 12_33_26-Raspberry Pi OS – Raspberry Pi

  • Go to official Raspberry Pi OS
  • Download Raspberry Pi Imager for your specific OS (Windows, Mac, Linux)
  • Insert your Samsung FIT Plus Flash Drive into your PC/Mac
  • Select Raspberry Pi OS 32Bit
  • Select Samsung FIT Plus Flash Drive
  • Click "Write" and follow the instructions

2021-07-06 12_43_15-Raspberry Pi OS – Raspberry Pi

Add coolers (follow the instructions in package).

20210708_115943_2

Connections (Stick, PSU, Mouse, Keyboard, HDMI, Nework)

  • Assemble the heatsinks on the Raspberry (follow the instructions in package).
  • Connect the Ethernet cable to you Raspberry Pi and router (check your DHCP router config if needed)
  • Connect the micro HDMI adapter + cable to your monitor input
  • Connect mouse and keyboard to the Raspberry Pi USB ports
  • Connect Samsung FIT Plus Flash Drive to a USB 3.0 (blue) port on your Raspberry Pi

Now your basic DeFiNode should look like this:

20210708_120318

First boot with monitor + mouse + keyboard

  • Plug it in
  • Use the switch to switch on the Raspberry Pi (LEDs should light up)

Welcome to Raspberry Pi OS! You should see this screen on your monitor.

newraspberry

Follow the screen and setup your language, Wi-Fi (it is recommended to use a Ethernet connection for stability) an password. It is important you write this password down. It will be needed later on.

password

VNC activation (to be able to remote control your Definode without the monitor, mouse and keyboard)

VNC Activation

For reference check the instructions on VNC tool: VNC

Write down your the local IP Address by moving the mouse cursor on the connection icon in the top right corner (we might need it later on)

grafik

Edit /boot/config.txt for VNC only usage (mandatory if you want to use the Definode without a monitor)

NOT WORKING YET. WILL DO AN UPDATE (You need to edit the config.txt on an PC / Mac)

  • Open the file manager
  • Navigate to /boot/ folder
  • Double click on config.txt

VNC Viewer config

  • Look for the entry: "#hdmi_force_hotplug=1"
  • Delete the #
  • Save the file

VNC Viewer config_2

  • Reboot Definode

Reboot

(Optional) Edit resolution with “sudo raspberry-config”

  • Open terminal
  • Enter sudo raspberry-config
  • Select Display
  • Select resolution
  • Select the preferred resolution
  • Exit with OK
  • Reboot

resolution

(Optional) Change hostname to “definode” with “sudo raspi-config”

Standard hostname is raspberrypi. You can change the name to definode to be able to enter the wallet in your browser with http:\\definode:5050 instead with http:\\raspberrypi:5050

  • Open terminal
  • Enter sudo raspi-config
  • Select System options
  • Select Hostname
  • Change it to ```definode``
  • Exit with OK
  • Reboot

Hostname

Remote control VNCViewer

  • Download and install VNCViewer tool on your PC/Mac: VNCViewer
  • DefiNode should be powered on and running
  • Open VNCViewer

vncviewer_1

  • Click "New connection"
  • Enter the hostname of your DefiNode in "VNC Server". If you changed it to definode, please use this. raspberrypi is the standard hostname. You can also enter the local IP address, you've written down, as mentioned above.
  • Klick OK
  • Double click the new connection

vncviewer_2

  • enter pi as username
  • enter the password you gave the DefiNode at the first boot
  • press OK and you should see the DefiNode desktop

Now you can connect to it any time from any device and mage it conveniently.

🎉 Congratulations! You've done a very good Job so far! 🎉

🎉 You can now disconnect the external Monitor, mouse and keyboard and proceed work with the Remote Desktop 🎉

Download script and execution

  • Open a new terminal Terminal

grafik

  • Enter: this command and press ENTER
git clone http://github.com/definode/definode && cd definode && sudo sh setup-build-definode.sh

🎇 #Watch the magic happening (for ~3h) 🎇

I know its long but this is really necessary to ensure you build the official software from DeFiChain on your DeFiNode.

  • Steps done in the background:
    • Downloading and installing the official DeFiChain software. Nothing is changed and 100% original source code is downloaded
    • Downloading the latest blockchain snapshot (no 100% sync needed after installation)
    • Start DeFiChain and wallet

There may be some orange messages appear in the terminal, but this is nothing to worry about.

First Wallet usage and test

When everything is finished and running you will get the message "Please open your browser http://localhost:5050" in the terminal

  • Open the chromium browser on your DeFiNode and enter http://localhost:5050 -> press enter

  • You can also use your PC/Mac/Mobile phone browser (when in same LAN) and enter the IP Address (or hostname) + Port to remote control the Node from other devices. I.e. 192.168.0.236:5050 or http:\\definode:5050 -> press enter. You can bookmark this in your browser.

For advanced use, like backup / restore wallet, master nodes, blockchain explorer... please check the FAQ and troubleshooting guide below.

🎉 Congratulations! You've successfully installed the Defichain software on your DeFiNode 🎉

wallet

2. 3D Printing

All files can be found in the 3D files folder. Every part was specifically designed for 3D printing and can be easily printed with every FMD printer.

My preferred material and settings:

  • PLA
  • 0.4mm nozzle
  • Temps depending on the brand you are using

Slice files

Use your favorite slicing tool.

2

I recommend using raft for:

  • The top part
  • The mid part

Rest of the parts can be printed directly on the plate.

1

Use higher quality settings to have the best looking DefiNode.

Add support where the slicer recommends

After the print, clean everything very good and remove the support.

20210713_104737_cr

NEW! Order your DefiNode case online

Check out the new printing service by Gabriel Kunzer https://www.gabrielkunzer.com/definode/. You can order your case in many colors! Great service! 🔥

3. Custom Case assembly

If you successfully finished step 1 and the wallet was running in the Raspberry you can now start assembling the DefiNode. Please clan the 3D print as good as you can. You can use a cutter knife to remove support or other unnecessary remaining.

Shutdown via VNC (not just power off) your Raspberrypi. Remove all connections and USD stick.

20210721_134459_s

Put Raspberry into case

  • Use a soft material table pad on the table if possible.
  • Slice in the Raspberry connectors first
  • Press the back side very gently in to the hocks.

20210713_104209_s 20210713_104232s 20210713_104250s

That’s it, no screws, nothing. Easy, isn't it!

Cut grids and insert

Prepare scissors, cutting template and the flexible fan grids you've purchased from Amazon.

  • Use the template to cut two fitting grids
  • If it will not fit right away, you can trim them later on

20210715_112739s 20210715_112840s 20210715_112918s

  • Make sure the slots are clear very clear, so you can easily insert the grid.

20210721_134556s

  • Check the orientation and slide in the grid. This should go very smooth.

20210721_134424_cr

Connect PSU

  • Slide the cable in like in the picture below
  • Connect the USB-C connector to the raspberrypi

20210713_112026s

  • Flip the case und put the power cable into the strain relive and hole at the back.
  • Make sure the power switch is outside the case

20210721_134335s

Assembly of the bottom

  • Here you can add a SSD if you want too.
  • Make sure the bottom is oriented like in the picture. I will not fit otherwise!

20210721_134315s

  • Put the mid part on top
  • Make sure the locking mechanism aligns 100%
  • Slightly press down the mid
  • It should slide and lock pretty smoothly. When not, check for 3D printing remaining and remove them.
  • Always make sure the cables align

20210721_134324s

Connect and assembly Fan

  • Prepare the fan and two jumper cables (male -> female)

20210715_113014s

  • Connect both to the Black and Red wires on the Fan connector (yellow is not needed). I dosn't matter what colors the jumper cables have.

20210721_134213s

  • Connect the jumper cables according to the picture
    • Red cable goes to Pin 2 on the Raspberry
    • Black cable goes to Pin 6 on the Raspberry

fans

  • I should look like this (don't pay attention to the green, yellow and orange jumper. Those are for the LED ring and will be described later)

20210721_134141s

You can switch on the Raspberry without the USD Stick to test if the fan is running.

If you want to add the LED Ring jump to chapter 4 and come back here, when this is finished.

  • Insert Fan exactly like in the picture. You can bend the jumper cable so the fan will not hit the when rotating.

20210721_134103_cr

  • Organize the cables and insert the air guide like in the image below. Make sure the air guide is flat on the fan and has a good fit. If not, check if the cables are proper organized.

20210721_134045s

  • Check again if the fan is working by powering on the Raspberry without the USB Stick.

  • You cannot close the DefiNode by mounting the top. Make sure it aligns and press is slightly down.

  • If you have to open it again, you can use a big screwdriver or a 5ct coin or similar.

20210721_134000

Final Assembly (USB Stick and Network cable)

  • Connect the LAN cable
  • Insert the USB Stick

20210713_112134s

Power on

  • You can now power on the DeFiNode and process with using the wallet a described in chapter 1.

4. Bonus (only for advanced users with soldering iron) not essential for operation, but very cool.

If you want to make your DeFiNode even cooler, you can add a RGB LED Ring to it. The Ring can be programmed to show any animation you want. For now a pink circle indicates the DefiNode is running.

Untitled Project

As in the shopping list, you need to get one RGB LED ring and 3 jumper (female -> male) cables (you should have them already)

[x] LED Ring amazon link

What you need:

20210715_113106

Soldering

Solder the male side of the jumper cable only to:

  • DI pad
  • 5V pad
  • GND pad

DO pad is not needed here. Color of the jumper cable is not important. As long as you do the Raspberrypi connection properly.

2021-07-22 13_39_04-

Now it should look like this

20210722_134437

Assembly LED ring

  • Mount the ring as in the image below. Don’t use too much pressure, you may break off the hock.

20210716_140024s 20210716_140120s

Connect LED ring (right after step 3.c)

2021-07-23 16_02_33-s

Install LED script and auto start it

(TBD) but check the txt on GitHub

LED (rainbow) test and usage (in development)

(TBD) but check the txt on GitHub

5. FAQ and Trouble shooting guide

How to import wallet.dat?

Put your wallet.dat in your definode/defichain folder. Make sure you habe a backup of your wallet.dat

How to backup wallet.dat?

Go to your definode/defichain folder and copy your wallet.dat on an USB device or go to your definode folder and run the this script: sudo -E sh 09_backup_defiwallet.sh Your backup is still on your Raspberry Pi. Make sure you store it somewhere else.

Installation aborted. What to do?

Try it again :-)

How to use the expert scripts / menu?

On your desktop you will find the "DeFiNode Main Menu" or open via console sudo -E sh 00_definode.sh

Red text during installation?

Keep calm and relax. Your DeFiNode i almost ready.

Blockchain tab not working?

We are working on that. Just use https://explorer.defichain.io/ or https://chainz.cryptoid.info/dfi/

Hot to setup a Master node?

defi-cli is your friend For more informations type in your console docker exec defi_node defi-cli help createmasternode and follow the instructions on: https://defichain-wiki.com/wiki/Masternode_installation_extended

Wallet not syncing?

Go to your expert scripts (see 5d) and use option "8 Repair DeFiNode"

VNC Viewer not connecting?

Check your IP Address

VNC Viewer black screen?

(TBD)

k. Fan not working?

(TBD)

LED ring not working?

(TBD)

Not booting?

Check USB device or SD Card. Check Power Supply

DISCLAIMER

The information provided by DefiNode GitHub, Twitter, Reddit and Telegram is for general informational purposes only. All information on the sites and channels is provided in good faith, however we make no representation or warranty of any kind, express or implied, regarding the accuracy, adequacy, validity, reliability, availability or completeness of any information on the Site or our channels.

UNDER NO CIRCUMSTANCE SHALL WE HAVE ANY LIABILITY TO YOU FOR ANY LOSS OR DAMAGE OF ANY KIND INCURRED AS A RESULT OF THE USE OF THIS SITE, CHANNELS, SCRIPTS AND TUTORIALS. YOUR USE OF THE SITE, SCRIPTS AND TUTORIALS AND YOUR RELIANCE ON ANY INFORMATION ON THIS SITE AND CHANNELS IS SOLELY AT YOUR OWN RISK.

Last updated July 23, 2021

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 53.5%
  • Python 34.2%
  • Dockerfile 12.3%