[{"id":2,"date_created":"2026-08-29T04:59:09.226910Z","schema":{"$schema":"http://json-schema.org/draft-04/schema","description":"Permissive schema: accepts any JSON value."}},{"id":1,"date_created":"2026-08-27T12:25:12.188713Z","schema":{"$schema":"http://json-schema.org/draft-04/schema#","id":"https://example.org/schemas/transmitter.v2.json","title":"Transmitter","type":"object","additionalProperties":false,"required":["name","uuid","center_freq","occupied_bandwidth","drift","clock_drift","transmission_mode","audible"],"properties":{"name":{"type":"string","title":"Transmitter Name"},"uuid":{"type":"string","title":"UUID"},"center_freq":{"type":"number","minimum":0,"exclusiveMinimum":true,"title":"Center Frequency (Hz)"},"occupied_bandwidth":{"type":"number","minimum":0,"exclusiveMinimum":true,"title":"Occupied Bandwidth (Hz)"},"drift":{"type":"number","title":"Frequency Drift (Hz)"},"clock_drift":{"type":"integer","title":"Clock Drift (ppm)"},"audible":{"type":"boolean","title":"Audible"},"transmission_mode":{"type":"array","minItems":1,"title":"Transmission Modes","items":{"$ref":"#/definitions/TransmissionMode"}}},"definitions":{"TransmissionMode":{"type":"object","additionalProperties":false,"required":["name","modulation","framing"],"properties":{"name":{"type":"string","title":"Mode Name"},"modulation":{"$ref":"#/definitions/ModulationWrapper"},"framing":{"$ref":"#/definitions/FramingWrapper"}}},"ModulationWrapper":{"title":"Modulation","type":"object","oneOf":[{"title":"AFSK","required":["afsk"],"additionalProperties":false,"properties":{"afsk":{"$ref":"#/definitions/AFSK"}}},{"title":"FSK","required":["fsk"],"additionalProperties":false,"properties":{"fsk":{"$ref":"#/definitions/FSK"}}},{"title":"CW","required":["cw"],"additionalProperties":false,"properties":{"cw":{"$ref":"#/definitions/CW"}}},{"title":"FM","required":["fm"],"additionalProperties":false,"properties":{"fm":{"$ref":"#/definitions/FM"}}}]},"AFSK":{"type":"object","title":"AFSK","additionalProperties":false,"required":["baudrate","modulation_index","mark_tone","space_tone"],"properties":{"baudrate":{"type":"number","title":"Baudrate (sym/s)"},"modulation_index":{"type":"integer","title":"Modulation Index"},"mark_tone":{"type":"number","title":"Mark Tone (Hz)"},"space_tone":{"type":"number","title":"Space Tone (Hz)"}}},"FSK":{"type":"object","title":"FSK","additionalProperties":false,"required":["baudrate","modulation_index"],"properties":{"baudrate":{"type":"number","title":"Baudrate (sym/s)"},"modulation_index":{"type":"number","title":"Modulation Index"},"filter":{"$ref":"#/definitions/Filter"}}},"CW":{"type":"object","title":"CW","additionalProperties":false,"required":["wpm"],"properties":{"wpm":{"type":"number","title":"WPM (PARIS)"},"wpm_deviation":{"type":"number","title":"WPM Deviation"},"header":{"type":"string","title":"Message Header"},"tone_freq":{"type":"number","title":"Tone Frequency (Hz)"}}},"FM":{"type":"object","title":"FM","additionalProperties":false,"properties":{"audio_bandwidth":{"type":"number","title":"Audio Bandwidth (Hz)"},"deemphasis":{"type":"number","title":"De-emphasis"}}},"Filter":{"type":"object","title":"Filter","additionalProperties":false},"FramingWrapper":{"title":"Framing","type":"object","oneOf":[{"title":"AX.25","required":["ax25"],"additionalProperties":false,"properties":{"ax25":{"$ref":"#/definitions/AX25"}}},{"title":"AX100 Mode 5","required":["ax100_mode5"],"additionalProperties":false,"properties":{"ax100_mode5":{"$ref":"#/definitions/AX100Mode5"}}},{"title":"AX100 Mode 6","required":["ax100_mode6"],"additionalProperties":false,"properties":{"ax100_mode6":{"$ref":"#/definitions/AX100Mode6"}}},{"title":"IEEE 802.15.4","required":["ieee802_15_4"],"additionalProperties":false,"properties":{"ieee802_15_4":{"$ref":"#/definitions/IEEE802_15_4"}}}]},"GenericFraming":{"type":"object","title":"Generic Framing Options","additionalProperties":false,"properties":{"coding":{"$ref":"#/definitions/CodingWrapper"},"whitening_polynomial":{"type":"string","title":"Whitening Polynomial"},"checksum_polynomial":{"type":"string","title":"Checksum Polynomial"}}},"AX25":{"type":"object","title":"AX.25","additionalProperties":false,"properties":{"diff_encoding":{"type":"boolean","title":"Differential Encoding"},"invert":{"type":"boolean","title":"Invert Bits"},"whitening_polynomial":{"type":"string","title":"Whitening Polynomial"}}},"AX100Mode5":{"type":"object","title":"AX100 Mode 5","additionalProperties":false,"properties":{"preamble":{"type":"string","title":"Preamble (bytes)"},"sync_word":{"type":"string","title":"Sync Word (bytes)"},"framing_options":{"$ref":"#/definitions/GenericFraming"}}},"AX100Mode6":{"type":"object","title":"AX100 Mode 6","additionalProperties":false,"properties":{"ax25_scrambling":{"type":"boolean","title":"AX.25 Scrambling"},"framing_options":{"$ref":"#/definitions/GenericFraming"}}},"IEEE802_15_4":{"type":"object","title":"IEEE 802.15.4","additionalProperties":false,"properties":{"framing_options":{"$ref":"#/definitions/GenericFraming"}}},"CodingWrapper":{"title":"Coding","type":"object","oneOf":[{"title":"Reed-Solomon","required":["rs"],"additionalProperties":false,"properties":{"rs":{"$ref":"#/definitions/ReedSolomon"}}},{"title":"Golay","required":["golay"],"additionalProperties":false,"properties":{"golay":{"$ref":"#/definitions/GolayCode"}}},{"title":"Turbo","required":["turbo"],"additionalProperties":false,"properties":{"turbo":{"$ref":"#/definitions/TurboCode"}}},{"title":"LDPC","required":["ldpc"],"additionalProperties":false,"properties":{"ldpc":{"$ref":"#/definitions/LDPCCode"}}}]},"ReedSolomon":{"type":"object","title":"Reed-Solomon","additionalProperties":false,"required":["block_len","message_len"],"properties":{"block_len":{"type":"integer","title":"Block Length (n)"},"message_len":{"type":"integer","title":"Message Length (k)"}}},"GolayCode":{"type":"object","title":"Golay","additionalProperties":false,"required":["block_len","message_len","distance"],"properties":{"block_len":{"type":"integer","title":"Block Length (n)"},"message_len":{"type":"integer","title":"Message Length (k)"},"distance":{"type":"integer","title":"Minimum Distance"}}},"TurboCode":{"type":"object","title":"Turbo Code","additionalProperties":false},"LDPCCode":{"type":"object","title":"LDPC Code","additionalProperties":false}}}}]