Sound Control Protocol for ew D1
Table Of Contents
- 1. Introduction
- 2. Open Sound Control Overview
- 3. Conventions
- 4. SSC Data Structure Specification
- 5. General SSC Address Schema
- 5.1 SSC Meta Information - /osc
- 5.1.1 SSC Protocol version - /osc/version
- 5.1.2 SSC error state - /osc/error
- 5.1.3 SSC transaction ID - /osc/xid
- 5.1.4 SSC Ping - /osc/ping
- 5.1.5 SSC Schema reflection - /osc/schema
- 5.1.6 SSC Method parameter range reflection - /osc/limits
- 5.1.7 Connection-specific SSC Address Space - /osc/state
- 5.1.8 SSC connection close - /osc/state/close
- 5.1.9 SSC subscriptions - /osc/state/subscribe
- 5.1.10 SSC reply output style - /osc/state/prettyprint
- 5.1.11 SSC interactive method address base - /osc/state/baseaddr
- 5.1.12 SSC timed method execution - /osc/timetag
- 5.1.13 SSC Method time stamps - /osc/timestamp
- 5.1.14 SSC Method Authorisation - /osc/tan
- 5.1.15 SSC protocol feature reflection - /osc/feature
- 5.2 Generic Device Information and Settings Address Space - /device
- 5.1 SSC Meta Information - /osc
- 6. SSC Transport Layer Adaptations
- 6.1 UDP/IP
- 6.2 TCP/IP
- 6.3 HTTP(S)/TCP/IP
- 6.4 Secure Shell Transport/TCP/IP
- 6.5 SSC Server Discovery
- 6.6 IEEE 802.15.4 / ZigBee / DECT
- 6.7 Low-bandwidth serial infrared link
- 6.8 Byte-stream connections (serial interface etc.)
- 6.9 Unidirectional low-bandwidth monitoring
- 6.10 Configuration files
- 6.11 Scripting files
- 7. Developer’s Guide for evolution wireless D1
- 8. SSC Method List
- 8.1 /interface/version
- 8.2 /osc/xid
- 8.3 /osc/version
- 8.4 /osc/error
- 8.5 /osc/schema
- 8.6 /osc/limits
- 8.7 /osc/feature/pattern
- 8.8 /osc/feature/baseaddr
- 8.9 /osc/feature/subscription
- 8.10 /osc/feature/timetag
- 8.11 /osc/state/subscribe
- 8.12 /osc/state/close
- 8.13 /osc/state/prettyprint
- 8.14 /device/name
- 8.15 /device/language
- 8.16 /device/identity/product
- 8.17 /device/identity/version
- 8.18 /device/identity/serial
- 8.19 /device/identity/vendor
- 8.20 /device/network/ether/interfaces
- 8.21 /device/network/ether/macs
- 8.22 /device/network/ipv4/interfaces
- 8.23 /device/network/ipv4/auto
- 8.24 /device/network/ipv4/ipaddr
- 8.25 /device/network/ipv4/netmask
- 8.26 /device/network/ipv4/gateway
- 8.27 /device/network/ipv4/fixed_ipaddr
- 8.28 /device/network/ipv4/fixed_netmask
- 8.29 /device/network/ipv4/fixed_gateway
- 8.30 /device/network/ipv6/interfaces
- 8.31 /device/network/ipv6/ipaddr
- 8.32 /device/state
- 8.33 /device/progress
- 8.34 /device/update/confirmation
- 8.35 /device/max_rf_power_Level
- 8.36 /device/reset
- 8.37 /device/factory_reset
- 8.38 /rx1/identify
- 8.39 /rx1/pair
- 8.40 /rx1/rf_quality
- 8.41 /rx1/rf_stack_active
- 8.42 /rx1/walktest
- 8.43 /rx1/mute_switch_active
- 8.44 /rx1/autolock
- 8.45 /rx1/warnings
- 8.46 /brightness
- 8.47 /mates/active
- 8.48 /mates/tx1/device_type
- 8.49 /mates/tx1/bat_type
- 8.50 /mates/tx1/bat_state
- 8.51 /mates/tx1/bat_gauge
- 8.52 /mates/tx1/bat_lifetime
- 8.53 /mates/tx1/bat_bars
- 8.54 /mates/tx1/bat_health
- 8.55 /mates/tx1/bat_cycles
- 8.56 /mates/tx1/switch1/label
- 8.57 /mates/tx1/switch1/state
- 8.58 /mates/tx1/acoustic
- 8.59 /mates/tx1/warnings
- 8.60 /audio/out1/label
- 8.61 /audio/out1/level_db
- 8.62 /audio/out1/gain_db
- 8.63 /audio/out1/type
- 8.64 /audio/equalizer/custom
- 8.65 /audio/equalizer/preset
- 8.66 /audio/de_esser/preset
- 8.67 /audio/agc/preset
- 8.68 /audio/low_cut
- 8.69 /audio/effects_reset
- 8.70 /get_master_subscriber
- 9. SSC Error List
- 9.1 1xx Informational
- 9.2 2xx Success
- 9.3 3xx Redirection
- 9.4 4xx Client Error
- 9.4.1 400 Bad Request
- 9.4.2 401 Unauthorized
- 9.4.3 403 Forbidden
- 9.4.4 404 Not Found
- 9.4.5 406 Not Acceptable (E.g. wrong type for parameter)
- 9.4.6 408 Request Timeout
- 9.4.7 409 Conflict
- 9.4.8 410 Gone
- 9.4.9 413 Request Entity Too Large
- 9.4.10 414 Request Too Complex
- 9.4.11 422 Unprocessable Entity
- 9.4.12 423 Locked
- 9.4.13 424 Failed Dependency
- 9.4.14 450 Answer Too Long
- 9.4.15 454 Parameter Address Not Found
- 9.5 5xx Server Error
SSC Developer‘s guide for evolution wireless D1 | 29/56
SSC Transport Layer Adaptations
HTTP may be provided by the SSC Server as HTTP-over-TLS, optionally secured with server or even
client side certificates, if absolute security is required for the SSC system.
6.4 Secure Shell Transport/TCP/IP
This is handled exactly like TCP/IP transport.
6.5 SSC Server Discovery
Networked devices implement DNS-SD (Apple Bonjour) as discovery protocol.
The DNS Service-Type is specified as "_ssc".
Because all networked SSC Servers must implement SSC-over-UDP, they MUST all publish a DNS-SD
service under "_ssc. _udp". Those servers that additionally support TCP MUST publish another DNS-
SD service under "_ssc._tcp".
The DNS-SD service instance name must be identical to the device name accessible as /device/
name. DNS-SD automatic name collision resolution SHOULD be performed, and the resulting name
changes MUST be reflected back into /device/name and the persistent device configuration. The
renaming rules MAY be tailored to suit product specific requirements.
The DNS-SD service registration includes the port numbers used. SSC Clients SHOULD NOT rely on
default ports.
The DNS-SD hostname SHOULD NOT be presented to the user. It may contain a unique identification
part (e.g., derived from the device MAC or serial), to avoid name collisions and automatic renaming.
Additional information about the SSC Server may be provided with an DNS-SD TXT-record.
The following properties are currently defined for the TXT record:
• txtvers Version of the TXT record format. Currently "1".
• version SSC-Version provided by the SSC Server.
• http-uri If this SSC Server offers HTTP(S) transport, the base SSC request URI, including
TCP port number.
An SSC Server providing SSC-over-HTTP transport MUST only publish a DNS-SD record as a web
server "_http._tcp", if it provides a web app or configuration page of interest for the human user. The
URI published in the HTTP DNS-SD-TXT-record is expected to differ from that for SSC-over-HTTP.
6.6 IEEE 802.15.4 / ZigBee / DECT
One SSC Message per transport packet.
6.7 Low-bandwidth serial infrared link
Tbd. Framing defined separately.
6.8 Byte-stream connections (serial interface etc.)
SSC Messages are separated from the byte stream in the same way as used for TCP/IP connections.
Physical parameters of the serial link are out of the scope of this specification.
6.9 Unidirectional low-bandwidth monitoring
Tbd. Device has defined set of addresses which are permanently monitored.
6.10 Configuration files
Configuration files should be kept readable and editable for humans.
The following two-character sequences are recognised as a Message separator:
• ASCII carriage return (13) – newline (10)
• ASCII newline (10) – newline (10)