Skip to content

Commit 9803b1a

Browse files
committed
1 parent ff1ea0b commit 9803b1a

File tree

22 files changed

+52188
-51764
lines changed

22 files changed

+52188
-51764
lines changed

modular-psu-firmware.eez-project

Lines changed: 205 additions & 70 deletions
Large diffs are not rendered by default.

src/eez/action_impl.cpp

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1399,17 +1399,26 @@ void action_channel_toggle_ramp_state() {
13991399
}
14001400
}
14011401

1402-
bool isUsbModeDisabled(uint16_t value) {
1403-
return value == USB_MODE_MASS_STORAGE_CLIENT && dlog_record::isExecuting();
1404-
}
1405-
14061402
void onSetUsbMode(uint16_t value) {
14071403
popPage();
14081404
sendMessageToLowPriorityThread(THREAD_MESSAGE_SELECT_USB_MODE, value);
14091405
}
14101406

14111407
void action_select_usb_mode() {
1412-
pushSelectFromEnumPage(ENUM_DEFINITION_USB_MODE, g_usbMode, isUsbModeDisabled, onSetUsbMode);
1408+
pushSelectFromEnumPage(ENUM_DEFINITION_USB_MODE, psu::serial::g_usbMode, nullptr, onSetUsbMode);
1409+
}
1410+
1411+
bool isUsbDeviceClassDisabled(uint16_t value) {
1412+
return value == USB_DEVICE_CLASS_MASS_STORAGE_CLIENT && dlog_record::isExecuting();
1413+
}
1414+
1415+
void onSetUsbDeviceClass(uint16_t value) {
1416+
popPage();
1417+
sendMessageToLowPriorityThread(THREAD_MESSAGE_SELECT_USB_DEVICE_CLASS, value);
1418+
}
1419+
1420+
void action_select_usb_device_class() {
1421+
pushSelectFromEnumPage(ENUM_DEFINITION_USB_DEVICE_CLASS, g_usbDeviceClass, isUsbDeviceClassDisabled, onSetUsbDeviceClass);
14131422
}
14141423

14151424
} // namespace gui

src/eez/gui/document_simulator.cpp

Lines changed: 31803 additions & 31790 deletions
Large diffs are not rendered by default.

src/eez/gui/document_simulator.h

Lines changed: 69 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -412,23 +412,25 @@ enum DataEnum {
412412
DATA_ID_SLOT_TITLE_MICRO = 410,
413413
DATA_ID_SLOT_ERROR_MESSAGE = 411,
414414
DATA_ID_USB_MODE = 412,
415-
DATA_ID_IS_USB_HOST_HID = 413,
416-
DATA_ID_DIB_MIO168_INPUTS = 414,
417-
DATA_ID_DIB_MIO168_INPUT_NO = 415,
418-
DATA_ID_DIB_MIO168_INPUT_STATE = 416,
419-
DATA_ID_DIB_MIO168_OUTPUTS = 417,
420-
DATA_ID_DIB_MIO168_OUTPUT_NO = 418,
421-
DATA_ID_DIB_MIO168_OUTPUT_STATE = 419,
422-
DATA_ID_DIB_MIO168_ANALOG_INPUTS = 420,
423-
DATA_ID_DIB_MIO168_ANALOG_INPUT_VALUE = 421,
424-
DATA_ID_FRONT_PANEL_SLOT1_VIEW = 422,
425-
DATA_ID_SIMULATOR_LOAD_STATE = 423,
426-
DATA_ID_SIMULATOR_LOAD_STATE2 = 424,
427-
DATA_ID_SIMULATOR_LOAD = 425,
428-
DATA_ID_SIMULATOR_LOAD2 = 426,
429-
DATA_ID_MAIN_APP_VIEW = 427,
430-
DATA_ID_FRONT_PANEL_SLOT2_VIEW = 428,
431-
DATA_ID_FRONT_PANEL_SLOT3_VIEW = 429
415+
DATA_ID_USB_CURRENT_MODE = 413,
416+
DATA_ID_USB_DEVICE_CLASS = 414,
417+
DATA_ID_USB_KEYBOARD_STATE = 415,
418+
DATA_ID_DIB_MIO168_INPUTS = 416,
419+
DATA_ID_DIB_MIO168_INPUT_NO = 417,
420+
DATA_ID_DIB_MIO168_INPUT_STATE = 418,
421+
DATA_ID_DIB_MIO168_OUTPUTS = 419,
422+
DATA_ID_DIB_MIO168_OUTPUT_NO = 420,
423+
DATA_ID_DIB_MIO168_OUTPUT_STATE = 421,
424+
DATA_ID_DIB_MIO168_ANALOG_INPUTS = 422,
425+
DATA_ID_DIB_MIO168_ANALOG_INPUT_VALUE = 423,
426+
DATA_ID_FRONT_PANEL_SLOT1_VIEW = 424,
427+
DATA_ID_SIMULATOR_LOAD_STATE = 425,
428+
DATA_ID_SIMULATOR_LOAD_STATE2 = 426,
429+
DATA_ID_SIMULATOR_LOAD = 427,
430+
DATA_ID_SIMULATOR_LOAD2 = 428,
431+
DATA_ID_MAIN_APP_VIEW = 429,
432+
DATA_ID_FRONT_PANEL_SLOT2_VIEW = 430,
433+
DATA_ID_FRONT_PANEL_SLOT3_VIEW = 431
432434
};
433435

434436
void data_none(DataOperationEnum operation, Cursor cursor, Value &value);
@@ -844,7 +846,9 @@ void data_slot_title_min(DataOperationEnum operation, Cursor cursor, Value &valu
844846
void data_slot_title_micro(DataOperationEnum operation, Cursor cursor, Value &value);
845847
void data_slot_error_message(DataOperationEnum operation, Cursor cursor, Value &value);
846848
void data_usb_mode(DataOperationEnum operation, Cursor cursor, Value &value);
847-
void data_is_usb_host_hid(DataOperationEnum operation, Cursor cursor, Value &value);
849+
void data_usb_current_mode(DataOperationEnum operation, Cursor cursor, Value &value);
850+
void data_usb_device_class(DataOperationEnum operation, Cursor cursor, Value &value);
851+
void data_usb_keyboard_state(DataOperationEnum operation, Cursor cursor, Value &value);
848852
void data_dib_mio168_inputs(DataOperationEnum operation, Cursor cursor, Value &value);
849853
void data_dib_mio168_input_no(DataOperationEnum operation, Cursor cursor, Value &value);
850854
void data_dib_mio168_input_state(DataOperationEnum operation, Cursor cursor, Value &value);
@@ -1091,11 +1095,12 @@ enum ActionsEnum {
10911095
ACTION_ID_TOGGLE_SLOT_MAX_VIEW = 221,
10921096
ACTION_ID_SHOW_SLOT_SETTINGS = 222,
10931097
ACTION_ID_SELECT_USB_MODE = 223,
1094-
ACTION_ID_DIB_MIO168_TOGGLE_OUTPUT_STATE = 224,
1095-
ACTION_ID_FRONT_PANEL_SELECT_SLOT1 = 225,
1096-
ACTION_ID_FRONT_PANEL_SELECT_SLOT2 = 226,
1097-
ACTION_ID_FRONT_PANEL_SELECT_SLOT3 = 227,
1098-
ACTION_ID_SIMULATOR_LOAD = 228
1098+
ACTION_ID_SELECT_USB_DEVICE_CLASS = 224,
1099+
ACTION_ID_DIB_MIO168_TOGGLE_OUTPUT_STATE = 225,
1100+
ACTION_ID_FRONT_PANEL_SELECT_SLOT1 = 226,
1101+
ACTION_ID_FRONT_PANEL_SELECT_SLOT2 = 227,
1102+
ACTION_ID_FRONT_PANEL_SELECT_SLOT3 = 228,
1103+
ACTION_ID_SIMULATOR_LOAD = 229
10991104
};
11001105

11011106
void action_channel_toggle_output();
@@ -1321,6 +1326,7 @@ void action_show_touch_calibration_intro();
13211326
void action_toggle_slot_max_view();
13221327
void action_show_slot_settings();
13231328
void action_select_usb_mode();
1329+
void action_select_usb_device_class();
13241330
void action_dib_mio168_toggle_output_state();
13251331
void action_front_panel_select_slot1();
13261332
void action_front_panel_select_slot2();
@@ -1556,58 +1562,58 @@ enum StylesEnum {
15561562
STYLE_ID_INLINE184 = 184,
15571563
STYLE_ID_INLINE185 = 185,
15581564
STYLE_ID_INLINE186 = 186,
1559-
STYLE_ID_EVENT_WARNING = 187,
1560-
STYLE_ID_DISPLAY_OFF = 188,
1561-
STYLE_ID_DISPLAY_OFF_S = 189,
1562-
STYLE_ID_INLINE190 = 190,
1565+
STYLE_ID_INLINE187 = 187,
1566+
STYLE_ID_EVENT_WARNING = 188,
1567+
STYLE_ID_DISPLAY_OFF = 189,
1568+
STYLE_ID_DISPLAY_OFF_S = 190,
15631569
STYLE_ID_INLINE191 = 191,
1564-
STYLE_ID_MON_VALUE_48_RIGHT = 192,
1565-
STYLE_ID_INLINE193 = 193,
1566-
STYLE_ID_MON_VALUE_20_LEFT = 194,
1567-
STYLE_ID_BAR_GRAPH_U_DEFAULT = 195,
1568-
STYLE_ID_BAR_GRAPH_TEXT = 196,
1569-
STYLE_ID_BAR_GRAPH_SET_LINE = 197,
1570-
STYLE_ID_BAR_GRAPH_LIMIT_LINE = 198,
1571-
STYLE_ID_BAR_GRAPH_I_DEFAULT = 199,
1572-
STYLE_ID_INLINE200 = 200,
1570+
STYLE_ID_INLINE192 = 192,
1571+
STYLE_ID_MON_VALUE_48_RIGHT = 193,
1572+
STYLE_ID_INLINE194 = 194,
1573+
STYLE_ID_MON_VALUE_20_LEFT = 195,
1574+
STYLE_ID_BAR_GRAPH_U_DEFAULT = 196,
1575+
STYLE_ID_BAR_GRAPH_TEXT = 197,
1576+
STYLE_ID_BAR_GRAPH_SET_LINE = 198,
1577+
STYLE_ID_BAR_GRAPH_LIMIT_LINE = 199,
1578+
STYLE_ID_BAR_GRAPH_I_DEFAULT = 200,
15731579
STYLE_ID_INLINE201 = 201,
1574-
STYLE_ID_TRIGGER_BUTTON_24 = 202,
1575-
STYLE_ID_INLINE203 = 203,
1580+
STYLE_ID_INLINE202 = 202,
1581+
STYLE_ID_TRIGGER_BUTTON_24 = 203,
15761582
STYLE_ID_INLINE204 = 204,
1577-
STYLE_ID_MON_VALUE_14_RIGHT = 205,
1578-
STYLE_ID_ENCODER_CURSOR_14_RIGHT_ENABLED = 206,
1579-
STYLE_ID_CHANNEL_OFF_BUTTON_20 = 207,
1580-
STYLE_ID_TRIGGER_BUTTON_14 = 208,
1581-
STYLE_ID_INLINE209 = 209,
1583+
STYLE_ID_INLINE205 = 205,
1584+
STYLE_ID_MON_VALUE_14_RIGHT = 206,
1585+
STYLE_ID_ENCODER_CURSOR_14_RIGHT_ENABLED = 207,
1586+
STYLE_ID_CHANNEL_OFF_BUTTON_20 = 208,
1587+
STYLE_ID_TRIGGER_BUTTON_14 = 209,
15821588
STYLE_ID_INLINE210 = 210,
15831589
STYLE_ID_INLINE211 = 211,
15841590
STYLE_ID_INLINE212 = 212,
15851591
STYLE_ID_INLINE213 = 213,
1586-
STYLE_ID_CHANNEL_OFF_BUTTON_38 = 214,
1587-
STYLE_ID_INST_SELECTED = 215,
1588-
STYLE_ID_MON_VALUE_38_RIGHT = 216,
1589-
STYLE_ID_INLINE217 = 217,
1590-
STYLE_ID_CH_PROT_OFF = 218,
1591-
STYLE_ID_CH_PROT_ON = 219,
1592-
STYLE_ID_CH_PROT_TRIPPED = 220,
1593-
STYLE_ID_INLINE221 = 221,
1594-
STYLE_ID_MON_VALUE_24_RIGHT = 222,
1595-
STYLE_ID_MON_VALUE_14_CENTER = 223,
1596-
STYLE_ID_INLINE224 = 224,
1592+
STYLE_ID_INLINE214 = 214,
1593+
STYLE_ID_CHANNEL_OFF_BUTTON_38 = 215,
1594+
STYLE_ID_INST_SELECTED = 216,
1595+
STYLE_ID_MON_VALUE_38_RIGHT = 217,
1596+
STYLE_ID_INLINE218 = 218,
1597+
STYLE_ID_CH_PROT_OFF = 219,
1598+
STYLE_ID_CH_PROT_ON = 220,
1599+
STYLE_ID_CH_PROT_TRIPPED = 221,
1600+
STYLE_ID_INLINE222 = 222,
1601+
STYLE_ID_MON_VALUE_24_RIGHT = 223,
1602+
STYLE_ID_MON_VALUE_14_CENTER = 224,
15971603
STYLE_ID_INLINE225 = 225,
15981604
STYLE_ID_INLINE226 = 226,
15991605
STYLE_ID_INLINE227 = 227,
16001606
STYLE_ID_INLINE228 = 228,
1601-
STYLE_ID_MON_VALUE_20_RIGHT = 229,
1602-
STYLE_ID_MON_VALUE_14_LEFT = 230,
1603-
STYLE_ID_CHANNEL_OFF_BUTTON_14 = 231,
1604-
STYLE_ID_INLINE232 = 232,
1607+
STYLE_ID_INLINE229 = 229,
1608+
STYLE_ID_MON_VALUE_20_RIGHT = 230,
1609+
STYLE_ID_MON_VALUE_14_LEFT = 231,
1610+
STYLE_ID_CHANNEL_OFF_BUTTON_14 = 232,
16051611
STYLE_ID_INLINE233 = 233,
16061612
STYLE_ID_INLINE234 = 234,
1607-
STYLE_ID_STATUS_LINE_SMALL_TITLE = 235,
1608-
STYLE_ID_EDIT_VALUE_S_CENTERED_STATUS_LINE = 236,
1609-
STYLE_ID_SCROLLBAR_TRACK = 237,
1610-
STYLE_ID_INLINE238 = 238,
1613+
STYLE_ID_INLINE235 = 235,
1614+
STYLE_ID_STATUS_LINE_SMALL_TITLE = 236,
1615+
STYLE_ID_EDIT_VALUE_S_CENTERED_STATUS_LINE = 237,
1616+
STYLE_ID_SCROLLBAR_TRACK = 238,
16111617
STYLE_ID_INLINE239 = 239,
16121618
STYLE_ID_INLINE240 = 240,
16131619
STYLE_ID_INLINE241 = 241,
@@ -1927,4 +1933,4 @@ enum PagesEnum {
19271933
PAGE_ID_FRONT_PANEL_NUMERIC_KEYPAD = 182
19281934
};
19291935

1930-
extern const uint8_t assets[518066];
1936+
extern const uint8_t assets[518235];

0 commit comments

Comments
 (0)