def arduino_settings_args(user_io, args, settings):
    ''' Method to select (without any wizard) from command line your SDK,
        port, board and automatic reset.
        Port and SDK arguments support "default" option to make automatically
        the setting selection
    '''
    if settings.arduino is None:
        settings.arduino = ArduinoSettings()
    if not args.sdk and not settings.arduino.sdk:
        _, default_sdk = get_valid_sdks(user_io, settings.arduino)
        user_io.out.success("Your default SDK is: %s" % default_sdk)
        settings.arduino.sdk = default_sdk
    else:
        settings.arduino.sdk = args.sdk or settings.arduino.sdk
    try:
        valid_version = valid_arduino_sdk_version(settings.arduino.sdk)
    except:
        valid_version = None
    if not valid_version:
        raise BiiException("No valid Arduino SDK version could be found."
                           " Check if /your_SDK_path/lib/version.txt file exists")
    settings.arduino.version = valid_version
    if args.need_reset:
        settings.arduino.automatic_reset = True if args.need_reset == 'true' else None
    if (not args.port and not settings.arduino.port) or args.port == 'auto':
        settings.arduino.port = refresh_port(user_io,
                                             settings.arduino.port,
                                             reset=settings.arduino.automatic_reset,
                                             wizard=False)
    else:
        settings.arduino.port = args.port or settings.arduino.port
    settings.arduino.board = args.board or settings.arduino.board
Esempio n. 2
0
def arduino_settings_args(user_io, args, settings):
    ''' Method to select (without any wizard) from command line your SDK,
        port, board and automatic reset.
        Port and SDK arguments support "default" option to make automatically
        the setting selection
    '''
    if settings.arduino is None:
        settings.arduino = ArduinoSettings()
    if not args.sdk and not settings.arduino.sdk:
        _, default_sdk = get_valid_sdks(user_io, settings.arduino)
        user_io.out.success("Your default SDK is: %s" % default_sdk)
        settings.arduino.sdk = default_sdk
    else:
        settings.arduino.sdk = args.sdk or settings.arduino.sdk
    try:
        valid_version = valid_arduino_sdk_version(settings.arduino.sdk)
    except:
        valid_version = None
    if not valid_version:
        raise BiiException(
            "No valid Arduino SDK version could be found."
            " Check if /your_SDK_path/lib/version.txt file exists")
    settings.arduino.version = valid_version
    if args.need_reset:
        settings.arduino.automatic_reset = True if args.need_reset == 'true' else None
    if (not args.port and not settings.arduino.port) or args.port == 'auto':
        settings.arduino.port = refresh_port(
            user_io,
            settings.arduino.port,
            reset=settings.arduino.automatic_reset,
            wizard=False)
    else:
        settings.arduino.port = args.port or settings.arduino.port
    settings.arduino.board = args.board or settings.arduino.board
Esempio n. 3
0
 def refresh_port(self):
     ''' Refresh port to check a new connection o reset it
         in case of leonardo board
     '''
     from biicode.client.dev.hardware.arduino.arduino_port_utils import refresh_port
     settings = self.hive_disk_image.settings
     arduino_settings = settings.arduino
     if not arduino_settings:
         raise BiiException('No arduino settings, please execute '
                            '"bii arduino:settings" first')
     port = refresh_port(self.bii.user_io,
                         arduino_settings.port,
                         reset=arduino_settings.automatic_reset)
     arduino_settings.port = port
     self.hive_disk_image.settings = settings
     return port
Esempio n. 4
0
 def refresh_port(self):
     ''' Refresh port to check a new connection o reset it
         in case of leonardo board
     '''
     from biicode.client.dev.hardware.arduino.arduino_port_utils import refresh_port
     settings = self.hive_disk_image.settings
     arduino_settings = settings.arduino
     if not arduino_settings:
         raise BiiException('No arduino settings, please execute '
                            '"bii arduino:settings" first')
     port = refresh_port(self.bii.user_io,
                         arduino_settings.port,
                         reset=arduino_settings.automatic_reset)
     arduino_settings.port = port
     self.hive_disk_image.settings = settings
     return port
def arduino_settings_wizard(user_io, settings):
    '''gets arduino settings from user. The port will always be scanned
       param user_io: UserIO object
       param settings: existing hive Settings
    '''

    if settings.arduino is None:
        settings.arduino = ArduinoSettings()

    _arduino_sdk_wizard(user_io, settings.arduino)
    _get_board(user_io, settings.arduino)
    ports_need_reset = get_boards_need_reset(settings.arduino.sdk, settings.arduino.version)
    settings.arduino.automatic_reset = True if settings.arduino.board in ports_need_reset \
                                            else None
    settings.arduino.port = refresh_port(user_io,
                                         settings.arduino.port,
                                         reset=settings.arduino.automatic_reset,
                                         wizard=True)
Esempio n. 6
0
def arduino_settings_wizard(user_io, settings):
    '''gets arduino settings from user. The port will always be scanned
       param user_io: UserIO object
       param settings: existing hive Settings
    '''

    if settings.arduino is None:
        settings.arduino = ArduinoSettings()

    _arduino_sdk_wizard(user_io, settings.arduino)
    _get_board(user_io, settings.arduino)
    ports_need_reset = get_boards_need_reset(settings.arduino.sdk,
                                             settings.arduino.version)
    settings.arduino.automatic_reset = True if settings.arduino.board in ports_need_reset \
                                            else None
    settings.arduino.port = refresh_port(
        user_io,
        settings.arduino.port,
        reset=settings.arduino.automatic_reset,
        wizard=True)