Pisces P100 Troubleshooting guide
Please note: this is not official information from Pisces, just some of the advice of other community members, put together for more convenience.
I see on the Helium explorer/app that I'm syncing/I'm relayed
How to fast sync using Nebra's or Sensecap's latest snap
How can I update the dashboard?
How can I update the firmware of my hotspot?
How can I update the miner docker of my hotspot?
I can't see my Miner Height in the dashboard/Clearing blockchain data/Disk 100% full
My status in the dashboard is "unknown"
My Miner Height is not exactly the same as the Live height
I can't see my temperature in the dashboard
I don't have access to all the Discord channels of Pisces
Commands through browser not working
Invalid witnesses (rssi_too_high) problem
Dashboard not accessible / 500 Internal server error
If you see your status as "Syncing" in the Helium explorer and/or app but the P100 has some activity (witnessing and/or sending beacons), that probably means all is good. The Helium services are sometimes very slow with showing the correct status of the hotspot - from a few hours to a couple of weeks. Same goes for the "relayed" status. You can check https://heliumstatus.io/ and https://app.hotspotty.net/ for more accurate and up to date information.
You can tell if you're really relayed if the observed listen address on https://heliumstatus.io/ is showing p2p/some-address-here, like this:
If you are, you must do a port forwarding in your router for tcp port 44158 to your hotspot ip and disable UPnP in the router settings.
If it's showing /ip4/your-ip-here/tcp/44158, you're NOT relayed, no matter what Helium tells you :) You can also do a connection test and a ping test to see if everything is working properly.
You can access the P100 dashboard only through your local network for now - you can find the IP in your router, should be displayed as "raspberrypi"
For Nebra's snapshot (these days this one is quite old so you better use the Sensecap one):
Check what is the latest snap they have:
https://helium-snapshots.nebra.com/latest.json
You will see {"height": XXXX, "hash": …. }
Then use, replacing XXXX with the current number:
http://your-miner-ip:8001/api/test/shell?action=sudo wget https://helium-snapshots.nebra.com/snap-XXXX -O /home/pi/hnt/miner/snap/snap-XXXX
(SSH command:
sudo wget https://helium-snapshots.nebra.com/snap-XXXX -O /home/pi/hnt/miner/snap/snap-XXXX)
Wait until it's done with the loading (or until you see 100% complete in the console, if you're using SSH), it will return a blank screen. After that, run:
http://your-miner-ip:8001/api/test/shell?action=sudo sudo docker exec miner miner snapshot load /var/data/snap/snap-XXXX
(SSH command:
sudo sudo docker exec miner miner snapshot load /var/data/snap/snap-XXXX)
This one will return a timeout message, that's OK. Check your block height in 10-15 minutes, it should've started syncing from the block you entered.
Script to clear blockchain data and fast sync:
The script will choose the most up to date snapshot from Nebra or SenseCAP automatically.Log in SSH and run:
wget https://raw.githubusercontent.com/moophlo/pisces-miner-scripts/main/clear_resync.sh -O - | sudo bash
Script to install a scheduled check on the root filesystem:
If the free space is less than 20% it will automatically run “clear_resync.sh” script.Log in SSH and run:
wget https://raw.githubusercontent.com/moophlo/pisces-miner-scripts/main/crontab_job.sh -O - | sudo bash
Note: “clear_resync.sh” script have been recently updated to a new version, if you installed the scheduled check you want to update it.Log in SSH and run:
sudo wget https://raw.githubusercontent.com/moophlo/pisces-miner-scripts/main/clear_resync.sh -O /usr/bin/clear_resync.sh
After first installing and accessing the hotspot through the local network, you'll probably see the first version of the Pisces dashboard, it will load very slowly, needs around a minute every time:
You can update to the current dashboard, something that briffy made and got implemented in the Pisces firmware at version 0.19 (check out his GitHub here: https://github.com/briffy/PiscesQoLDashboard). It loads much faster, offers SSH access and is much more user friendly.
WARNING: When you update to this new dashboard, the access to it changes from http:// to https:// Some browsers wouldn't like that and some people cannot access it from a phone or an iPad. The reason for that is because the web server is using a self-signed certificate for encryption. Browsers don't generally like that because they prefer a 3rd party authority to sign the certificate. In this case though, because it's just an internal device that's not going to be facing the internet, it's fine.
Should be an option to bypass that security warning.
Chrome, Edge and Brave should be working without a problem, once you give them permissions to access it (shown below).
You need to run the following command in your browser:
http://your-ip:8001/api/test/shell?action=sudo wget https://raw.githubusercontent.com/briffy/PiscesQoLDashboard/main/install.sh -O - | sudo bash
(all is one line and you have to replace your-ip with your hotspot's actual IP)
(SSH command:
sudo wget https://raw.githubusercontent.com/briffy/PiscesQoLDashboard/main/install.sh -O - | sudo bash)
Wait a little, you should see some logs and the last line should be "Success".
After that, restart the hotspot. When it comes back online, you should be able to access it when typing the IP and it will ask for a user and password. The default is admin/admin
If you can't connect to the new dashboard, you can try this, then restart again:
http://your-ip:8001/api/test/shell?action=sudo systemctl restart nginx
(SSH command:
sudo systemctl restart nginx)
After logging in, you should see this:
The first thing you should do after logging in, is to change your password. You can do it from the left menu Tools, Reset Password.
For any additional updates of the dashboard, you can use the Tools menu of the left and then Update Dashboard.
It would give you the current version you have (the "Updating from" line), and the latest version there is available (the "Updating to" line). You have to press Start at the bottom to actually launch the update.
When Pisces publish a new update of their firmware, sometimes it autoupdates and sometimes it doesn't. You can wait and see if it updates for you but if you don't want to, you can do this to get the latest version available.
You need to run the following command in your browser:
http://your-hotspot-ip:8001/api/test/shell?cmd=wget http://pisces-firmware.sidcloud.cn/latest/EU/update.sh -O - | sudo bash
(all is one line and you have to replace your-ip with your hotspot's actual IP)
(SSH command:
wget http://pisces-firmware.sidcloud.cn/latest/EU/update.sh -O - | sudo bash)
You can also use this to get any other version of the firmware that's still available:
http://your-hotspot-ip:8001/api/test/shell?cmd=wget http://pisces-firmware.sidcloud.cn/0.XX(version number)/EU/update.sh -O - | sudo bash
(all is one line and you have to replace your-ip with your hotspot's actual IP)
(SSH command:
wget http://pisces-firmware.sidcloud.cn/0.XX(version number)/EU/update.sh -O - | sudo bash)
You can check the current version you have with:
http://your-miner-ip:8001/api/version
This one is the actual miner that does the work. It's best to always be updated to the last version that Helium marked as GA.
Easiest way to do it is through the new dashboard, the Tools menu on the left and then Update Miner.
It would give you the current version you have (the "Updating from" line), and the latest version there is available (the "Updating to" line). You have to press Start at the bottom to actually launch the update.
If you can't see the miner height in the dashboard, sometimes it just needs time. If you just updated something, give it a few minutes and refresh a few times to be sure it really doesn't show anything.
You can check your actual block height with this:
http://your-ip:8001/api/miner/sync
If that one gives you an error, it means something is wrong with the blockchain database. You should clear the blockchain data and fast sync.
When you clear the blockchain data, the miner height returns to 1 and has to re-sync to the blockchain again. After a couple of minutes, it should get relatively close to the live height. You can check the current live height of the blockchain here - https://api.helium.io/v1/blocks/height
If you're less than 300 blocks behind the live height, there's no need to fast sync, just wait. It would take a couple of hours to be ready and synced again.
It's possible when you try to start clearing the data, to get an error - Couldn't stop currently running docker. In that case, try it a few more times, it will eventually accept it. That happens because your miner docker is in a restart loop and restarts every few seconds. Clearing the blockchain data should help with that. You can check if that is the case with the following:
http://your-miner-ip:8001/api/test/shell?action=sudo docker ps -a
(SSH command: sudo docker ps -a)
This would show you the current version of the miner you're running and if it's working properly.
If the "Created" and "Status" show more than 2 minutes, it should be OK. If they (or only the Status one) keep restarting, you still have a problem.
If the problem in the dashboard persists and you can't clear the data from there, you can use these:
Stop the miner:
http://your-ip:8001/api/test/shell?action=sudo docker stop miner
(SSH command: sudo docker stop miner)
Clear the blockchain data:
http://your-ip:8001/api/test/shell?action=sudo rm -rf /home/pi/hnt/miner/blockchain.db/*
http://your-ip:8001/api/test/shell?action=sudo rm -rf /home/pi/hnt/miner/ledger.db/*
(these are two separate commands, run them one after the other)
(SSH commands: sudo rm -rf /home/pi/hnt/miner/blockchain.db/*
sudo rm -rf /home/pi/hnt/miner/ledger.db/*)
Start the miner:
http://your-ip:8001/api/test/shell?action=sudo docker start miner
(SSH command: sudo docker start miner)
If these also give you an error, give it a try with:
sudo wget https://raw.githubusercontent.com/moophlo/pisces-miner-scripts/main/clear_resync.sh -O - | sudo bash
If the Miner height is shown and you can see your animal name and SN below, just give it some time, it should change to "online" soon. If all of these are also not shown, try this.
That shows whether you are synced with the blockchain or not. Miner height and Live height should be the same or very close and then you are synced. If they are not exactly the same but close enough, that is not a problem. The Live height uses the Helium API to get the value and it's often delayed. So it's normal to even be a few blocks "in the future" :)
You need to run the following command in your browser:
http://your-ip:8001/api/test/shell?action=sudo apt-get install lm-sensors -y
(all is one line and you have to replace your-ip with your hotspot's actual IP)
(SSH command: sudo apt-get install lm-sensors -y)
To get access to #p100-support and to the Owners group, you need to go to #get-p100-role channel and follow the instructions there.
This one is directly from briffy:
I use Ivacy. Sign up on their website, can get it for $9 a month.
Make sure you select dedicated IP and port forwarding.
Once you've got your login details, jump on the live chat with their support and tell them you're using PPTP on Linux and need a username that isn't an email address.
Also go into the port forwarding bit on the control panel and forward 44158.
Then just go to tools > configure VPN in the dashboard. I would recommend once you've saved that, you log in via SSH and run this every now and then for a few minutes:
ip a
Look for any reference to ppp0. If it doesn't appear after a few minutes then run this:
sudo pon pisces
Then that ip a command again until you see the ppp0 stuff.
Then I'd recommend this just to make sure your miner is listening on the right IP:
sudo docker restart miner
You can either download and use PuTTY - https://www.putty.org/ or, if you are on Windows 10, you can just use Windows' command prompt.
Click the start menu and type "cmd", you should see this:
Run it and in the command prompt, write:
ssh admin@your-miner-IP
You will be prompted for a password - the default one is admin or the one you set up in your hotspot's dashboard. It doesn't show you typing it, that's normal. If everything is OK, you should see this:
In their latest versions Pisces blocked the access through the webshell (the commands you can run directly through your browser)
You can still run all of the commands above through SSH.
For example, what was:
http://your-miner-ip:8001/api/test/shell?action=sudo docker ps -a
now becomes just:
sudo docker ps -a
after you log in through SSH.
If you see in your activity log invalid witnesses with reason,
there is an easy fix for that error, you just change the value of the rssi_offset to -230.4 instead of the standard -215.4.
Log in to your miner through SSH and use this command:
sudo nano /home/pi/hnt/paket/paket/packet_forwarder/global_conf.json
then find the two times you have rssi_offset and change them both to -230.4
After that, ctrl + x to close it and confirm the changes and you're good.
If you cannot access the new dashboard after the install, log in SSH and try this:
sudo dpkg --configure -a
sudo systemctl restart nginx
sudo reboot