@lzcontest/radio
v0.1.1
Published
Transport-neutral amateur-radio CAT codecs, sessions, capabilities, and verified model profiles.
Downloads
247
Maintainers
Readme
@lzcontest/radio
Typed CAT protocols, radio profiles, connection settings, and deterministic sessions.
Install
npm install @lzcontest/radioSelect a radio profile
import {
defaultRadioConnectionSettings,
resolveRadioProfile,
validateRadioConnectionSettings,
} from '@lzcontest/radio';
const profile = resolveRadioProfile('icom-ic7300');
if (profile !== null) {
const settings = defaultRadioConnectionSettings(profile);
const issues = validateRadioConnectionSettings(profile, settings);
console.log(profile.manufacturer, profile.model);
console.log(issues); // []
}Core API
| Export | Purpose |
| --- | --- |
| supportedRadioProfiles | Built-in model profile catalog |
| resolveRadioProfile | Resolve a model profile by ID |
| defaultRadioConnectionSettings | Build documented defaults for a model |
| validateRadioConnectionSettings | Validate serial, protocol, address, and polling settings |
| createRadioProtocolCodec | Create the codec for a protocol family |
| createRadioSession | Bind a model profile to an injected byte session |
| RadioCommand | Typed frequency, mode, VFO, split, and PTT commands |
| RadioObservedState | Timestamped state reported by a radio |
