Transport configuration controls how the Edge Server communicates with other peers in the mesh network. You can enable or disable specific transport protocols based on your deployment environment.

Available Transports

Edge Server supports the following transport protocols:
  • LAN: Local Area Network connections over WiFi or Ethernet
  • Bluetooth LE: Bluetooth Low Energy

Basic Configuration

In the most basic use case, you can omit transport config and rely on defaults, this will enable all available P2P transports and turn on mDNS for peer discovery:
resources:
  my_ditto_db:
    resource_type: DittoDatabase
    db_id: "YOUR_APP_ID"
    device_name: "edge-device-1"
    auth:
      # ... auth configuration

Advanced Configuration

For fine-grained control over individual transports:
resources:
  my_ditto_db:
    resource_type: DittoDatabase
    db_id: "YOUR_APP_ID"
    device_name: "edge-device-1"
    transport_config:
      peer_to_peer:
        ble_enabled: false
        lan_enabled: true
        lan_mdns_enabled: true  # Auto-discover peers with same db_id
    auth:
      # ... auth configuration
See the transport configuration reference for more details.

Platform-Specific Notes

Bluetooth LE

  • For Linux deployments, see the Deploying on Linux guide for BlueZ requirements and setup
  • May need elevated permissions
  • Range typically 10-30 meters depending on environment

mDNS Discovery

  • Uses Bonjour on macOS
  • Ensure firewall allows mDNS traffic (port 5353)
  • Automatically discovers peers on the same network
  • See Deploying on LAN guide for more details

Common Configurations

LAN-Only Configuration

For deployments within a single network:
transport_config:
  peer_to_peer:
    ble_enabled: false
    lan_enabled: true
    lan_mdns_enabled: true

Static Peer Configuration

For known, fixed deployments:
transport_config:
  listen_config:
    tcp_listen:
      enabled: true
      ip: "0.0.0.0"
      port: 4040
  connect:
    tcp_servers:
      - "192.168.1.100:4040"