adacam/docs/research/adacam-wayback-research-2026-03-30.md

12 KiB
Raw Blame History

Hivemapper Bee / Beemaps Hardware Docs — Wayback Research

Date: 2026-03-30 Researcher: Kayos (subagent) Status: Complete

Summary

The official docs.beemaps.com site (GitBook-hosted) is now down. Wayback Machine captures only the JavaScript shell, not the rendered content. However, the actual hardware and software documentation is available via Hivemapper's public GitHub repos.


Target URLs Checked (Wayback)

1. docs.beemaps.com/hardware/bee*

Archived. Many snapshots between ~20242026. Rendered via Next.js/GitBook so content not extractable from Wayback.

Most recent snapshot:

Key pages found in CDX:

  • /hardware/bee-overview
  • /hardware/bee-accessories
  • /hardware/get-started-with-the-bee
  • /hardware/get-started-with-the-bee/assemble-and-install
  • /hardware/get-started-with-the-bee/trip-trimming
  • /hardware/get-started-with-the-bee/troubleshoot-and-maintain
  • /hardware/bee/updating-bee-firmware
  • /hardware/bee/connect-to-beeuseful WiFi info
  • /hardware/bee-faq

2. docs.beemaps.com/* (full CDX)

Archived. Content is consumer-facing only. All rendered via client-side JS. GitBook Space ID: CqE4CQTtoY5eKWdxMx8c (GitBook org: -MZJxhgXsqOwEu5E6NAx)

Pages found in CDX (selection of hardware/developer interest):

  • /data-products/bee-edge-ai — Edge AI product page
  • /data-products/setup-with-console — "Console" = beemaps web console, NOT serial console
  • /hardware/bee/connect-to-bee — WiFi connection info

3. docs.hivemapper.com/hardware*

No results. Empty CDX.

4. docs.hivemapper.com/*

Archived. Contains older Hivemapper docs including:

  • https://docs.hivemapper.com/contribute/driving/bee-dashcam (snapshot 20250304091027)
  • https://docs.hivemapper.com/cameras/open-camera (snapshot 20250620230346)

5. hivemapper.com/docs*

Archived. Old 2019 pages, before the Bee product.


Content Extracted via Wayback

connect-to-bee page (docs.beemaps.com)

Wayback: https://web.archive.org/web/20250814012956id_/https://docs.beemaps.com/hardware/bee/connect-to-bee Content:

"Open the Bee Maps App... Connect to Bee via WiFi... The Bee creates a Wi-Fi network. Connect your phone to: Network Name: dashcam-XXXXXXXXXXXXXXXX (MAC-based suffix) Password: hivemapper"

updating-bee-firmware page (docs.beemaps.com)

  • Firmware updates OTA (over-the-air) only — "No action needed"
  • Also supports cellular data download then installs automatically
  • No manual/recovery flashing info in the public docs

troubleshoot-and-maintain page (docs.beemaps.com)

  • Links to: Updating Bee Firmware, Bee FAQ, Beekeeper for Fleets
  • No UART/debug content

Open Camera spec (docs.hivemapper.com/cameras/open-camera)

  • Describes "OC Hardware", "OC Firmware", "OC API Software" specs
  • This is the Open Dashcam (ODC) framework

Key GitHub Repos Found

Hivemapper/odc-api (LIVE — actively maintained)

URL: https://github.com/Hivemapper/odc-api Branch: bee (default, pushed 2026-03-30 — today!) Stars: 22 Forks: 9

Description: "Software and APIs used to run the Open Dashcam (ODC) devices that collect data on the Hivemapper Mapping Network"

From README:

  • SSH into Bee: ssh bee-wired (wired ethernet connection)
  • Deploy command: scp ./compiled/odc-api-bee.js bee-wired:/tmp/
  • Remount filesystem: mount -o remount,rw /
  • Stop/start service: systemctl stop odc-api / systemctl start odc-api
  • ODC API runs on port 5000: http://<DEVICE_IP>:5000/api/1/info
  • Live stream: http://<DEVICE_IP>:9001/?action=stream

GPS from raw data example:

  • GPS device path: /dev/ttyAMA1 — u-blox NEO-M9N, 38400 baud
  • GPS data via gpsd on device

Bee-specific config paths (from src/config/bee.ts):

  • Public folder: /data/recording
  • DB: /data/recording/data-logger.v2.0.0.db
  • Config: /opt/dashcam/bin/db-config.json
  • GPS: /data/recording/gps/
  • IMU: /data/recording/imu/
  • Firmware binaries: /opt/odc-api/
  • LED config: /tmp/led.json
  • WiFi interface: wlp1s0f0Intel WiFi (not RPi WiFi)
  • LTE firmware root: /data/lte-firmware/
  • Uses mender for firmware updates (not rauc)
  • Camera bridge: /opt/dashcam/bin/bridge.sh
  • IMU calibrator: /opt/dashcam/bin/imucalibrator
  • ACL tool: /opt/dashcam/bin/acl
  • EEPROM access: /opt/dashcam/bin/eeprom_access.py

Network APIs:

  • GET /api/1/network/p2p — switch to WiFi Direct P2P
  • GET /api/1/network/ap — switch to WiFi Access Point mode
  • GET /api/1/preview/start — start MJPEG live stream on :9001

Hivemapper/hdc_firmware (LIVE — HDC camera, CM4-based)

URL: https://github.com/Hivemapper/hdc_firmware Note: This is the HDC (original Hivemapper dashcam) firmware, not the Bee. However, the Bee shares the ODC API software layer. The HDC uses RPi Compute Module 4.

From dashcam/board/raspberrypi/config.txt:

dtoverlay=miniuart-bt   # Move BT to miniuart, UART0 (ttyAMA0) → serial console
enable_uart=1
dtoverlay=spi0-1cs      # IMU on SPI0
dtoverlay=spi1-1cs,cs0_pin=18   # LoRa on SPI1
dtoverlay=uart5         # GPS/GNSS on UART5
gpio=5=op,dl            # GPS reset
gpio=22=op,dh
dtparam=i2c_arm=on
dtparam=spi=on
dtoverlay=vc4-fkms-v3d,cma-512
dtoverlay=imx477        # Camera: Sony IMX477

From dashcam/board/raspberrypi/cmdline.txt:

root=/dev/mmcblk0p2 rootwait console=tty1 console=ttyAMA0,115200

Serial console on ttyAMA0 at 115200 baud

From HDC README — "Getting a Console":

You can get a console to the target using one of the following:

  1. Virtual terminal. Getty on TTY1 — connect HDMI monitor + USB keyboard.
  2. GPIO pins. Serial console on UART0 — USB-to-GPIO cable. Uses CM4IO pins 6, 8, 10 (GND, TX, RX). See: https://elinux.org/RPi_Serial_Connection and https://pi4j.com/1.3/pins/rpi-cm4.html
  3. SSH. Root user, no password (development builds).

Networking (HDC):

  • WiFi AP: SSID dashcam, password hivemapper, static IP 192.168.0.10
  • DHCP range: 192.168.0.11-50
  • Wired ethernet: DHCP client

SSH config example from README:

Host 192.168.0.10
    user root
    StrictHostKeyChecking no

Development mode enables:

  • Root login, no password
  • SSH access
  • Virtual terminal
  • Serial console on UART0

Hivemapper/bee-plugins (LIVE — Bee-specific)

URL: https://github.com/Hivemapper/bee-plugins (Not yet examined)

Hivemapper/capable_camera_firmware

URL: https://github.com/Hivemapper/capable_camera_firmware Fork. CSS/Zig/C++/C/JS. Possibly camera firmware for a different capable camera.


Hardware Platform Notes

HDC (original Hivemapper Dashcam)

  • Based on Raspberry Pi Compute Module 4 (CM4)
  • CM4IO board
  • Camera: Sony IMX477
  • GPS: u-blox M9N on UART5 (ttyAMA5) via gpsd
  • IMU: SPI0
  • LoRa: SPI1
  • Serial console: ttyAMA0 (UART0) at 115200 baud, CM4IO pins 6, 8, 10
  • Firmware: Built with Buildroot, RAUC updates

Bee (newer model, LTE dashcam)

  • Different hardware from HDC
  • WiFi interface wlp1s0f0Intel PCIe WiFi (not RPi) — likely x86 or ARM non-RPi platform
  • GPS: u-blox NEO-M9N on /dev/ttyAMA1
  • LTE modem integrated
  • Firmware: Uses mender (not rauc like HDC)
  • SSH: possible via wired ethernet (bee-wired hostname)
  • Default IP via WiFi AP: 192.168.0.10
  • WiFi SSID: dashcam-XXXXXXXXXXXXXXXX (MAC-based)
  • WiFi password: hivemapper

Additional Bee Details (from bee-plugins / device.py)

SSH Access (CONFIRMED)

# From devtools.py in bee-plugins
HOST_IP = '192.168.0.10'
ssh.connect(HOST_IP, username='root', password="", look_for_keys=False, allow_agent=False)

SSH is accessible on the Bee via WiFi. Root, empty password.

Calibration Data

  • Stored at /data/cache/calibration.json on device
  • Retrieve via: ssh root@192.168.0.10 'cat /data/cache/calibration.json'

LTE Detection

  • LTE device: /data/lte_name does NOT exist
  • WiFi-only device: /data/lte_name exists with content none

API Endpoints on Bee (port 5000)

  • GET /api/1/info — device info
  • GET /api/1/config — config
  • GET /api/1/plugins — plugin list
  • GET /api/1/lte-debug-info — LTE modem debug
  • GET /api/1/lte-debug-check-auth — LTE auth check
  • GET /api/1/wifiClient/settings — WiFi client settings
  • GET /api/1/wifiClient/scan — WiFi scan
  • GET /api/1/wifiClient/status — WiFi status
  • POST /api/1/config/uploadMode — switch between LTE/WiFi upload

Plugin Storage on Bee

  • Plugin path: /data/plugins/<plugin-name>/<plugin-name>
  • Plugin env: /data/plugins/<plugin-name>/.env
  • Cache: /data/cache/

GPS (UBX)

  • Uses ubxtool to configure u-blox GPS with session IDs
  • GPS protocol: UBX
  • GPS chip: u-blox M9N (NEO-M9N), connected on /dev/ttyAMA1

What Was NOT Found

  • No explicit UART/serial console docs for the Bee (only for HDC/CM4)
  • No mention of GPIO38, GPIO39, or ttyS3 anywhere in the Hivemapper GitHub repos
  • No PCB diagrams for the Bee
  • No recovery mode documentation for Bee
  • The Bee's exact SoC/board is not publicly documented

Direct Wayback URLs for Cobb

Archived docs pages (GitBook, JS-rendered, limited extractable content):

GitHub (LIVE, no login required):


  1. SSH directly into the Bee:

    • Connect to its WiFi (dashcam-XXXX, pw: hivemapper)
    • Run: ssh root@192.168.0.10 — should drop into root shell with no password
    • Then: dmesg | grep tty or ls /dev/tty* to enumerate all UARTs
    • cat /proc/device-tree/model or uname -a to find the SoC
    • cat /data/cache/calibration.json for hardware calibration
    • systemctl list-units --all to see all services
  2. Hit the ODC API info endpoint:

    • While on Bee WiFi: curl http://192.168.0.10:5000/api/1/info
    • Will return device serial, firmware version, hardware info
  3. Search for the Bee's actual SoCwlp1s0f0 WiFi interface suggests Intel PCIe WiFi, not standard RPi. Could be x86-based or Qualcomm/Snapdragon.

  4. Look at odc-api issues — 44 open issues at https://github.com/Hivemapper/odc-api/issues

  5. Check capable_camera_firmware — CSS/Zig/C/C++, might be the Bee camera module firmware

  6. GPIO38/GPIO39/ttyS3 — not found in public GitHub. If these exist on the Bee, they're referenced in closed-source firmware or undocumented hardware. Try ls -la /dev/ttyS* and ls -la /dev/ttyAMA* via SSH when you have access.