$200 Swarm M138 kit enables two-way satellite connectivity for IoT projects

Sparkfun has launched a Satellite Transceiver Kit based on the Swarm M138 satellite and GNSS modem that allows low-bitrate two-way connectivity for IoT projects anywhere on earth.

Remote IoT applications have benefited from LPWAN standards such as LoRaWAN and NB-IoT, but in some extreme cases coverage may still be challenging, so satellite communication may be the only practical option. It used to be really expensive, but Swarm makes this more affordable, and companies like SigFox and Semtech also have (or had?) plans to use low-earth orbit satellites for their respective LPWAN technologies.

Swarm M138 Satellite Transceiver Kit

Swarm M138 kit content and specifications:

  • Swarm M138 mini PCIe satellite modem and GNSS receiver module
    • MCU – Arm Cortex-M4 microcontroller
    • Up to 1 Kbps data rate, up to 912 bytes packet size
    • Frequency
      • 137-138 MHz (downlink)
      • 148-150 MHz (uplink)
    • Dimensions – 51.0 x 30.0 x 5.3 mm
    • Weight – 9.6 grams
    • Temperature Range – -40°C to +85°C
  • SparkFun Satellite Transceiver Breakout
    • 1x USB-C port for power
    • 2x SMA connectors for VHF and GNSS antennas
    • 3.3V UART and GPIO breakout
  • Antennas
    • Swarm VHF Antenna and SparkFun Ground Plane
    • Molex adhesive u.FL GNSS antenna
    • 2 x 25mm u.FL cables, u.FL to SMA adapter and 2 x M2.5 screws
  • Power Supply
    • 5V via USB Type-C port
    • 3.3V via UART breakout pins
  • Power Consumption
    • 3.3V – Rx: 26mA; Tx: 850 mA; sleep: up to 80 uA
    • 5V – Rx: 25mA; Tx: 550 mA; sleep: up to 112 uA (This means a USB 3.0 port is required from the host, since over 500 mA for Tx)

Swarm M138 satellite modemThe solution is made possible by Swarm who aims to “connect people and devices anywhere, at all times, at the lowest cost” through its constellation of tiny satellites (11 x 11 x 2.8 cm each). Besides purchasing the hardware for around $200, you’ll also need to subscribe to a data plan with an annual contract for $60 US per year, or about $5 per month. The plan includes 750 data packets per month with each packet up to 192 bytes in size, so it’s definitely for IoT, but it still allows you to send one packet every hour for one year. If it’s not enough, you can stack up to 4 data plans allowing a single modem to use 3,000 packets for up to 576 KB per month.

You’ll find out how to get started with assembly, use a Python3 PyQt5 GUI for testing the commands in Windows or with a Raspberry Pi SBC, and learn how to write Arduino code for the Sparkfun Satellite Transceiver Kit in the hookup guide. Alternatively, you can check out the Arduino library repository on GitHub.


Sparkfun sells the Satellite Transceiver Kit – Swarm M138 for $195.95 plus shipping. So for the first year, you would need to spend around $260 together with the data plan.

Via Hackster.io

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK 5 ITX RK3588 mini-ITX motherboard
Notify of
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
David Willmore
David Willmore
1 year ago

SparkFun? Hmm, has it passed any kind of regulatory approval? My last interaction with them was over some 1.2GHz TV TX/RX modules that they claimed were ‘license free’ which they most certainly were not. They refused to change the description nor warn users that this frequency band is very much regulated in all ITU zones. I stopped doing business with such an unethical company.

David Willmore
David Willmore
1 year ago


1 year ago

I don’t see advantage to add overhead stack on this frequency range, AIS is free to use put your MMSI and there are already satellites for them.
Just tweak administration to allow reuse old MMSI number to ioT and keep new MMSI number for boating and cargo.
but up link only

1 year ago

With respect and no abuse the band, an update rate of 3min (used for anchored boat) the data paquet is 21bytes long
so each day it’s possible to send UDP 604800 bytes as fake GPS data serial input
each month 18MBytes… just paying the API to consult data and be flex with authority lol

Khadas VIM4 SBC