asyncapi: 2.6.0
info:
  title: PPPoS (PPP over Serial, e.g. to a GSM/cellular modem)
  version: RFC 1662, over a serial modem link
  description: 'Same async HDLC framing as plain PPP, but hardware flow control isn''t
    optional here: the underlying radio/modem can stall mid-transmission, and without
    RTS/CTS pacing the host will overrun its buffer.'
servers:
  serial_link:
    url: serial://tty/115200
    protocol: serial
    description: Physical UART Transport (115200 bps, 8N1.0)
    bindings:
      serial:
        baudRate: 115200
        dataBits: 8
        parity: none
        stopBits: 1.0
        framingType: delimited
        integrity: crc16_ccitt_false
channels:
  omniuart/cmd/Frame:
    publish:
      summary: 'Send command Frame (ID: 0xFF)'
      description: Dispatch Frame frame to microcontroller over serial line
      message:
        name: Frame_Message
        title: Frame Command
        payload:
          $ref: '#/components/schemas/Frame_Request'
components:
  messages: {}
  schemas:
    Frame_Request:
      type: object
      properties:
        command_id:
          type: integer
          const: 255
          description: Opcode ID for Frame
        control:
          type: integer
          default: 3
        protocol:
          type: integer
        information:
          type: string
          contentEncoding: base64
      description: Command payload for Frame
