uos – Basic "Operating System" Services
The uos module contains functions for filesystem access and urandom function.
Port Specifics
The filesystem has / as the root directory and the available physical drives are accessible from here. They are currently:
- /flash– the internal flash filesystem
- /sd– the SD card (if it exists)
Functions
uos.uname() 
Return information about the system, firmware release version, and MicroPython interpreter version.
uos.chdir(path) 
Change current directory.
uos.getcwd() 
Get the current directory.
uos.listdir([dir]) 
With no argument, list the current directory. Otherwise list the given directory.
uos.mkdir(path) 
Create a new directory.
uos.remove(path) 
Remove a file.
uos.rmdir(path) 
Remove a directory.
uos.rename(old_path, new_path) 
Rename a file.
uos.stat(path) 
Get the status of a file or directory.
The return value is a tuple with the following 10 values, in order:
- st_mode: protection bits.
- st_ino:- inodenumber. (not implemented, returns 0)
- st_dev: device. (not implemented, returns 0)
- st_nlink: number of hard links. (not implemented, returns 0)
- st_uid: user id of owner. (not implemented, returns 0)
- st_gid: group id of owner. (not implemented, returns 0)
- st_size: size of file in bytes.
- st_atime: time of most recent access.
- st_mtime: time of most recent content modification.
- st_ctime: time of most recent metadata change.
uos.getfree(path) 
Returns the free space (in KiB) in the drive specified by path.
uos.sync() 
Sync all filesystems.
uos.urandom(n) 
Return a bytes object with n random bytes.
uos.unlink(path) 
Alias for the remove() method.
uos.mount(block_device, mount_point, * , readonly=False) 
Mounts a block device (like an SD object) in the specified mount point. Example:
os.mount(sd, '/sd')
uos.unmount(path)
Unmounts a previously mounted block device from the given path.
uos.mkfat(block_device) 
Instantiate a VFS (Virtual File System) object with underlying FAT file system.
Example:
from machine import SD
import os
sd = SD()
vfs = os.mkfat(sd)    # Creating a VFS 
vfs.mkfs(sd)             # Formating the SD card
# Now we can use normal os mount
os.mount(vfs, '/sd')
uos.fsformat(path) 
Formats the block device mounted under the input path, must be either /flash or /sd
uos.dupterm(stream_object) 
Duplicate the terminal (the REPL) on the passed stream-like object. The given object must at least implement the read() and write() methods.
Constants
Separation character used in paths