Budgeting airtime, framing a mesh packet, routing it, and securing a LoRaWAN uplink: everything a node needs to reach a network it cannot see.
One install for the 4 capabilities of this domain. Each is also its own package, and
pamoja is the whole framework in one.
npm install @pamoja/radio
| Capability | Package | What it covers |
|---|---|---|
| LoRa airtime | @pamoja/lora |
Time-on-air, duty-cycle off-time, and the regional channel plans a LoRa node must keep to |
| LoRaWAN | @pamoja/lorawan |
LoRaWAN 1.0.x MAC framing, AES-CMAC and AES encryption, and both halves of the OTAA join |
| Mesh frames | @pamoja/mesh |
Addressed, hop-limited, CRC-checked frames and duplicate suppression that floods a packet exactly once |
| Routing | @pamoja/routing |
Reverse-path routing that learns the cheapest route from overheard traffic |
The guides, with a worked TypeScript example for each, are at https://pamoja.molex.cloud/docs.
MIT
Radio and reach: Budgeting airtime, framing a mesh packet, routing it, and securing a LoRaWAN uplink: everything a node needs to reach a network it cannot see.
Installing this package installs
@pamoja/lora,@pamoja/lorawan,@pamoja/mesh,@pamoja/routing, and re-exports each under its own name, so a name two of them share stays unambiguous.