POSEIDON runs on the M5Stack Cardputer-Adv and supports swappable hats — one at a time. Pick the mission's tool. v0.4 adds a W5500 SPI-to-Ethernet hat that unlocks full RaspyJack parity over a wired cable.
| MCU | ESP32-S3 @ 240 MHz |
| Display | 1.14" ST7789 240×135 |
| Keyboard | TCA8418 I²C QWERTY |
| Radio | WiFi 4 + BLE 5.0 |
| USB | Native USB-C (HID + CDC) |
| Storage | microSD + 8MB flash |
| Audio | I²S speaker + PDM mic |
| LoRa | SX1262 (433/868/915 MHz) |
| GNSS | ATGM336H GPS (NMEA auto-baud) |
| Antenna | RP-SMA external |
| Bus | SPI (shared with SD) |
| Use | Wardrive, LoRa scan, Meshtastic leaf-node |
| Sub-GHz | CC1101 (300–928 MHz) |
| 2.4 GHz | nRF24L01+ (promisc ESB + HID) |
| Vendor | PINGEQUA |
| Bus | SPI (shared with SD) |
| Use | Signal capture/replay, MouseJack, BLE spam via nRF24 |
| WiFi | 5 GHz + 2.4 GHz dual-band |
| 802.15.4 | Zigbee / Thread |
| Link | ESP-NOW mesh to Cardputer |
| Form factor | Remote satellite (USB-powered) |
| Use | 5G scan/deauth, Zigbee sniff, Thread enum |
| PHY | WIZnet W5500 10/100 full-duplex |
| Bus | SPI (shared FSPI w/ SD) |
| Stack | lwIP via Arduino Ethernet — transport-agnostic netif |
| Unlocks | Full RaspyJack parity on Cardputer — the SaltyJack suite (DHCP starve, rogue DHCP, Responder, WPAD, NTLM harvest) runs over wired lwIP instead of WiFi STA. |
| Why wired | Wired gets you past every PMF / WPA3 / corporate 802.1X defense that kills the wireless path. Plug in, own the broadcast domain. |
Only one hat at a time. The keyboard on I²C (TCA8418) frees GPIO 3–7 and 13/15 so hats can claim them without fighting the keyboard scan matrix.
| G3 | LoRa RST · held LOW at boot to keep SX1262 BUSY high-Z during M5GFX hat autodetect |
| G4 | LoRa DIO1 · shared with nRF24 CE on Hydra hat |
| G5 | LoRa NSS (SPI) · shared with CC1101 GDO0 on Hydra hat |
| G6 | LoRa BUSY · shared with nRF24 CS on Hydra hat |
| G7 | GPS RX (NMEA input) on LoRa hat |
| G13 | GPS TX (LoRa hat) · shared with CC1101 CS on Hydra hat (gps_end() releases before CC1101 begin) |
| G14 | SPI MOSI (shared across SD + every hat) |
| G39/G40 | SPI MISO / SCK |