eric6.MicroPython.MicroPythonCommandsInterface
Module implementing some file system commands for MicroPython.
Global Attributes
Classes
Functions
MicroPythonCommandsInterface
Class implementing some file system commands for MicroPython.
Commands are provided to perform operations on the file system of a
connected MicroPython device. Supported commands are:
- ls: directory listing
- lls: directory listing with meta data
- cd: change directory
- pwd: get the current directory
- put: copy a file to the connected device
- get: get a file from the connected device
- rm: remove a file from the connected device
- rmrf: remove a file/directory recursively (like 'rm -rf' in bash)
- mkdir: create a new directory
- rmdir: remove an empty directory
There are additional commands related to time and version.
- version: get version info about MicroPython
- getImplementation: get some implementation information
- syncTime: synchronize the time of the connected device
- showTime: show the current time of the connected device
Signals
- dataReceived(data)
-
emitted to send data received via the serial
connection for further processing
- executeAsyncFinished()
-
emitted to indicate the end of an
asynchronously executed list of commands (e.g. a script)
Derived from
QObject
Class Attributes
Class Methods
Methods
MicroPythonCommandsInterface |
Constructor |
__rawOff |
Private method to switch 'raw' mode off. |
__rawOn |
Private method to switch the connected device to 'raw' mode. |
__readSerial |
Private slot to read all available serial data and emit it with the "dataReceived" signal for further processing. |
__shortError |
Private method to create a shortened error message. |
cd |
Public method to change the current directory on the connected device. |
connectToDevice |
Public slot to start the manager. |
disconnectFromDevice |
Public slot to stop the thread. |
execute |
Public method to send commands to the connected device and return the result. |
executeAsync |
Public method to execute a series of commands over a period of time without returning any result (asynchronous execution). |
fileSystemInfo |
Public method to obtain information about the currently mounted file systems. |
get |
Public method to copy a file from the connected device. |
getImplementation |
Public method to get some implementation information of the connected device. |
getTime |
Public method to get the current time of the device. |
handlePreferencesChanged |
Public slot to handle a change of the preferences. |
isConnected |
Public method to get the connection status. |
lls |
Public method to get a long directory listing of the connected device including meta data. |
ls |
Public method to get a directory listing of the connected device. |
mkdir |
Public method to create a new directory. |
put |
Public method to copy a local file to the connected device. |
pwd |
Public method to get the current directory of the connected device. |
remainingTask |
|
rm |
Public method to remove a file from the connected device. |
rmdir |
Public method to remove a directory. |
rmrf |
Public method to remove a file or directory recursively. |
syncTime |
Public method to set the time of the connected device to the local computer's time. |
version |
Public method to get the MicroPython version information of the connected device. |
write |
Public method to write data to the connected device. |
Static Methods
MicroPythonCommandsInterface (Constructor)
MicroPythonCommandsInterface(parent=None)
Constructor
- parent (QObject)
-
reference to the parent object
MicroPythonCommandsInterface.__rawOff
__rawOff()
Private method to switch 'raw' mode off.
MicroPythonCommandsInterface.__rawOn
__rawOn()
Private method to switch the connected device to 'raw' mode.
Note: switching to raw mode is done with synchronous writes.
- Returns:
-
flag indicating success
@rtype bool
MicroPythonCommandsInterface.__readSerial
__readSerial()
Private slot to read all available serial data and emit it with the
"dataReceived" signal for further processing.
MicroPythonCommandsInterface.__shortError
__shortError(error)
Private method to create a shortened error message.
- error (bytes)
-
verbose error message
- Returns:
-
shortened error message
- Return Type:
-
str
MicroPythonCommandsInterface.cd
cd(dirname)
Public method to change the current directory on the connected device.
- dirname (str)
-
directory to change to
- Raises IOError:
-
raised to indicate an issue with the device
MicroPythonCommandsInterface.connectToDevice
connectToDevice(port)
Public slot to start the manager.
- port (str)
-
name of the port to be used
- Returns:
-
flag indicating success
- Return Type:
-
bool
MicroPythonCommandsInterface.disconnectFromDevice
disconnectFromDevice()
Public slot to stop the thread.
MicroPythonCommandsInterface.execute
execute(commands)
Public method to send commands to the connected device and return the
result.
If no serial connection is available, empty results will be returned.
- commands (str)
-
list of commands to be executed
- Returns:
-
tuple containing stdout and stderr output of the device
- Return Type:
-
tuple of (bytes, bytes)
MicroPythonCommandsInterface.executeAsync
executeAsync(commandsList)
Public method to execute a series of commands over a period of time
without returning any result (asynchronous execution).
- commandsList (list of bytes)
-
list of commands to be execute on the device
MicroPythonCommandsInterface.fileSystemInfo
fileSystemInfo()
Public method to obtain information about the currently mounted file
systems.
- Returns:
-
tuple of tuples containing the file system name, the total
size, the used size and the free size
- Return Type:
-
tuple of tuples of (str, int, int, int)
- Raises IOError:
-
raised to indicate an issue with the device
MicroPythonCommandsInterface.get
get(deviceFileName, hostFileName=None)
Public method to copy a file from the connected device.
- deviceFileName (str)
-
name of the file to copy
- hostFileName (str)
-
name of the file to copy to
- Returns:
-
flag indicating success
- Return Type:
-
bool
- Raises IOError:
-
raised to indicate an issue with the device
MicroPythonCommandsInterface.getImplementation
getImplementation()
Public method to get some implementation information of the connected
device.
- Returns:
-
dictionary containing the implementation information
- Return Type:
-
dict
- Raises IOError:
-
raised to indicate an issue with the device
MicroPythonCommandsInterface.getTime
getTime()
Public method to get the current time of the device.
- Returns:
-
time of the device
- Return Type:
-
str
- Raises IOError:
-
raised to indicate an issue with the device
MicroPythonCommandsInterface.handlePreferencesChanged
handlePreferencesChanged()
Public slot to handle a change of the preferences.
MicroPythonCommandsInterface.isConnected
isConnected()
Public method to get the connection status.
- Returns:
-
flag indicating the connection status
- Return Type:
-
bool
MicroPythonCommandsInterface.lls
lls(dirname="", fullstat=False, showHidden=False)
Public method to get a long directory listing of the connected device
including meta data.
- dirname (str)
-
name of the directory to be listed
- fullstat (bool)
-
flag indicating to return the full stat() tuple
- showHidden (bool)
-
flag indicating to show hidden files as well
- Returns:
-
list containing the directory listing with tuple entries of
the name and and a tuple of mode, size and time (if fullstat is
false) or the complete stat() tuple. 'None' is returned in case the
directory doesn't exist.
- Return Type:
-
tuple of (str, tuple)
- Raises IOError:
-
raised to indicate an issue with the device
MicroPythonCommandsInterface.ls
ls(dirname="")
Public method to get a directory listing of the connected device.
- dirname (str)
-
name of the directory to be listed
- Returns:
-
tuple containg the directory listing
- Return Type:
-
tuple of str
- Raises IOError:
-
raised to indicate an issue with the device
MicroPythonCommandsInterface.mkdir
mkdir(dirname)
Public method to create a new directory.
- dirname (str)
-
name of the directory to create
- Raises IOError:
-
raised to indicate an issue with the device
MicroPythonCommandsInterface.put
put(hostFileName, deviceFileName=None)
Public method to copy a local file to the connected device.
- hostFileName (str)
-
name of the file to be copied
- deviceFileName (str)
-
name of the file to copy to
- Returns:
-
flag indicating success
- Return Type:
-
bool
- Raises IOError:
-
raised to indicate an issue with the device
MicroPythonCommandsInterface.pwd
pwd()
Public method to get the current directory of the connected device.
- Returns:
-
current directory
- Return Type:
-
str
- Raises IOError:
-
raised to indicate an issue with the device
MicroPythonCommandsInterface.remainingTask
remainingTask()
MicroPythonCommandsInterface.rm
rm(filename)
Public method to remove a file from the connected device.
- filename (str)
-
name of the file to be removed
- Raises IOError:
-
raised to indicate an issue with the device
MicroPythonCommandsInterface.rmdir
rmdir(dirname)
Public method to remove a directory.
- dirname (str)
-
name of the directory to be removed
- Raises IOError:
-
raised to indicate an issue with the device
MicroPythonCommandsInterface.rmrf
rmrf(name, recursive=False, force=False)
Public method to remove a file or directory recursively.
- name (str)
-
of the file or directory to remove
- recursive (bool)
-
flag indicating a recursive deletion
- force (bool)
-
flag indicating to ignore errors
- Returns:
-
flag indicating success
- Return Type:
-
bool
- Raises IOError:
-
raised to indicate an issue with the device
MicroPythonCommandsInterface.syncTime
syncTime()
Public method to set the time of the connected device to the local
computer's time.
- Raises IOError:
-
raised to indicate an issue with the device
MicroPythonCommandsInterface.version
version()
Public method to get the MicroPython version information of the
connected device.
- Returns:
-
dictionary containing the version information
- Return Type:
-
dict
- Raises IOError:
-
raised to indicate an issue with the device
MicroPythonCommandsInterface.write
write(data)
Public method to write data to the connected device.
- data (bytes or bytearray)
-
data to be written