Skip to content
News

RAK WisMesh Station HP: First Look at a Pi 4 Mesh Node

RAK's WisMesh Station HP puts a Raspberry Pi 4, a WisBlock HAT, and a 1-watt-class SX1262 in a finned aluminium case. Hardware tour and what it runs.

J
Josh
· 14 min read

RAKwireless put a Raspberry Pi in a heatsink and called it a mesh node. The WisMesh Station HP is a Pi 4 Model B, a RAK6421 WisBlock HAT, a GNSS module, and a 1-watt-class RAK13302 LoRa radio, bolted into a finned aluminium case with a 32 GB card that boots into meshtasticd. It’s $175.99 direct from RAK, or $189.97 through Rokland. The standard-power RAK8622 drops to a 22 dBm radio for $169.99.

RAK WisMesh Station HP in its finned aluminium case, showing the Raspberry Pi 4 face with two USB 2.0 ports, two USB 3.0 ports and gigabit Ethernet

This is a first look at the hardware. RAKwireless sent us the unit, the arrangement is photographs and a post, they set no conditions on what it says and didn’t see it before publication. It has been on the bench for a few days and it is running on our mesh, but nothing here is a measurement. Performance, where this thing actually earns its place, and a proper look at the software side all belong to the review, once it has more time on the network.

What follows is what the hardware actually is, and a short tour of what it will run.

What’s in the Box

Everything in the WisMesh Station HP box laid out: GPS puck antenna on a cable with adhesive pad, wall power supply, LoRa whip antenna, and the unit

Unit, LoRa whip, GPS antenna, power supply, and the 32 GB microSD card. The GPS antenna is the detail worth noticing: it’s a puck on a long cable with a 3M VHB pad on the back, not a stub that screws to the case. That is the right call for a device meant to sit on a shelf indoors, because it lets the antenna go to a window while the node stays where the Ethernet is.

The supply is a plain wall wart. RAK’s label asks for 5 V at 3 A, which is a Raspberry Pi 4 number before you add a power amplifier to it.

The Outside

The case is extruded aluminium with fins top and bottom, four screws per end cap, and a textured black finish. It is a heatsink that happens to be an enclosure. There is no fan and no vent, which is the correct approach for a sealed indoor box.

One face is pure Raspberry Pi: two USB 2.0 ports, two USB 3.0 ports, and gigabit Ethernet.

The opposite face of the WisMesh Station HP showing the GPS antenna SMA connector, LoRa antenna, USB-C power input, and status LEDs

The other face carries the RF and the power: the LoRa antenna connector, the GPS antenna connector with the puck’s cable running off to the left, USB-C for power, and two status LEDs. RAK publishes these as RP-SMA for LoRa and SMA for GPS, which is worth knowing before you order an antenna.

Those four USB ports matter more than they look. They are how this box picks up a second radio, which is the whole capabilities story further down.

Connect the antenna before you apply power. That applies to every high-power LoRa device and RAK says it too.

What RAK Actually Shipped Us

Here is where a first look earns its keep, because the unit disagreed with itself.

Product label on the side of the unit reading RAK WisMesh Station HP, model RAK8623, input 5 V 3 A

The label on the case says RAK8623, WisMesh Station HP, 5 V at 3 A. That is the high-power SKU, the one with the amplified radio.

The HAT disagreed. The RAK6421 is HAT+ compliant, so its onboard EEPROM carries RAK’s own factory inventory of the board, and the Pi exposes it in the device tree without a screwdriver:

$ tr -d "\0" < /proc/device-tree/hat/product
6421 Pi Hat
$ tr -d "\0" < /proc/device-tree/hat/custom_1
io_slot1 RAK13300
$ tr -d "\0" < /proc/device-tree/hat/custom_3
sensor_slot_a RAK12501

RAK13300 is the standard 22 dBm module, not the amplified one. Two RAK records, two different answers, on the same unit.

The screwdriver settles it.

Lid removed from the WisMesh Station HP showing the RAK6421 HAT, the RAK13302 LoRa module, the GNSS module, and the Raspberry Pi 4 underneath

The module in IO slot 1 is labelled RAK13302, FCC ID 2AF6B-13302, and the board silkscreen underneath reads RAK13302_VD. It is the amplified part, the case label is right, and the EEPROM’s module field is a stale factory record. That is the likeliest explanation rather than a contradiction in principle: RAK programs the EEPROM at HAT level, and the module field did not get updated when a 13302 was fitted.

Worth flagging for anyone else with one of these: if you configure from the EEPROM alone, you will believe you have the 22 dBm part. Read the silkscreen.

The module label also carries a code of 001. RAK’s datasheet for the VD board revision says the module ships as two non-switchable hardware variants, 001 for battery supply and 002 for external 5 V, and 002 is the one with the 5 V connector on the underside. Ours is 001. The RAK6421 derives a VBAT rail at 4.17 V from the Pi’s 5 V, which is the obvious thing for a battery-supply variant to run from, and pairing them this way avoids needing a separate 5 V feed inside the case. We have not verified that directly.

Inside

The same photo covers the rest of the build. The HAT sits on the Pi’s 40-pin header with the LoRa module in IO slot 1 and the RAK12501 GNSS module, a Quectel L76K, in sensor slot A. Two IPEX pigtails run from the modules out to the bulkhead connectors on the case. The HAT silkscreen is dense and useful: slot labels, the ADC address options at 0x48 through 0x4B, and the J8 and J9 breakout pads for VBAT, AIN1, GPIO 4 and 5, 3V3, ground, and I2C.

Underneath it all is an ordinary Raspberry Pi 4 Model B, Rev 1.5 on ours, with 2 GB of RAM. The camera connector and HDMI ports are still there, unused and inaccessible with the lid on.

RAK6421 WisMesh Pi HAT slot layout showing two IO slots for LoRa radios and four sensor slots

The HAT is what makes this a platform rather than an appliance. Two IO slots for LoRa radios on the SPI bus with independent chip selects, so slot 1 is /dev/spidev0.0 and slot 2 is /dev/spidev0.1. Four sensor slots, of which A and C take a long module, and a long module in C makes D unreachable. Slot 2 is empty on a stock unit.

Because the HAT is HAT+ compliant, its EEPROM supplies its own device-tree overlay. Our card is stock Raspberry Pi OS with config.txt untouched and dtparam=spi=on still commented out, and both spidev nodes exist anyway. Worth knowing if you roll your own image and go looking for a problem you do not have.

About the 1 Watt

The RAK13302 is a Semtech SX1262 behind a Skyworks SKY66122 front end with an integrated filter stage, 902 to 928 MHz. Hardware ceiling is 30 dBm.

That is not the US operating point. The module’s grants under FCC ID 2AF6B-13302 authorize 0.2897 W as a spread spectrum transmitter and 0.2831 W as a digital transmission system, both peak conducted. Under 290 mW either way, against hardware rated for more than three times that. Rokland states units ship with compliant settings. It is still roughly 3x a typical 100 mW node, so it is not a bait and switch, but the 1 W on the box is a capability and not a permission. We went through the bandwidth rules that produce numbers like that in a separate post, because the power spectral density limit does more of the work there than the headline power figure does.

Power is the other half of that story. RAK publishes a peak current of 1000 mA at full output, dropping to 410 mA at 21 dBm. An amp of transmit peak on top of a Pi 4 that wants 3 A on its own is where the supply rating comes from, and it is why this is a mains device with no battery path.

RAK’s product copy also includes an unattributed use case about an operator going from under 2 km on handhelds to “stable 12 km links” after moving to the high-power variant. No antenna, no terrain, no method, no operator named. Elevated 900 MHz LoRa with clean line of sight does 12 km at 100 mW, so that number describes the sites rather than the amplifier. We are quoting it as vendor copy rather than repeating it as spec.

What It Runs

This is the part we are only touching here, because it is most of the review.

Out of the box it is a Meshtastic node. RAK publishes the image build, so the contents are knowable from source rather than from the store copy: on a Debian bookworm arm64 lite base it installs meshtasticd from the OpenSUSE Meshtastic alpha repository, the Meshtastic Python CLI, and Docker, then stages a MeshMonitor docker-compose file in the rak user’s home without starting it. It does not install Mosquitto, Node-RED, InfluxDB, or Grafana anywhere in the build, whatever the product pages say. Those live in a separate RAK repo as an optional installer. Meshtastic itself comes up at https://<pi-ip>:9443.

We reimaged ours, because NodakMesh is a MeshCore network.

Diagram of the stack running on the Station: openHop owns the SX1262, hosts a companion identity on localhost, and feeds packet capture to MQTT and disk

The useful finding is that the internal radio is not locked to Meshtastic. openHop, a Linux MeshCore implementation, drives an SX1262 directly through spidev and system GPIO, and it ships three RAK6421 board presets out of 27. One config file and the radio came up:

SX1262Radio configured: freq=910.5MHz, power=14dBm, sf=7, bw=62.5kHz
SPIdev opened: /dev/spidev0.0 @ 2000000Hz
DIO3 TCXO enabled: 1.8V, 5ms delay
DIO2 RF switch control enabled
SX1262 radio initialized successfully

No companion radio on a USB port, no hand-wired pin map. For anyone doing this themselves, here are both slots in BCM numbering, since this is the part you retype into a config file:

SettingIO slot 1IO slot 2
SPI device/dev/spidev0.0/dev/spidev0.1
bus_id / cs_id0 / 00 / 1
cs_pin-1 (kernel-managed)-1 (kernel-managed)
reset_pin1624
busy_pin2419
irq_pin2218
en_pins12, 1326, 23
use_dio2_rftruetrue
use_dio3_tcxotrue, 1.8 Vtrue, 1.8 V

Those en_pins are load-bearing on this variant. An SX1262 sitting behind an unconfigured SKY66122 initialises cleanly and then hears almost nothing, and openHop drives those enables natively where meshtasticd has no mechanism for it.

Ours runs as a passive observer rather than a repeater, because it sits underneath an existing repeater and a second forwarder at one set of coordinates duplicates traffic and pollutes route discovery. It captures every packet with SNR and RSSI to local disk and publishes to two community MQTT brokers. That configuration, what it takes to keep it from forwarding, and the several ways it can go wrong are the review.

One thing the Pi buys you that an MCU node does not: our node is also posting NWS forecasts and severe weather alerts for the Fargo and Moorhead area to a channel, off the same box, in Python. That is a capability, not a benchmark, and we will treat it as one.

Full Specs

SpecDetail
ModelRAK8623 (HP) / RAK8622 (standard)
PlatformRaspberry Pi 4 Model B, Rev 1.5 on our unit
RAM2 GB
HATRAK6421 WisMesh Pi HAT, HAT+ compliant with ID EEPROM
LoRa ModuleRAK13302 (SX1262 + SKY66122), board rev VD, label code 001
Max TX Power30 dBm hardware, ~290 mW authorized in the US
GNSSRAK12501 (Quectel L76K), sensor slot A
Expansion2 WisBlock IO slots, 4 sensor slots
SPI/dev/spidev0.0 (slot 1), /dev/spidev0.1 (slot 2)
Ports2x USB 2.0, 2x USB 3.0, gigabit Ethernet, USB-C power
Storage32 GB microSD, removable
Power Input5 V at 3 A
EnclosureFinned aluminium, no fan
Dimensions92 x 68.3 x 57.5 mm
Weight630 g
Operating Temp-10 to +55 C
AntennasRP-SMA for LoRa, SMA for GPS, puck on a cable
FirmwareMeshtastic via meshtasticd, MeshCore via openHop
Price$175.99 HP, $169.99 standard

How It Compares to the WisMesh 1W Booster Kit

The natural comparison is RAK’s own WisMesh 1W Booster Starter Kit, because it is the same RAK13302 radio with a completely different computer behind it, at a quarter of the price.

WisMesh Station HPWisMesh 1W Booster Kit
HostRaspberry Pi 4B, 2 GB, LinuxnRF52840 (RAK3401 core)
LoRa ModuleRAK13302RAK13302
Max TX Power30 dBm hardware, ~290 mW FCC30 dBm hardware, ~290 mW FCC
GNSSRAK12501 includedNot included
Battery / SolarNone, mains onlyLi-Ion connector and solar input
EnclosureAluminium, includedNone
Remote AccessSSH, dashboards, local captureBLE to a phone
Price$175.99$39

The radio chain is identical, so this is not an RF comparison. The Booster kit runs off a battery and a solar panel and the Station cannot, which rules the Station out of every hilltop and fence post. What the Station gives back is a computer: SSH into a misbehaving node instead of driving to it, package updates instead of reflashing, and a local broker and capture file so your telemetry lands on your own disk.

What the Review Will Cover

A first look is a hardware tour. The review comes after real time on the network, and it is about three things.

Performance. How it behaves as a working node rather than as a spec sheet, and what the capture file says about the site once there is enough of it to say anything.

Use case. Where a mains-powered Linux node earns its place next to the MCU nodes already on the mesh, and where it plainly does not.

The software, properly. This post touches the stack. The review opens it up: the openHop configuration in full, the failure modes worth knowing about before you hit them, the dashboards and MQTT side, and what it takes to run a node like this without it quietly becoming a second repeater.

Who It’s For

If you want a fixed indoor node you can administer remotely and build on, this is aimed at you. The HAT means the radio is not a dead end and the second IO slot is open, the four USB ports mean a second protocol is a dongle away, and the Linux host means the node is a computer rather than an appliance.

If you are building a solar repeater, this is the wrong tool and the Booster kit is the right one. No battery input, no solar path, mains only.

If you are on MeshCore and assumed a Pi-based Meshtastic box meant hanging a companion radio off a USB port, it does not. The board presets are already upstream, the pin map is published here, and the radio inside RAK’s Meshtastic gateway will run your mesh instead.

You can find the WisMesh Station on the RAKwireless store or from Rokland in the US. New to this? Start with the MeshCore getting started guide or browse compatible devices.

#news #rakwireless #rak wismesh station #rak8623 #rak6421 #rak13302 #raspberry-pi #meshtasticd #meshtastic #meshcore #openhop #high-power

Comments