-    def __init__(self):
-        from pyftdi.spi import SpiController
-        self._spi = SpiController(cs_count=1)
-        self._spi.configure('ftdi:///1')
-        self._port = self._spi.get_port(0)
-        self._port.set_frequency(100000)
-        self._port._cpol = 0
-        self._port._cpha = 0
-        # Change GPIO controller to SPI
-        Pin.ft232h_gpio = self._spi.get_gpio()
-
-    def init(self, baudrate=100000, polarity=0, phase=0, bits=8,
-                  firstbit=MSB, sck=None, mosi=None, miso=None):
-        self._port.set_frequency(baudrate)
-        self._port._cpol = polarity
-        self._port._cpha = phase
+    # pylint: disable=too-many-arguments,unused-argument
+    def init(
+        self,
+        baudrate=100000,
+        polarity=0,
+        phase=0,
+        bits=8,
+        firstbit=MSB,
+        sck=None,
+        mosi=None,
+        miso=None,
+    ):
+        """Initialize the Port"""
+        # print("baudrate: " + str(baudrate))
+        # print("mode: " + str((polarity<<1) | (phase)))
+        self._nova.setClockSPI(0, baudrate)
+        self._nova.setModeSPI(0, (polarity << 1) | (phase))
+
+    # pylint: enable=too-many-arguments,unused-argument
+
+    @staticmethod
+    def get_received_data(lineOutput):
+        """Return any received data"""
+        return lineOutput.split("RXD ")[1]