diff --git a/README.md b/README.md
index b3b0bb07b54105a8762d9bc4ec0cb7131571268b..2a3304913e4488c771bbe625c642d6309f29f137 100644
--- a/README.md
+++ b/README.md
@@ -28,34 +28,35 @@ mv target/release/libserial_bridge.dylib serialbridge.<EXT>
 
 ## Usage
 
+All string arguments should be char arrays (e.g. `'main'` instead of `"main"`).
+
 serialbridge can be used in matlab in the following way:
-- `serialbridge("Open", string_serialPort, uint_baudrate)`:
-  - **"Open"**: specifies we want to open the serial port
-  - string_serialPort: is the serial port we want to open (eg: "COM6")
-  - uint_baudrate: is the baudrate of the port (eg: 256000)
-- `serialbridge("Write", string_serialPort, singleArray_Data)`:
-  - **"Write"**: specifies that we want to write to the serial port
-  - singleArray_Data: is the array of singles we want to write on serial (eg: [1 2 3 4.5 5.4])
-- `singleArray_Data = serialbridge("Read", string_serialPort, uint_nData)`;
-  - **"Read"**: specifies that we want to read from the serial port
-  - uint_nData: How many floats to read from serial (eg: 1)
-  - singleArray_Data: array of floats read from the serial (eg: actuatorData)
-- `serialbridge("Close", string_serialPort)`:
-  - **"Close"**: specifies we want to close the serial port
+- `serialbridge('Open', '<PORT_ID>', '<PORT_PATH>', 115200)`:
+  - `'Open'`: specifies we want to open the serial port
+  - `<PORT_ID>`: is the name of the serial port (e.g. `'main'`, `'payload'`, etc.)
+  - `<PORT_PATH>`: is the serial port we want to open (e.g. `'COM6'`)
+  - `115200`: is the baudrate of the port
+- `serialbridge('Write', '<PORT_ID>', single([0, 1, 2]))`:
+  - `'Write'`: specifies that we want to write to the serial port
+  - `<PORT_ID>`: is the name of the serial port (e.g. `'main'`, `'payload'`, etc.)
+  - `[0, 1.2, 2.3]`: is the array of singles we want to write on serial.
+- `data = serialbridge('Read', '<PORT_ID>', 10)`;
+  - `'Read'`: specifies that we want to read from the serial port
+  - `<PORT_ID>`: is the name of the serial port (e.g. `'main'`, `'payload'`, etc.)
+  - `10`: How many floats to read from serial
+  - `data`: array of floats read from the serial (e.g. actuatorData)
+- `serialbridge('Close', '<PORT_ID>')`:
+  - `'Close'`: specifies we want to close the serial port
+  - `<PORT_ID>`: is the name of the serial port (e.g. `'main'`, `'payload'`, etc.)
 
 **Example** in Matlab:
 ```matlab
-serialbridge("Open", "dev/COM6", 256000);     % Opens the serial port
-serialbridge("Write", "dev/COM6", [1 2 3 4]); % Sends the array "[1 2 3 4]" to the serial device
-data = serialbridge("Read", "dev/COM6", 2);   % Receives 2 floats and stores them in the variable "data"
-serialbridge("Close", "dev/COM6");            % Closes the serial port
+serialbridge('Open', 'main', '/dev/ttyACM0', 115200); % Opens the serial port
+serialbridge('Write', 'main', single([1 2 3 4]));     % Sends the array "[1 2 3 4]" to the serial device
+data = serialbridge('Read', 'main', 2);               % Receives 2 floats and stores them in the variable "data"
+serialbridge('Close', 'main');                        % Closes the serial port
 ```
 
-Procedure in order to use the **MatlabTransceiver** module: https://git.skywarder.eu/scs/hermes/r2a-obsw/-/blob/Serial4Simulations-dev/src/tests/hardware_in_the_loop/README.md
-
-***WARNING***:
-* It's possible to open just ONE serial port with this module
-
 ## Dev
 
 Tho have rustanalyzer working properly, you need to add a `config.toml` in the `.cargo` directory at the root of this repository with the following content: