Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Skywire node on TV Smart BOX (X96 mini)
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:
  • Type:
  • Wait the installation and when it ends, type:
    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:
    nano /etc/network/interfaces
  • Set your static IP here (remember to change "dhcp" into "static" and remove the "#"), for example:
    allow-hotplug eth0
    no-auto-down eth0
    iface eth0 inet static
    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:
    sh /root/
  • 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:
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:

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

[-] The following 1 user says Thank You to edoardocoen for this post:
  • hylt9999

After I posted this guide, a lot of people followed it and built their Skyminers. But we found out some critical issues:

1.People sell fake X96 mini:
there are people that sell fake X96 mini. They look like the originals because they has the same case and the same box, but the hardware is different: instead a CPU Amlogic S905W, they have an old Rockchip CPU. My guide doesn't work for these machines. You can discover if you have a fake X96 mini if the 2 USB port are black, the original tv box has 1 white USB port. For this reason, I raccomend to buy the boxes only on Gearbest

2.Some original X96 mini can't install linux on eMMC:
There are about 10%-20% of tv boxes that installed a Sk Hynix NAND. I found the solution after a lot of work. The emmc speed setted on the .dtb file is too high. I edited it so now it works like a sharm on this NAND too. If you have my old prepared image, you can just replace this file inside the folder "dtb" in "BOOT" partition in your flashed SD/USB
[-] The following 1 user says Thank You to edoardocoen for this post:
  • I Am You

To update the discovery address you need to do the following:

Log in as root.

nano /etc/systemd/system/skynode.service

Replace the old discovery address ( with:


Press "ctrl" + "X" and than type "yes"  and press "return" to save the changes.
Here's how to update to mainnet

##########To install on Android box running armbian###############

Use old image from above modded for testnet

Must have a golan V1.13

go version (tells you which version you have)

rm -R /usr/local/go (deletes old version of go lang)

sudo tar -C /usr/local -xzf go1.13.10.linux-arm64.tar.gz
export PATH=$PATH:/usr/local/go/bin
which go (show go path should be same as export PATH above)
go version  (should be go version go1.13.10 linux/arm64)

git clone
cd skywire-mainnet
make build
make install

(IF you run the following from within the skywire-mainnet folder the config file will go there)

add-apt-repository 'deb stretch main'
curl -L | apt-key add -
apt update
apt install skywire
hypervisor gen-config (if adding hypervisor to node)

skywire-cli visor gen-config

add hypervisor to visors config file
        "hypervisors": [{

now you can run (from within skywire-mainnet folder):
skywire-visor skywire-config.json

(add crontab to auto start on reboot)

crontab -e

@reboot cd ~/skywire-mainnet/; nohup skywire-visor /~/skywire-mainnet/skywire-config.json > /dev/null 2>&1 &

(this crontab will need to be modified to suit your install locations.)

#####To Kill testnet if you were using startup scripts ##############

systemctl stop skynode.service

systemctl disable skynode.service

systemctl stop skymanager.service

systemctl disable skymanager.service

These instructions are base off

Forum Jump:

Users browsing this thread: 1 Guest(s)