@springfield/radio-module-baofeng
Version:
Radio module for Baofeng UV-5R series ham radios
29 lines (28 loc) • 1.02 kB
TypeScript
import type { RadioCodec, RadioMemory, RadioModelId, RadioProgram } from '@springfield/ham-radio-api';
import type { ILogLayer } from 'loglayer';
export interface BaofengMemorySegmentConfig {
startAddress: number;
endAddress: number;
}
export interface BaofengConfig {
channelMemorySegment: BaofengMemorySegmentConfig;
settingsMemorySegment: BaofengMemorySegmentConfig;
memorySegmentSize: number;
magicNumber: number[];
receiveFrequencyOffset: number;
transmitFrequencyOffset: number;
receiveToneOffset: number;
transmitToneOffset: number;
powerOffset: number;
channelSize: number;
numberChannels: number;
radioSettingsSchemaPath: string;
channelSettingsSchemaPath: string;
}
export declare class BaofengCodec implements RadioCodec {
private decoder;
private encoder;
constructor(radioModel: RadioModelId, config: BaofengConfig, logger: ILogLayer);
decode(memory: RadioMemory): RadioProgram;
encode(program: RadioProgram): RadioMemory;
}