Add some more USB controller features/fixes

merge-requests/16/head
Phil Taylor 2023-01-29 19:26:21 +00:00
rodzic 0e9a26dbc1
commit 9d711f3a17
4 zmienionych plików z 52 dodań i 28 usunięć

Wyświetl plik

@ -37,17 +37,15 @@ using namespace std;
#define HIDDATALENGTH 64
#define MAX_STR 255
enum commandType {normalCommand,bandswitch,modeswitch};
struct COMMAND {
COMMAND() {}
COMMAND(int index, QString text, int command, char suffix) :
index(index), text(text), command(command), suffix(suffix), type(normalCommand){}
index(index), text(text), command(command), suffix(suffix) {}
COMMAND(int index, QString text, int command, bandType band) :
index(index), text(text), command(command), band(band), type(bandswitch) {}
index(index), text(text), command(command), band(band) {}
COMMAND(int index, QString text, int command, mode_kind mode) :
index(index), text(text), command(command), mode(mode), type(modeswitch) {}
index(index), text(text), command(command), mode(mode) {}
int index;
QString text;
@ -55,7 +53,6 @@ struct COMMAND {
unsigned char suffix;
bandType band;
mode_kind mode;
commandType type;
};
struct BUTTON {

Wyświetl plik

@ -1686,20 +1686,46 @@ void wfmain::doShuttle(bool up, unsigned char level)
void wfmain::buttonControl(const COMMAND* cmd)
{
if (cmd->type==normalCommand) {
//qDebug() << "Other command";
issueCmdUniquePriority((cmds)cmd->command, cmd->suffix);
}
else if (cmd->type == bandswitch)
{
//qDebug() << "Bandswitch";
//issueCmd((cmds)cmd->command, cmd->band); // Needs fixing!
}
else if (cmd->type == modeswitch)
{
//qDebug() << "Bandswitch";
switch (cmd->command) {
case cmdGetBandStackReg:
issueCmd((cmds)cmd->command, cmd->band.band);
break;
case cmdSetBandUp:
break;
case cmdSetBandDown:
break;
case cmdSetMode:
changeMode(cmd->mode);
break;
case cmdSetModeUp:
for (int i = 0; i < rigCaps.modes.size(); i++) {
if (rigCaps.modes[i].mk == currentModeInfo.mk)
{
if (i + 1 < rigCaps.modes.size()) {
changeMode(rigCaps.modes[i + 1].mk);
}
else {
changeMode(rigCaps.modes[0].mk);
}
}
}
break;
case cmdSetModeDown:
for (int i = 0; i < rigCaps.modes.size(); i++) {
if (rigCaps.modes[i].mk == currentModeInfo.mk)
{
if (i>0) {
changeMode(rigCaps.modes[i - 1].mk);
}
else {
changeMode(rigCaps.modes[rigCaps.modes.size()-1].mk);
}
}
}
break;
default:
issueCmdUniquePriority((cmds)cmd->command, cmd->suffix);
break;
}
}
@ -2314,10 +2340,10 @@ void wfmain::loadSettings()
usbCommands.append(COMMAND(4, "Tune", cmdNone, 0x0));
usbCommands.append(COMMAND(5, "Step+", cmdNone, 0x0));
usbCommands.append(COMMAND(6, "Step-", cmdNone, 0x0));
usbCommands.append(COMMAND(7, "Mode+", cmdNone, 0x0));
usbCommands.append(COMMAND(8, "Mode-", cmdNone, 0x0));
usbCommands.append(COMMAND(9, "Band+", cmdNone, 0x0));
usbCommands.append(COMMAND(10, "Band-", cmdNone, 0x0));
usbCommands.append(COMMAND(7, "Mode+", cmdSetModeUp, 0x0));
usbCommands.append(COMMAND(8, "Mode-", cmdSetModeDown, 0x0));
usbCommands.append(COMMAND(9, "Band+", cmdSetBandUp, 0x0));
usbCommands.append(COMMAND(10, "Band-", cmdSetBandDown, 0x0));
usbCommands.append(COMMAND(11, "NR", cmdNone, 0x0));
usbCommands.append(COMMAND(12, "NB", cmdNone, 0x0));
usbCommands.append(COMMAND(13, "AGC", cmdNone, 0x0));

Wyświetl plik

@ -45,10 +45,10 @@
<QtLastBackgroundBuild>2022-08-21T18:58:23.4329764Z</QtLastBackgroundBuild>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="QtSettings">
<QtLastBackgroundBuild>2023-01-12T19:02:11.7122024Z</QtLastBackgroundBuild>
<QtLastBackgroundBuild>2023-01-29T11:49:00.1257696Z</QtLastBackgroundBuild>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="QtSettings">
<QtLastBackgroundBuild>2023-01-12T19:02:11.0783744Z</QtLastBackgroundBuild>
<QtLastBackgroundBuild>2023-01-29T11:48:59.4191765Z</QtLastBackgroundBuild>
</PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<QtLastBackgroundBuild>2022-08-22T10:47:49.1255783Z</QtLastBackgroundBuild>
@ -60,9 +60,9 @@
<QtLastBackgroundBuild>2022-08-20T19:06:43.4553894Z</QtLastBackgroundBuild>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="QtSettings">
<QtLastBackgroundBuild>2023-01-12T19:02:13.6556090Z</QtLastBackgroundBuild>
<QtLastBackgroundBuild>2023-01-29T11:49:01.5629425Z</QtLastBackgroundBuild>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="QtSettings">
<QtLastBackgroundBuild>2023-01-12T19:02:12.4064183Z</QtLastBackgroundBuild>
<QtLastBackgroundBuild>2023-01-29T11:49:00.7644018Z</QtLastBackgroundBuild>
</PropertyGroup>
</Project>

Wyświetl plik

@ -157,7 +157,8 @@ enum cmds {
cmdSelVFO, cmdVFOSwap, cmdVFOEqualAB, cmdVFOEqualMS,
cmdGetPreamp, cmdGetAttenuator, cmdGetAntenna,
cmdGetBandStackReg, cmdGetKeySpeed, cmdSetKeySpeed, cmdGetBreakMode, cmdSetBreakMode, cmdSendCW, cmdStopCW,
cmdSetTime, cmdSetDate, cmdSetUTCOffset
cmdSetTime, cmdSetDate, cmdSetUTCOffset,
cmdSetBandUp, cmdSetBandDown, cmdSetModeUp, cmdSetModeDown // Only used for USB Controller at the moment.
};
struct commandtype {