Rak Wireless is one of the Helium miner provider, currently the main one. This miner is based on a Rapsberry PI 4 but we will see that it’s not the only part in the miner as Helium Blockchain is not about computing but radio communications.
So the Rapsberry Pi is not the most important parts of the machine, it’s the LoRa concentrator, a piece of technology capable to listen simultaneously on 8 different radio channels and decode really low level signals around -139dBm, basically 0.00000000000001 mW of signal power…
In this post we will detail the technical details about this miner and the interesting aspects. I will also detail my installation experience, this one is not especially specific to RAK as the installation process is quite similar with all the different miners.
In term of radio, the different miner are equivalent and in term of processing the power of a Raspberry Pi 3 is good enough to run the blockchain. More over in the coming month the addition of the Validator in the block chain will drastically reduce the number of complex operation inside the miner. As a consequence, the performance is not an important criteria. This is to say, currently the tech specifications are not really important in the miner choice and I won’t detail a lot that part.
What is inside RAK Wireless Helium miner box ?
There is basically not a lot of thing inside the box, from the left to the right you can see the power supply with a standard USB-C connector. This one is specific to the country where it is delivered. In the middle the RAK miner itself.
It has the size of a raspberry Pi is about 57mm x 68mm x 92mm, so it’s really small and easy to store in a small space. The box is full of metal, this is very important in different points:
- Raspberry Pi is really warming and this metal casing is heat sink for it. This is really efficient and avoid the need for a fan. Quite cool.
- WiFi does not really like metallic casing for its communication, so the coverage area for a WiFi network connection is really reduced. It is really recommended to use a LAN connectivity.
On the right, you can see the antenna, this is a standard 1/2 wave antenna with a 2,8dBi gain @868MHz (Europe) and 2,3dBi @ 902MHz (Usa). To understand this, basically, you need to know that the regulation in Europe is 14dBm @ 868MHz and 27dBm @ 869 Mhz it is also 16dBm EIRP. For US915 zone, the max power is 30dBm.
Basically the Miner outputs 14dBm (what the regulation authorize) . The antenna is really near a simple half wave dipole antenna (2.15dBi) with it 2.3dBi. So you get a system around 16dBm EIRP @ 868Mhz as the regulation requires. Considering 16dBm EIRP is equivalent to 14dBm conducted.
The conducted power for the RAK wireless is the following:
This test is the max allowed power test for the 869MHz band (downlink channel) The regulation in Europe is 27dBm on this channel. You can see on this graph a pic at 27.21dBm. This is measured conducted (directly plugged) on the concentrator UFL connector. So the 0.21dBm over the limit will be lost in the UFL to RP-SMA connector basically. Concerning the US915 area, the output power is 27.12dBm at 923MHz (downlink channel).
I also had access to the radiated results from RAK made during the certification process. I can’t share this document but I can tell you the following things: the radiated power at 868Mhz is between 13,94 an 13,98dBm for a regulation limit at 14dBm. PoC mechanisms are executed at 868Mhz only (in Europe).
As a conclusion, the RAK miner is fully performing in term of radio signal generation for executing Beacon. The other important point is sensitivity for witnessing. I did not see measurement on this part but the documentation says -139dBm. Is is really good.
By the way, Rak Wireless is making LoRaWan gateway since a while and are expert of the radio communications so there is no big surprise about this.
What about the antenna gain specification given by the vendors ?
A miner delivered with a antenna gain higher than 3dbm, basically means one of the two following things:
- The antenna gain is bullshit (this is something unfortunately usual in this domain)
- The miner has internal radio power loss and a higher gain antenna has been used to compensate that loss. So basically this miner will be less performant for receiving (witness) of transmitting (Beaconing)
What is inside the miner
Once we have presented the outside of the Miner, we can now take a look to the inside of it.
Basically, on the bottom of it you have the raspberry pi 4. You can see the different USB port, sound connector, video connectors… But all are hidden behind some plastic stickers. So from the exterior you just have access to the Ethernet port and the antenna port.
On top of the RPI4, you see the LoRa concentrator, connected to a HAT board. From that concentrator you see a single net going to the SMA connector. This is where the radio signal pass to join the external antenna.
The concentrator can have a GPS included but as you can see these is no connector on it. So basically there is no GPS in the RAK Miner, you can’t be track and the miner position will be given during the installation process.
On the Hat board, we also have as tiny and specific component: the secure element. This is a ATECC608A from Microchip. This one is the identity of the miner in someway. This chip has been added in December to solve the issue with cheaters. This is also why it has been so long to get the devices. The secure element stores the swarm key. This is the identity of the device. Basically in case of SDCard crash, the identity is preserved and you should be able to restore your miner from a fresh new SDCard. Previously the swarm key was on the filesystem so in case of crash it got lost and impossible to retrieve. Now, that is fixed.
Now, let’s open this and what all pieces more in details:
In addition, we can see that the sdcard used inside the miner is a 32GB from sandisk especially made to support high R/W rate. it’s an industrial version of SD Card using 3D NAND technology. Sandisk is also a high quality brand. So that’s a good point.
On the left you can notice this interesting thermal foam. It is on the bottom of the enclosure and touching the bottom of the PI, just under the CPU. You can see printed on it the different smd components located under the CPU. So there is a good thermal contact (I mean before I played with it) with the MCU and the metallic enclosure. That way the RPI4 can stay at a correct temperature. This is really important: I’ve a DiY and recently it has stopped multiple time due to the over heating : the mcu was 81°C. So I had to use a fan to reduce this temperature. The RAK thermal dissipation is passive, using the enclosure as a heatsink and this is really good.
The most problematic thing about the RAK helium miner in my point of view is the WiFi connectivity. Having a metallic enclosure is really good for heat-sink but less about radio waves.
The WiFi antenna on the RPI4 is a PCB antenna there is no external connector (you can hack it to had one, but it is not something I recommend if you are not experienced – many tutorials are available online). The consequence of this is a poor WiFi performance if you to not have a strong signal around. Basically it works well for indoor usage with indoor WiFi but I’ve seen some bad experience with an outdoor Rak using an indoor WiFi, even if the RAK miner is just at the other side of the windows. As a consequence, it is preferred to use the RAK miner with an Ethernet connection. This is also more stable, with a lower latency and this is better for the blockchain performance and rewards.
On the bottom of the radio concentrator, I can confirm there is no hidden GPS in the miner: the GPS component the LoRa board can handle is just not soldered. So there is no doubt about this.
In fact, during the miner enrollment process, the user will see it’s position on the map, obtained from the smartphone GPS position. You will be able to change this position and locate the miner wherever you want.
It’s important to place the miner as close as possible as it’s real location for getting a good quality network. That said, it can be 100m around it will not be a big issue and if you don’t want to share your exact location it can make sense. If your position is totally wrong, it could be later a problem and you could loss rewards, so you will have to select a good enough location.
As you can see, there is many different part inside the miner, all these components makes the price of the miner. To understand the price of it, let’s consider the following and the difference with a standard LoraWan gateway:
- A RAK standard LoRaWan gateway with the same technology costs 280€
- You need to pay the miner registration into the Helium chain – $60
- You have some extra chip like the Secure element – $5
So basically we are around 349€ which is the price for the miner v2.
I’ll not go in all the details of the installation step as this one is not really a problem, you just need to follow the tutorial.
First, you need to power on you miner. Then the other operations are mostly on the Helium smartphone application. Basically, you open the Helium application and Add a new miner on the main page using the + button.
Once selected the type of Miner you will get some information on how to place your miner. Then you will be asked to authorize Bluetooth on your smartphone. The configuration of the miner is done over Bluetooth. you will also access to the diagnostic page thanks to it.
Once you authorize the Bluetooth, you need to pair with the miner. For this you need to enable the pairing on the Miner side.
This is the purpose of the button on the side of the Rak miner. It enable the pairing feature. So once you clicked on it (just 1 click is good) you can scan for miners in the application and it should be detected.
If you configure the miner using WiFi, the application will ask for selecting the WiFi network. In my experience, the first time it has taken about 5 minutes to be able to list the WiFi. I assume there are some first run operation that takes time before running the WiFi discovery. So you need to be patient, it will be displayed, just refresh once every minute.
The next step will be the location of the miner. As previously indicated, the miner itself do not have a GPS.
As a consequence, the application is requesting the smartphone location access to initialize the location of the hotspot.
Once accepted you will see the map with your current location printed in it. You can manually modify this location. Make sure your stays 100m around the real location at a maximum. Being exactly placed is the best but personally I can understand you want to preserve your identity and prefer to not be directly identified. This is possible.
Once these steps done, the Miner will perform 2 transactions on the block chain:
- The miner registration on the chain. Thanks to this operation, the miner will be eligible for rewarding. This operation has a cost of $50 payed in DC from the vendor wallet. So you already paid for it when purchasing the miner.
- The miner position registration. This will register the position of the miner. It costs $10 payed in DC from the vendor wallet for the first one. So you also paid for it when purchasing the miner.
Later, if you want to change the miner location, you can, through the application change the miner position. This will be a new transaction with a cost of $10 you will pay on your own using you HNT wallet.
The last step is a configuration setup for your antenna, currently these settings are not used but they could be in the future.
The TX/RX Gain is the antenna gain. I recommend to take into consideration the cable loss in what you enter here. Later this value could be used to reduce the TX power for antenna with high gain to make sure the regulation is respected. So the TX power could be reduce too much if the cable loss is not counted. So basically imagine you have a +5.8dBi antenna with a 10 meter cable with a loss of 0.2 / m. Basically your Gain will be 5.8 – 2 = 3.8dBi
The second parameter is the Height of the antenna. This is the height from ground (not ocean). So basically if you are roof of an house, it will be something like 10-15 meters.
Once done, the wizard is ended and your miner will proceed to the registration on the chain. If you go to Activities in the application, you will see these two transactions: the one for the hotspot registration and the one for the location insertion.
As you can see they are Pending, it means they have not been yet executed on the blockchain. Once they will be executed you will be able to see your miner in the explorer.helium.com. the name of the miner is printed under the transaction and also visible in your application. If you asked, the miner name is randomly chosen from a dictionary so you don’t have the ability to select a name on your own ; you can’t even change it.
Helium Blockchain synchronization
On the miner page in the Helium application you can take a look to it’s synchronization status. Please don’t stress, this indicator is really really buggy : in my experience and with many people it was indicating that the miner is not syncing and this was false ! This information comes from the helium API and they are some difficulties to scale currently so you may have a lot of false negative. Also there is a delay between what the miner do and what the API reports so this is quickly a mess for nothing. So just wait … I will show you how to make the needed verification.
On the miner home (in the helium smartphone app) you can see the miner status and by clicking on the “Synching” button you can see the status in block. Once again, this is reported from the helium API and we have seen a lot of false negative information from it. So don’t trust this page if not progressing.
What I want to show you here are the numbers. This was at the beginning of my synchronizing process and as you can see the running block was not 0 but 821554 on 829975. The firmware deployed on your miner contains a synchronized chain up to the block that was on top of the chain when it has been generated. So older is the last miner firmware update and longer is the synchronization time. So depends on this, the synchronization process can be just 4 hours or it can be 72 hours. This process is really long block by block.
The progress you can see on synchronization is basically computed Current Block / Total Block so in the example above, at start the progress in syncing was 98.98%. Just to let you understand that reaching the 100% has taken 18h for me… to pass from 1.02% to execute. This should be improve as it is complex to read and understand and to see it progressing. So my message is “don’t be stressed, it’s progressing… slowly”.
There is also one important thing to check from the explorer: the relayed status of your miner:
This means that your miner can’t be directly reached from Internet as a consequence to communicate with your miner, other miners need to pass through a miner directly accessible. As a consequence this is really slowing down the peer-to-peer communications.
The synchronization time will be longer and the reward will be potentially impacted as you have a risk to be out of time for the transactions.
To solve this, you need to make sure that your TCP port 44158 is opened on your Internet router and forwarded directly to your miner. Once this done, this relayed status may disappeared after a couple of minutes. This is an important point to check. In some setup where using a 4G access point you won’t be able to make such configuration and you will be relayed. No choice. Using M2M 4G subscription may help for this but they are usually more expensive.
As I told you, it’s really hard to know if the synchronization process is stalled or correctly progressing with the indicators reported. So based on my experience, there is one indicator which can drive your stress and reboot actions: the communication status from the diagnostic page.
By clicking on the gear on top of the miner page on the Helium smartphone application, you can access some special operations like transferring the Hotspot to someone else, Update the Hotspot location or Access the Diagnostic page.
this page allows to change the WiFi setup and to get the status of the miner, directly from the miner and not from the helium API. For this you need to pair with the miner over Bluetooth. So you need to be 1 meter far from the miner and click on the miner button before executing the pairing action. Once done, you can pair and access a second menu where you see the firmware version, get access to the WiFi setup and run the diagnostic.
This diagnostic page contains many different information. Unfortunately the Blockchain Sync information did not contains valid information when I had synchronization troubles. It could really nice to see here the top block currently in sync to see the progress in real time from the miner and not from the APIs.
What is interesting me here are the Peer-to-peer inbound / outbound status. Basically when you see them green, it means everything is doing good with your miner. Don’t stress, just wait whatever the explorer says about it.
It you see them in trouble it can be interesting to restart the miner. The time to get them green after restarting is about 5 minutes so, don’t stress it with multiple reboot. Let it some time to get the network and start communicating. this should switch to green.
This tool tool has been really useful to me. you can also see on it the IP address. In case you are connected on WiFi and subject to disconnection it can also help you to identify this. No IP address = no network connectivity. There is no way to configure the IP address statically on the miner so you need to make it on your own network.
It is recommended to configure a static IP address on your local DHCP (usually on the Internet router) to make sure the port forwarding will always target the miner and will not be lost during the miner IP renewal process.
RAK hotspot is a really cool miner, working well with a really good radio performance, a tiny size and a really good enclosure for RPI4 heat sink. The price is correct according to the usual price of LoRaWan gateway and the extra element needed for Helium. All the components inside are high quality and the miner should be robust for years.
The installation process is easy. You can execute the installation and syncing process from one place before installing it in another place.
I hope you enjoyed this blog post. If you have questions, please ask them on Discord (Helium or Helium France), there are specific channels for this and the community provides a really good support to new comers.