Open DStar Gateway (ODG) Design

The Open DStar Gateway (ODG) subsystem consists of a controller daemon that listens for IP traffic from the Icom DStar controller (RP2C) and makes the data streams available to "interested" applications such as the gateway daemon through an open API. Applications may forward data to the DStar Controller through the controller daemon.

ODG controller daemon description:

  • lightweight - embedded target or gateway PC (or run on WRT54G router)
  • minimal "business logic"
  • close proximity to controller to maintain tight timing requirements
  • handle DV and DD traffic
  • open source and open API
  • multiple applications may connect simultaneously
  • manage queues to RF modules with pacing (allows satellite connections)
  • applications register "interests" through control interface
    • RP2C controller/RF User status packets
    • DV packets
    • DD packets
    • ODG controller status
  • no inside/outside network required (no 172net->10net->internet)
  • automatically report external IP address to host listed in config file

ODG gateway daemon description:

  • runs independent from ODG controller daemon (can run with no RP2C)
  • may run on remote gateway PC connected to ODG controller daemon
  • provides:
    • echo test
    • simulcast
    • announcements
      • voice
      • data
      • status (on demand)
    • DV Dongle access
      • single module - change on demand
      • multi module "scanning"
      • RF user updates
      • voice and data transmit and receive
    • linking
      • hard links
        • keepalive (network timeout drops connection)
        • keepalink (semi perminant doesn't drop)
        • force unlink from both sides
        • allow connections to all, none, or subset of gateways
      • soft links
        • user initiated using UrCall of remote user or gateway
        • automatically links (no more "/" calls)
        • drops link on inactivity timeout
        • user may force unlink early
        • new gateway to gateway or user to user calls blocked when a call is in progress
      • soft links may override hard links ???
      • link status feedback at the end of each user transmission ???
      • new links are announced from the remote system (like IRLP)
        • quick announce - on link/unlink
        • long announce - on request
      • link groups - access control during events (EMCOMM)
        • includes gateways that may link
        • includes DV Dongle users that may link
      • all linking/unlinking initiated via RF or command link or web
    • command line control - all RF functinos available via command line or web page control
    • command line status file(s)
      • links
      • DV Dongles
      • recent users - RF and remote
      • push to web page
    • text message streams
      • text interface via sockets (possibly telnet)
      • store and forward messaging
        • recalled on target user keyup
        • target user can recall last directed message
      • targets include users, gateways, and RF modules
      • authentication for connection to message service
  • multiple root registration servers auto synchonized
    • root server may run on gateway PC for standalone systems
    • user registration via web page on root registration server
      • no registration on individual gateways
      • user selects "home" gateway
      • "home" gateway admins approve user requests
      • email notification
        • request
        • approve
        • password change request
        • password change success/fail
      • gateway admins can block users on "home" gateway
      • root servers synchronized with local gateways
      • users request static or dynamic IP addresses
      • DHCP supported on ID-1 connections
    • gateway registration via web page on root registration server
      • regional admins apporve
      • email notifications
      • manage gateway administration "list" which controls users
      • gateway granted root key and gateway key for authentication