Skycoin Forum
Skywire node on TV Smart BOX (X96 mini) - Printable Version

+- Skycoin Forum (https://skywug.net/forum)
+-- Forum: General Discussions (https://skywug.net/forum/Forum-General-Discussions)
+--- Forum: Skycoin Project (https://skywug.net/forum/Forum-Skycoin-Project)
+---- Forum: Skywire (https://skywug.net/forum/Forum-Skywire)
+---- Thread: Skywire node on TV Smart BOX (X96 mini) (/Thread-Skywire-node-on-TV-Smart-BOX-X96-mini)



Skywire node on TV Smart BOX (X96 mini) - edoardocoen - 11-19-2018

Recently, my girlfriend gifted me a TV BOX, the X96 mini with 2 GB of RAM and 16 GB of ROM. I checked the technical specifications, and relized that the hardware was suitable to use it as a skywire node, since it has:
  • Quad Core ARM Cortex A53 @ 2GHz (Amlogic S905W)
  • 2GB RAM DDR3
  • 16GB ROM
  • 100M Ethernet port (just the amount that the processor can handle!)
So, when 1 orange pi from my DIY miner burnt, I decided to use it as a node for replacement. Looked for prices and noticed that they are really cheap: with less than 30$ including shipping, you can have a really compact node, inside a case, without spending for SDs or PSU!
I studied a little bit, so I created my TV BOX Skywire node. Talking with other members of the community, I figured that other people might want to replicate my idea, so I created a simplified installation for you. I alredy installed skywire on it, but you need to install skywire services using my semplified script and configure the static IPs.
ADVICE: in this guide, I assume you already know about the networking. If not, please study this (LINK) and this (LINK). I used Armbian 5.62 Ubuntu xenial (server), kernel 4.19.0. This version doesn't support WiFi (We don't need it for a skywire node). You cannot continue to use the box as a Smart TV BOX while running a node. If something goes wrong, you can restore the original firmware using male to male USB Cable, USB Burning Tool and the .img file for X96 mini.
This method can also be used also for other TV boxes, but you need to change the .dtb file. I used gxl_p281_2g.dtb. See source documentation at the end.

1)Flash the SD/USB:

2)Install Linux Ubuntu:

You will have to follow the next steps for every node you want to install:
  • Go to your TV BOX, connect it to your network using an ethernet cable and insert your SD/USB.
  • Using a toothpick or similar, push the reset button that is inside the AV input, keep it pushed while you turn on the TV BOX. Keep the reset button pushed until the blue light turns red and blue again quickly. Now you are booting from the USB/SD.
  • You can choose 1 of the following option now:
    -OPTION a):
    Using PuTTY on your computer, login your node typing the IP of your TV BOX (you need to know how to find the IP, using your router web interface or command prompt)
    -OPTION b):
    Connect the TV BOX with the HDMI cable to a monitor and connect an USB keyboard too.
  • User: "root", password:"Skycoin" (with capital S). You can change it with the command:
    Code:
    passwd
  • Type:
    Code:
    sh install.sh
  • Wait the installation and when it ends, type:
    Code:
    shutdown now
  • You have just installed Linux on your TV BOX's eMMC!
  • When the blue light turns red, unplug the SD/USB and the power cable

3)Set IP address

Now before install Skywire services, plug the power cable again (without the toothpick trick) and wait for booting. If after 1 minute the TV box is not shown on the network, try disconnecting and reconnecting the power cable and waiting for 1 minute. When you see the TV BOX on your network:
  • Open a new PuTTY session (only if you choose option a), login as root, and type:
    Code:
    nano /etc/network/interfaces
  • Set your static IP here (remember to change "dhcp" into "static" and remove the "#"), for example:
    Code:
    allow-hotplug eth0
    no-auto-down eth0
    iface eth0 inet static
    address 192.168.0.101
    netmask 255.255.255.0
    gateway 192.168.0.1
    dns-nameservers 8.8.8.8 8.8.4.4
    Than type "ctrl+X", "Y", to save.
    Every node must have a different "address", remeber the manager's one (you need only 1 manager node).

4)Install skywire services:
  • Type:
    Code:
    sh /root/services.sh
  • Follow the instructions. When it asks, type "y" (yes) if you are installing skywire services on the manager node. When it asks, type your manager IP address. Please, be sure to type it correctly, without spaces!
  • Type for the last time:
    Code:
    reboot
After that you can do point  2, 3 and 4 again for the others nodes: plug your SD/USB on your next TV BOX, install Linux to eMMC, set IP, install skywire services...

Remeber, BACKUP YOUR NODE KEYS! Learn how: https://github.com/skycoin/skywire/wiki/Backup-.skywire-folders-(public-keys)

It's a good idea write on every TV BOX the static IP that you choose and its pubblic key

Sources:
https://forum.armbian.com/topic/7930-armbian-for-amlogic-s9xxx-kernel-41x-ver-555/
https://skywug.net/forum/Thread-DIY-Miner-A-complete-guide-for-Hardware-Software-configuration
https://github.com/skycoin/skywire/wiki
https://github.com/skycoin/skywire/wiki/Backup-.skywire-folders-(public-keys)