6969/// \function bootloader()
7070/// Activate the bootloader without BOOT* pins.
7171STATIC NORETURN mp_obj_t pyb_bootloader (void ) {
72- pyb_usb_dev_stop ();
72+ pyb_usb_dev_deinit ();
7373 storage_flush ();
7474
7575 HAL_RCC_DeInit ();
@@ -465,13 +465,6 @@ STATIC mp_obj_t pyb_standby(void) {
465465}
466466MP_DEFINE_CONST_FUN_OBJ_0 (pyb_standby_obj , pyb_standby );
467467
468- /// \function have_cdc()
469- /// Return True if USB is connected as a serial device, False otherwise.
470- STATIC mp_obj_t pyb_have_cdc (void ) {
471- return MP_BOOL (usb_vcp_is_connected ());
472- }
473- STATIC MP_DEFINE_CONST_FUN_OBJ_0 (pyb_have_cdc_obj , pyb_have_cdc );
474-
475468/// \function repl_uart(uart)
476469/// Get or set the UART object that the REPL is repeated on.
477470STATIC mp_obj_t pyb_repl_uart (mp_uint_t n_args , const mp_obj_t * args ) {
@@ -494,24 +487,7 @@ STATIC mp_obj_t pyb_repl_uart(mp_uint_t n_args, const mp_obj_t *args) {
494487}
495488STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN (pyb_repl_uart_obj , 0 , 1 , pyb_repl_uart );
496489
497- /// \function hid((buttons, x, y, z))
498- /// Takes a 4-tuple (or list) and sends it to the USB host (the PC) to
499- /// signal a HID mouse-motion event.
500- STATIC mp_obj_t pyb_hid_send_report (mp_obj_t arg ) {
501- mp_obj_t * items ;
502- mp_obj_get_array_fixed_n (arg , 4 , & items );
503- uint8_t data [4 ];
504- data [0 ] = mp_obj_get_int (items [0 ]);
505- data [1 ] = mp_obj_get_int (items [1 ]);
506- data [2 ] = mp_obj_get_int (items [2 ]);
507- data [3 ] = mp_obj_get_int (items [3 ]);
508- usb_hid_send_report (data );
509- return mp_const_none ;
510- }
511- STATIC MP_DEFINE_CONST_FUN_OBJ_1 (pyb_hid_send_report_obj , pyb_hid_send_report );
512-
513490MP_DECLARE_CONST_FUN_OBJ (pyb_main_obj ); // defined in main.c
514- MP_DECLARE_CONST_FUN_OBJ (pyb_usb_mode_obj ); // defined in main.c
515491
516492STATIC const mp_map_elem_t pyb_module_globals_table [] = {
517493 { MP_OBJ_NEW_QSTR (MP_QSTR___name__ ), MP_OBJ_NEW_QSTR (MP_QSTR_pyb ) },
@@ -530,12 +506,16 @@ STATIC const mp_map_elem_t pyb_module_globals_table[] = {
530506 { MP_OBJ_NEW_QSTR (MP_QSTR_stop ), (mp_obj_t )& pyb_stop_obj },
531507 { MP_OBJ_NEW_QSTR (MP_QSTR_standby ), (mp_obj_t )& pyb_standby_obj },
532508 { MP_OBJ_NEW_QSTR (MP_QSTR_main ), (mp_obj_t )& pyb_main_obj },
533- { MP_OBJ_NEW_QSTR (MP_QSTR_usb_mode ), (mp_obj_t )& pyb_usb_mode_obj },
509+ { MP_OBJ_NEW_QSTR (MP_QSTR_repl_uart ), (mp_obj_t )& pyb_repl_uart_obj },
534510
511+ { MP_OBJ_NEW_QSTR (MP_QSTR_usb_mode ), (mp_obj_t )& pyb_usb_mode_obj },
512+ { MP_OBJ_NEW_QSTR (MP_QSTR_hid_mouse ), (mp_obj_t )& pyb_usb_hid_mouse_obj },
513+ { MP_OBJ_NEW_QSTR (MP_QSTR_hid_keyboard ), (mp_obj_t )& pyb_usb_hid_keyboard_obj },
514+ { MP_OBJ_NEW_QSTR (MP_QSTR_USB_VCP ), (mp_obj_t )& pyb_usb_vcp_type },
515+ { MP_OBJ_NEW_QSTR (MP_QSTR_USB_HID ), (mp_obj_t )& pyb_usb_hid_type },
516+ // these 2 are deprecated; use USB_VCP.isconnected and USB_HID.send instead
535517 { MP_OBJ_NEW_QSTR (MP_QSTR_have_cdc ), (mp_obj_t )& pyb_have_cdc_obj },
536- { MP_OBJ_NEW_QSTR (MP_QSTR_repl_uart ), (mp_obj_t )& pyb_repl_uart_obj },
537518 { MP_OBJ_NEW_QSTR (MP_QSTR_hid ), (mp_obj_t )& pyb_hid_send_report_obj },
538- { MP_OBJ_NEW_QSTR (MP_QSTR_USB_VCP ), (mp_obj_t )& pyb_usb_vcp_type },
539519
540520 { MP_OBJ_NEW_QSTR (MP_QSTR_millis ), (mp_obj_t )& pyb_millis_obj },
541521 { MP_OBJ_NEW_QSTR (MP_QSTR_elapsed_millis ), (mp_obj_t )& pyb_elapsed_millis_obj },
0 commit comments