minor stuff

main
Tom Early 4 years ago
parent ff0de34fbb
commit c6ee412859

@ -107,7 +107,7 @@ bool CController::InitDevices()
// set each of the 3 vocoders to the current type // set each of the 3 vocoders to the current type
for (uint8_t channel=PKT_CHANNEL0; channel<=PKT_CHANNEL2; channel++) for (uint8_t channel=PKT_CHANNEL0; channel<=PKT_CHANNEL2; channel++)
{ {
if (a3003->ConfigureCodec(channel, type)) if (a3003->ConfigureVocoder(channel, type))
return true; return true;
} }

@ -234,19 +234,26 @@ bool CDV3003::InitDV3003()
return false; return false;
} }
bool CDV3003::ConfigureCodec(uint8_t pkt_ch, Encoding type) bool CDV3003::ConfigureVocoder(uint8_t pkt_ch, Encoding type)
{ {
SDV3003_Packet controlPacket, responsePacket; SDV3003_Packet controlPacket, responsePacket;
const uint8_t dstar[13] { PKT_RATEP, 0x01U, 0x30U, 0x07U, 0x63U, 0x40U, 0x00U, 0x00U, 0x00U, 0x00U, 0x00U, 0x00U, 0x48U }; const uint8_t dstar[] { PKT_RATEP, 0x01U, 0x30U, 0x07U, 0x63U, 0x40U, 0x00U, 0x00U, 0x00U, 0x00U, 0x00U, 0x00U, 0x48U };
const uint8_t dmr[13] { PKT_RATEP, 0x04U, 0x31U, 0x07U, 0x54U, 0x24U, 0x00U, 0x00U, 0x00U, 0x00U, 0x00U, 0x6FU, 0x48U }; const uint8_t dmr[] { PKT_RATEP, 0x04U, 0x31U, 0x07U, 0x54U, 0x24U, 0x00U, 0x00U, 0x00U, 0x00U, 0x00U, 0x6FU, 0x48U };
const uint8_t init[2] { PKT_INIT, 0x3U }; const uint8_t init[] { PKT_INIT, 0x3U };
controlPacket.start_byte = PKT_HEADER; controlPacket.start_byte = PKT_HEADER;
controlPacket.header.payload_length = htons(1 + sizeof(SDV3003_Packet::payload.codec)); controlPacket.header.payload_length = htons(1 + sizeof(SDV3003_Packet::payload.codec));
controlPacket.header.packet_type = PKT_CONTROL; controlPacket.header.packet_type = PKT_CONTROL;
controlPacket.field_id = pkt_ch; controlPacket.field_id = pkt_ch;
memcpy(controlPacket.payload.codec.ratep, (type == Encoding::dstar) ? dstar : dmr, 13); if (type == Encoding::dstar)
{
memcpy(controlPacket.payload.codec.ratep, dstar, 13);
}
else
{
memcpy(controlPacket.payload.codec.ratep, dmr, 13);
}
memcpy(controlPacket.payload.codec.init, init, 2); memcpy(controlPacket.payload.codec.init, init, 2);
// write packet // write packet

@ -98,7 +98,7 @@ public:
~CDV3003(); ~CDV3003();
bool OpenDevice(const std::string &device, int baudrate); bool OpenDevice(const std::string &device, int baudrate);
bool InitDV3003(); bool InitDV3003();
bool ConfigureCodec(uint8_t pkt_ch, Encoding type); bool ConfigureVocoder(uint8_t pkt_ch, Encoding type);
bool SendAudio(const uint8_t channel, const int16_t *audio) const; bool SendAudio(const uint8_t channel, const int16_t *audio) const;
bool SendData(const uint8_t channel, const uint8_t *data) const; bool SendData(const uint8_t channel, const uint8_t *data) const;
bool GetResponse(SDV3003_Packet &packet); bool GetResponse(SDV3003_Packet &packet);

Loading…
Cancel
Save

Powered by TurnKey Linux.