radio_tool 0.2.1
Loading...
Searching...
No Matches
ailunce_radio.hpp
1
19#pragma once
20
21#include <radio_tool/radio/radio.hpp>
22#include <radio_tool/device/ymodem_device.hpp>
23
24#include <libusb-1.0/libusb.h>
25
27{
29 {
30 public:
31 // Prolific Technology, Inc. - USB-Serial Controller
32 static const auto VID = 0x067b;
33 static const auto PID = 0x2303;
34
35 AilunceRadio(const std::string &prt, const std::string &fname)
36 : device(prt, fname) {}
37
38 auto WriteFirmware(const std::string &file) -> void override;
39 auto ToString() const -> const std::string override;
40
41 static auto SupportsDevice(const std::string &) -> bool;
42
43 static auto Create(const std::string &port) -> AilunceRadio*
44 {
45 return new AilunceRadio(port, "firmware.bin");
46 }
47
48 private:
50 static auto GetComPortUSBIds(const std::string& port) -> std::pair<uint16_t, uint16_t>;
51 };
52} // namespace radio_tool::radio
auto ToString() const -> const std::string override
auto WriteFirmware(const std::string &file) -> void override