def make_ble_command(module, cmd, argv):
    """ Create a command understandable by ble-cliapp.
      * module: The name of the module containing the command to invoke.
      * cmd: The name of the command to invoke.
      * argv: Arguments to pass to the command. Every argument is converted
      to its string representation during the construction of the command
      except for Bool value which are converted to true or false (lowercase).
    """

    def serialize_value(value):
        """serializer for values in argv"""
        if isinstance(value, bool):
            return "true" if value is True else "false"
        else:
            return str(value)

    argv = map(serialize_value, argv)
    cmd_args = [] if argv is None else " ".join(argv)
    return "{0} {1} {2}".format(module, cmd, cmd_args)