Hardware#
pamoja is a software library, so it runs on whatever its host runs on. This page is narrower and more useful than that: it lists the parts the drivers were written against, the buses and protocols the crates implement, the radios they budget airtime for, and the boards the project builds and tests on.
Nothing here is a compatibility promise. It is a record of what the code was written from, so you can tell at a glance whether a part you already have is one pamoja decodes byte for byte, one it reaches over a bus it speaks, or one you will be writing a driver for.
Where the figures come from. Every part links one document under "Read and build": the
manufacturer's own datasheet, or the standard that defines the thing, or the maker's own
documentation for a board. The figures on the card come from that document and nowhere else.
There are no distributor listings, datasheet mirrors, or tutorial sites among them, and
cargo xtask links fetches every one so a rotted link fails the build rather than sitting there
looking authoritative. The exception is the handful of vendors whose
sites refuse any scripted client; those entries say so in the data file, and a person opens
them instead.
What the cost line means. A coarse band for a typical breakout module or board in USD, to tell a two dollar sensor from a two hundred dollar autopilot. It is not a quote, it is not a 1000-unit chip price, and it is not tracked against any vendor.
Where to buy. Each part lists two or three product pages from the makers' own stores and the larger distributors, the cheapest reputable option first, with the price each page listed on the day it was read. Those are places to buy, not sources: nothing on a card is taken from them. A workflow reads every page again each week, orders the offers cheapest first, and opens a pull request with what moved, so the day on the card is never more than a week old. A vendor whose site refuses scripted readers is priced from a listing of its page, and the card says so.
How this page stays honest. The entries are tied to the code. Adding a driver module under
pamoja-sensors or pamoja-actuators without an entry here fails cargo xtask docs --check,
and so does adding a LoRaWAN channel plan the page does not list.
Sensors#
Parts pamoja decodes byte for byte, each with a driver written from the datasheet linked beside it.
BME280
Bosch SensortecReports humidity, pressure and temperature as raw counts plus per-chip calibration coefficients, which the driver compensates.
- Interface
- I2C up to 3.4 MHz, or SPI up to 10 MHz
- Ranges
- 0 to 100 %RH, 300 to 1100 hPa, -40 to +85 °C
- Accuracy
- ±3 %RH from 20 to 80 %RH at 25 °C, ±1.0 hPa, ±0.5 °C from 0 to 65 °C
- Addresses
- 0x76 with SDO to ground, 0x77 with SDO to VDDIO; SDO must not float
- Supply
- 1.71 to 3.6 V main, 1.2 to 3.6 V interface
- Current
- 3.6 µA at 1 Hz for all three, 0.1 µA asleep
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$14.95 at Adafruit
Where to buy prices as listed on 2026-09-07
Read and build
DS18B20
Analog Devices, originally Maxim IntegratedA digital thermometer that returns Celsius over a single data line, each part carrying its own 64-bit serial code so a bus can hold many.
- Interface
- 1-Wire, many devices on one pin
- Range
- -55 °C to +125 °C
- Accuracy
- ±0.5 °C from -10 °C to +85 °C
- Resolution
- 9 to 12 bits, user programmable
- Conversion
- 750 ms maximum at 12 bits, halving with each bit dropped
- Supply
- 3.0 to 5.5 V, or parasite power from the data line
- Typical cost
- under $5 for a breakout module or a board; the lowest listed price is US$3.95 at Adafruit
Where to buy prices as listed on 2026-09-07
Read and build
INA219
Texas InstrumentsMeasures the drop across an external shunt and the bus voltage, and reports current and power once its calibration register is set.
- Interface
- I2C, 16 addresses from two pins
- Bus voltage
- senses 0 to 26 V
- Shunt full scale
- ±40, ±80, ±160 or ±320 mV by PGA setting
- ADC
- 12-bit, selectable down to 9-bit or averaged
- Registers
- 10 µV per shunt count, 4 mV per bus count
- Supply
- 3 to 5.5 V, 0.7 mA typical
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$6.90 at DFRobot
Where to buy prices as listed on 2026-09-07
Read and build
ADS1115
Texas InstrumentsA 16-bit delta-sigma ADC that digitises four single-ended or two differential inputs through a programmable gain amplifier.
- Interface
- I2C, four addresses from one pin
- Resolution
- 16 bits
- Inputs
- four single-ended or two differential
- Full scale
- ±0.256 V to ±6.144 V in six PGA steps
- Rate
- 8 to 860 samples per second
- Supply
- 2.0 to 5.5 V, 150 µA in continuous conversion
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$12.00 at Seeed Studio
Where to buy prices as listed on 2026-09-07
Read and build
SHT3x-DIS
SensirionReports humidity and temperature as calibrated 16-bit words, each followed by a CRC-8, which the driver checks and converts with the fixed linear formulas.
- Interface
- I2C up to 1 MHz, with optional clock stretching
- Ranges
- 0 to 100 %RH, -40 to +125 °C
- Accuracy
- typical ±2 %RH and ±0.2 °C (SHT30, SHT31), ±1.5 %RH and ±0.1 °C (SHT35)
- Repeatability
- 0.08 to 0.21 %RH and 0.04 to 0.15 °C across the three modes, measured in 15, 6, or 4 ms
- Addresses
- 0x44 with ADDR to logic low, 0x45 with ADDR to logic high; ADDR must not float
- Supply
- 2.15 to 5.5 V
- Current
- 0.2 µA idle in single-shot mode, 600 µA measuring, 1.7 µA average at one low-repeatability measurement per second
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$9.90 at Seeed Studio
Where to buy prices as listed on 2026-09-07
Read and build
SCD40 and SCD41
SensirionA photoacoustic NDIR CO2 sensor with a built-in humidity and temperature sensor; every word it sends carries a CRC-8 the driver checks.
- Interface
- I2C at 0x62, up to 100 kHz
- CO2 range
- 0 to 40000 ppm output; specified 400 to 2000 ppm (SCD40) and 400 to 5000 ppm (SCD41)
- CO2 accuracy
- ±(50 ppm + 5 %) for the SCD40, ±(40 ppm + 5 %) for the SCD41
- Humidity and temperature
- 0 to 100 %RH within ±6 %RH, -10 to 60 °C within ±0.8 °C
- Update interval
- 5 s periodic, about 30 s low power, single shot on the SCD41
- Supply
- 2.4 to 5.5 V, 15 mA average and 175 mA peak at 3.3 V in periodic measurement
- Typical cost
- $20 to $60 for a breakout module or a board; the lowest listed price is US$44.95 at Adafruit
Where to buy prices as listed on 2026-09-07
Read and build
TMP117
Texas InstrumentsA 16-bit digital thermometer accurate to ±0.1 °C with no calibration, with programmable alert limits, a user offset, and 48 bits of EEPROM.
- Interface
- I2C and SMBus, 1 kHz to 400 kHz, four addresses from one pin
- Range
- -55 °C to +150 °C
- Accuracy
- ±0.1 °C from -20 °C to 50 °C, ±0.3 °C over the full range
- Resolution
- 16 bits, 7.8125 m°C per count
- Addresses
- 0x48 to 0x4B with ADD0 tied to GND, V+, SDA, or SCL
- Conversion
- 15.5 ms typical one-shot, 1 s cycle with 8 averages at reset
- Supply
- 1.7 to 5.5 V up to 70 °C, 1.8 to 5.5 V to 150 °C
- Current
- 3.5 µA typical at a 1 Hz cycle, 150 nA in shutdown
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$11.50 at Adafruit
Where to buy prices as listed on 2026-09-07
Read and build
HDC1080
Texas InstrumentsReports humidity and temperature as 16-bit fractions of full scale with no per-chip calibration, which the driver decodes in exact integer arithmetic alongside the configuration register.
- Interface
- I2C, 10 to 400 kHz
- Ranges
- 0 to 100 %RH; temperature sensor -40 to +125 °C, humidity sensor -20 to +70 °C (functional to +85 °C)
- Accuracy
- ±2 %RH typical; ±0.2 °C typical, ±0.4 °C max from 5 to 60 °C
- Resolution
- 14, 11, or 8 bit humidity in 6.50, 3.85, or 2.50 ms; 14 or 11 bit temperature in 6.35 or 3.65 ms
- Address
- fixed 0x40; manufacturer id 0x5449, device id 0x1050, 40-bit serial number
- Supply
- 2.7 to 5.5 V; 1.3 µA average at 1 sample/s for 11-bit humidity and temperature, 100 nA asleep
- Typical cost
- under $5 for a breakout module or a board; the lowest listed price is US$1.46 at LCSC
Where to buy prices as listed on the day named
Read and build
OPT3001
Texas InstrumentsA single-chip lux meter filtered to the human eye's response that reports illuminance as a 4-bit exponent and 12-bit mantissa, ranging itself across twelve full-scale settings.
- Interface
- I2C or SMBus up to 2.6 MHz, four addresses from the ADDR pin, INT pin
- Range
- 0.01 to 83865.6 lux, 12 binary-weighted full-scale ranges or automatic ranging
- Resolution
- 0.01 lux per LSB at the lowest range, 23-bit effective dynamic range
- Accuracy
- 2000 lux reads 1800 to 2200 lux, 0.2 % matching between ranges, 0.2 % response at 850 nm
- Conversion
- 100 ms or 800 ms, 720 to 880 ms in the 800 ms setting
- Addresses
- 0x44 to 0x47 with ADDR to GND, VDD, SDA, or SCL
- Supply
- 1.6 to 3.6 V, 1.8 µA active and 0.3 µA shutdown typical, I/O 5.5 V tolerant
- Temperature
- -40 to +85 °C
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$3.60 at RAKwireless
Where to buy prices as listed on 2026-09-07
Read and build
INA226
Texas InstrumentsMeasures the drop across a shunt and the bus voltage on either side of the load, reports current and power once calibrated, and drives an alert pin from one programmable limit.
- Interface
- I2C or SMBus up to 2.94 MHz, 16 addresses from two pins
- Bus voltage
- senses 0 to 36 V, 1.25 mV per count
- Shunt full scale
- ±81.92 mV, 2.5 µV per count
- ADC
- 16-bit, 140 µs to 8.244 ms per conversion, 1 to 1024 samples averaged
- Accuracy
- 0.1 % gain error and 10 µV shunt offset, maximum
- Alert
- open-drain pin on a shunt, bus, or power limit, or conversion ready
- Supply
- 2.7 to 5.5 V, 330 µA typical, 2 µA maximum powered down
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$2.66 at Mouser
Where to buy prices as listed on the day named
Read and build
BMP280
Bosch SensortecReports barometric pressure and temperature as 20-bit raw counts plus per-chip calibration coefficients, which the driver compensates; the BME280 without the humidity element.
- Interface
- I2C up to 3.4 MHz, or SPI (3 or 4 wire) up to 10 MHz
- Ranges
- 300 to 1100 hPa, -40 to +85 °C (full accuracy 0 to +65 °C)
- Accuracy
- ±1.0 hPa absolute from 0 to 65 °C, ±0.12 hPa relative from 700 to 900 hPa, ±0.5 °C at 25 °C
- Resolution
- 0.16 Pa and 0.0003 °C at ×16 oversampling; 1.3 Pa RMS noise unfiltered, 0.2 Pa with the IIR filter
- Addresses
- 0x76 with SDO to ground, 0x77 with SDO to VDDIO; SDO must not float
- Supply
- 1.71 to 3.6 V main, 1.2 to 3.6 V interface
- Current
- 2.8 µA at 1 Hz forced mode, lowest power; 0.1 µA asleep
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$9.80 at Seeed Studio
Where to buy prices as listed on 2026-09-07
Read and build
Actuators#
Parts pamoja drives: a PWM generator for servos, and the step-and-direction carriers a stepper sequence walks.
PCA9685
NXP SemiconductorsA 16-channel PWM generator that produces servo and dimming pulses; each output sinks 25 mA, so load current is switched by an external driver.
- Interface
- I2C, up to 62 devices per bus
- Channels
- 16, all sharing one frequency
- Resolution
- 12-bit, 4096 steps per output
- Frequency
- typically 24 Hz to 1526 Hz, 200 Hz at reset
- Supply
- 2.3 to 5.5 V, inputs and outputs 5.5 V tolerant
- Drive
- sinks 25 mA, sources 10 mA at 5 V; larger loads need external drivers
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$13.95 at SparkFun
Where to buy prices as listed on 2026-09-07
Read and build
ULN2003A
Texas InstrumentsA Darlington array that switches the coil current directly, for the four-wire steppers the coil sequencer walks a pattern across.
- Interface
- seven logic inputs, one per channel
- Channels
- seven NPN Darlington pairs
- Collector current
- 500 mA rated, single output
- Output voltage
- 50 V maximum
- Inductive loads
- common-cathode output clamp diodes included
- Typical cost
- under $5 for a breakout module or a board; the lowest listed price is US$0.97 at Digi-Key
Where to buy prices as listed on the day named
Read and build
A4988
Allegro MicroSystemsA bipolar stepper driver that turns one pulse on STEP into one microstep, sequencing the coils and regulating current in hardware.
- Interface
- step and direction, with three mode pins
- Motor supply
- 8 to 35 V
- Output current
- ±2 A maximum
- Steps
- full, 1/2, 1/4, 1/8 and 1/16
- Logic supply
- 3 to 5.5 V
- Note
- The datasheet states no continuous per-phase current against a cooling condition
- Typical cost
- under $5 for a breakout module or a board; the lowest listed price is US$6.95 at Adafruit
Where to buy prices as listed on 2026-09-07
Read and build
DRV8825
Texas InstrumentsA bipolar stepper driver with two H-bridges and an indexer, taking step and direction down to 1/32 step.
- Interface
- step and direction, with three mode pins
- Motor supply
- 8.2 to 45 V
- Output current
- up to 2.5 A per output at 24 V and 25 °C, with heat sinking
- Steps
- full, 1/2, 1/4, 1/8, 1/16 and 1/32
- Decay
- slow, fast or mixed
- Protection
- overcurrent, thermal shutdown and undervoltage lockout, reported on nFAULT
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$8.95 at M5Stack
Where to buy prices as listed on 2026-09-07
Read and build
Buses and field protocols#
The wires between a gateway and the parts above, and the framing each one carries.
I2C
NXP SemiconductorsThe two-wire addressable bus that hangs sensors and peripherals off one controller; the address a chip answers on is what the gpio crate carries.
- Interface
- two open-drain lines, SDA and SCL
- Rates
- 100 kbit/s standard, 400 kbit/s fast, 1 Mbit/s fast-mode plus, 3.4 Mbit/s high speed
- Addressing
- 7-bit and 10-bit targets, which may share a bus in every speed mode
- Lines
- SDA and SCL, both bidirectional, pulled up and driven open-drain for wired-AND
- Loading
- bus capacitance, not a device count, limits how many hang on it
Parts on this bus
- BME280I2C up to 3.4 MHz, or SPI up to 10 MHz
- INA219I2C, 16 addresses from two pins
- ADS1115I2C, four addresses from one pin
- SHT3x-DISI2C up to 1 MHz, with optional clock stretching
- SCD40 and SCD41I2C at 0x62, up to 100 kHz
- TMP117I2C and SMBus, 1 kHz to 400 kHz, four addresses from one pin
- HDC1080I2C, 10 to 400 kHz
- OPT3001I2C or SMBus up to 2.6 MHz, four addresses from the ADDR pin, INT pin
- INA226I2C or SMBus up to 2.94 MHz, 16 addresses from two pins
- BMP280I2C up to 3.4 MHz, or SPI (3 or 4 wire) up to 10 MHz
- PCA9685I2C, up to 62 devices per bus
Read and build
SPI
No standards body; described from Microchip's reference manualA full-duplex synchronous link between a controller and one selected peripheral at a time; no standard defines it, so pin names, timing and rate come from each device's own datasheet.
- Interface
- four wires: data in, data out, clock, select
- Signals
- serial data in, serial data out, a shift clock, and an active-low select
- Clock
- driven by the controller, and only while there is data to move
- Modes
- four combinations of clock polarity and clock edge, any of which may be chosen
- Rate
- set by the controller's clock prescalers; no standard fixes one
- Words
- 8 or 16 bits per transfer
Modbus RTU over RS-485
Modbus OrganizationRequest and reply in binary frames over a two-wire trunk, the way meters, drives and PLCs are wired along one cable.
- Interface
- RS-485 balanced pair, half duplex
- Physical layer
- a two-wire EIA/TIA-485 interface, terminated at both ends of the trunk
- Devices
- 32 on a segment without a repeater
- Addresses
- 1 to 247, with 0 as broadcast
- Rates
- 9600 and 19200 bit/s required, 19200 the default; 1200 to 115200 optional
- Length
- 1000 m at 9600 baud on AWG26 or heavier; drops no more than 20 m
- Framing
- address, function, data and a 16-bit CRC in at most 256 bytes; frames separated by 3.5 character times, and a gap over 1.5 discards one
Find parts
Read and build
CAN 2.0 and CAN FD
ISOThe multi-master vehicle bus whose identifier both labels a message and arbitrates access. The standard itself is paid, so the figures below are what its catalogue page states and what the crate implements.
- Interface
- differential bus
- Document
- ISO 11898-1:2024, edition 3, published May 2024
- Scope
- the data link layer and the physical coding sublayer
- pamoja-can
- standard 11-bit and extended 29-bit identifiers, always masked to their width
- pamoja-can
- classic frames up to 8 bytes, and CAN FD frames up to 64 bytes at the discrete FD lengths
SAE J1939
SAE InternationalThe higher-layer protocol trucks, buses and off-highway machines run over CAN, defined as a set of SAE documents under one top-level recommended practice.
- Interface
- CAN
- Top-level document
- J1939_202603, revised March 2026, first issued April 2000
- Structure
- the top-level document describes the subordinate documents and defines the terms they share
- Committee
- Truck and Bus Control and Communications Network
Radios and long-range links#
Reaching a network that is not there: the transceivers, the channel plans they must obey, and the short-range meshes.
SX1276
SemtechThe sub-GHz LoRa and FSK transceiver on most 137 to 1020 MHz end devices, and the radio a pamoja airtime budget is computed for.
- Interface
- SPI
- Coverage
- 137 MHz to 1020 MHz
- Modulation
- LoRa, FSK, GFSK, MSK, GMSK and OOK
- Transmit power
- +20 dBm at 100 mW, with a separate +14 dBm high efficiency amplifier
- Sensitivity
- down to -148 dBm, for a maximum link budget of 168 dB
- Receive current
- 9.9 mA, with 200 nA register retention
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$14.95 at SparkFun
Where to buy prices as listed on 2026-09-07
Read and build
SX1262
SemtechThe later sub-GHz LoRa transceiver, covering 150 to 960 MHz with a higher power amplifier and a much lower receive current.
- Interface
- SPI
- Coverage
- 150 MHz to 960 MHz, continuous
- Modulation
- LoRa, LR-FHSS, FSK, GFSK, MSK and GMSK
- Transmit power
- +22 dBm high efficiency amplifier
- Sensitivity
- down to -148 dBm, for a maximum link budget of 170 dB
- Receive current
- 4.6 mA, with an integrated DC-DC converter and LDO
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$4.99 at Seeed Studio
Where to buy prices as listed on the day named
Read and build
LoRaWAN Regional Parameters
LoRa AllianceThe document that fixes the channel plan, data rates, transmit limits and maximum payload a LoRaWAN device must obey in each regulatory region.
- Interface
- LoRaWAN over sub-GHz LoRa
- Revision cited
- RP002-1.0.5, October 2025, Final
- Fixes per region
- channel frequencies, data rates, output power encoding, join CFList, receive windows and maximum payload
- Limits
- duty cycle in the dynamic-plan regions, dwell time where frequency-hopping rules apply
- EU863-870
- at least 24 stored channels, with 868.1, 868.3 and 868.5 MHz at DR0 to DR5 mandatory
- pamoja implements nine of its plans
- EU863-870, US902-928, EU433, AU915-928, CN470-510, AS923, KR920-923, IN865-867 and RU864-870
Find parts
Read and build
ESP-NOW
Espressif SystemsEspressif's connectionless protocol: short packets straight between Wi-Fi devices with no access point and no association step.
- Interface
- Wi-Fi PHY, vendor-specific action frames
- Payload
- 250 bytes on v1.0 devices, 1470 bytes on v2.0
- Default bit rate
- 1 Mbps
- Peers
- 20 paired devices, of which at most 17 encrypted, 7 by default
- Security
- CCMP per IEEE 802.11-2012, with a 16-byte primary master key and per-peer local keys
- Interfaces
- sends over either the station or the SoftAP interface
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$4.99 at Seeed Studio
Where to buy prices as listed on 2026-09-07
Read and build
Boards, targets and autopilots#
Where pamoja itself runs, and what it has been built and tested against.
Raspberry Pi 5
Raspberry Pi LtdThe gateway-class Linux board: the full std build, every transport, and the dashboard.
- SoC
- Broadcom BCM2712, quad-core 64-bit Arm Cortex-A76 at 2.4 GHz
- Memory
- LPDDR4X, in 1, 2, 4, 8 and 16 GB
- Connectivity
- gigabit Ethernet with PoE+ via a HAT, dual-band 802.11ac, Bluetooth 5.0
- I/O
- the standard 40-pin header, two USB 3.0 and two USB 2.0 ports, a UART debug port
- Note
- The page lists the 16 GB model at $305, above the band for the smaller ones
- Typical cost
- $60 to $200 for a breakout module or a board; the lowest listed price is US$110.00 at PiShop.us
Where to buy prices as listed on 2026-09-07
Read and build
Raspberry Pi Zero 2 W
Raspberry Pi LtdThe small, low-cost Linux board, running the same std build as the Pi 5 on the same 40-pin footprint.
- SoC
- RP3A0, quad-core 64-bit Arm Cortex-A53 at 1 GHz
- Memory
- 512 MB
- Wireless
- 2.4 GHz 802.11 b/g/n, Bluetooth 4.2 and BLE, onboard antenna
- I/O
- HAT-compatible 40-pin header footprint, unpopulated; micro USB OTG
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$17.25 at PiShop.us
Where to buy prices as listed on 2026-09-07
Read and build
ESP32
Espressif SystemsThe Wi-Fi and Bluetooth microcontroller behind most small sensor nodes, with the buses above and a CAN controller on chip.
- CPU
- Xtensa 32-bit LX6, single or dual core, up to 240 MHz
- Memory
- 448 KB ROM, 520 KB SRAM, 16 KB RTC SRAM
- Wireless
- 802.11 b/g/n up to 150 Mbit/s, Bluetooth 4.2 BR/EDR and LE
- Peripherals
- four SPI, two I2C, three UART, 34 GPIO
- CAN
- a TWAI controller compatible with ISO 11898-1
- pamoja
- not a CI target; Xtensa needs Espressif's own Rust toolchain
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$10.00 at Digi-Key
Where to buy prices as listed on the day named
- Digi-KeyESP32-DEVKITC-32E (Espressif ESP32-DevKitC with ESP32-WROOM-32E)listed price; the page refuses scripted readersUS$10.00 on 2026-09-06
- AdafruitEspressif ESP32 Development Board - Developer EditionUS$15.00 on 2026-09-07
- The Pi HutEspressif ESP32 Development Board - Developer Edition£14.40 on 2026-09-07
Read and build
ArduPilot
ArduPilot Dev TeamOpen autopilot firmware for copters, planes, rovers and submarines; the firmware is free, and the flight controller it runs on is what costs money.
- Interface
- MAVLink
- Vehicles
- multicopters, helicopters, fixed wing, rovers, submarines and antenna trackers
- Protocol
- MAVLink between ground station, flight controller and peripherals
- Licence
- GPL v3 or later
- Verified
- the SITL interop job in CI flies it in simulation against pamoja-mavlink
- Typical cost
- $60 to $200 for a breakout module or a board; the lowest listed price is US$130.99 at Holybro
Where to buy prices as listed on 2026-09-07
Read and build
PX4 Autopilot
Dronecode FoundationOpen autopilot firmware for multirotors, fixed wing, VTOL, helicopters and rovers, under a permissive licence; again, the board is the cost.
- Interface
- MAVLink
- Vehicles
- multirotors, fixed wing, VTOL, helicopters and rovers
- Protocol
- MAVLink for the ground station link
- Licence
- BSD 3-clause
- Verified
- the SITL interop job in CI flies it in simulation against pamoja-mavlink
- Typical cost
- $60 to $200 for a breakout module or a board; the lowest listed price is US$130.99 at Holybro
Where to buy prices as listed on 2026-09-07
Read and build
Pixhawk standard
Dronecode FoundationThe open hardware standard that fixes flight controller pin-outs, connectors and layout so boards from different vendors interchange; a board built to it is what costs money.
- Interface
- standardised connectors and pin-outs
- Autopilot standards listed
- v5X (DS-011), v6X (DS-012), v6U (DS-016) and v6C (DS-018)
- Also
- the connector standard (DS-009), the autopilot bus standard (DS-010) and the payload bus standard (DS-014); a smart battery standard is in draft
- Note
- Each fixes pin-outs, block diagrams, PCB layout guidelines and connector specifications
- Typical cost
- $60 to $200 for a breakout module or a board; the lowest listed price is US$130.99 at Holybro
Where to buy prices as listed on 2026-09-07
Read and build
Cortex-M4 with FPU, bare metal
ArmThe bare-metal target: CI cross-compiles every no_std crate for thumbv7em-none-eabihf, which is this core with its floating-point unit and no operating system.
- Architecture
- Armv7-M
- Floating point
- a built-in single-precision FPU, credited with 10x on single-precision operations
- DSP
- integrated DSP, SIMD and MAC instructions
- Use cases the page names
- industrial control, IoT sensors, AI and ML, audio
- pamoja
- the bare-metal job in CI builds pamoja-core, security, audit, update, zenoh, ros2 and mavlink for this target
- Typical cost
- $5 to $20 for a breakout module or a board; the lowest listed price is US$9.99 at Seeed Studio
Where to buy prices as listed on 2026-09-07
Read and build
Anything else with a driver#
The four sensors and two actuator families above are the parts pamoja decodes itself. They are
not the limit of what it can talk to. Everything below the driver is a trait: implement
Sensor or
Actuator for
your own part and the rest of the library, the profiles, the ladder, the dashboard, treats it
exactly like the ones here. The sensor drivers guide and the
actuator drivers guide show what that takes.
The same holds for transports. A part reachable over I2C, SPI, a serial line, RS485, or CAN is reachable through the crates listed under Buses, whether or not its decoder ships here.