Hiya,
We noticed that we cannot use the port C (Service port) as it shows access denied while using the com port in terminal. What could be the reason for this?
This would indicate that there is already an application that has opened port C for use.
Depending on how the FTDI device is presenting itself, the Azure Sphere Device Communication Service may already have opened port C. To validate this on Windows:
- Search for the Services app.
- Locate the Azure Sphere Device Communication service entry in the services application.
- Right click on the entry, and select stop.
With the device communication service stopped, you should be able to access port C, if this is indeed the cause.
Do remember to start the service again, otherwise you may be confused as to why Windows cannot find any Azure Sphere devices :)
Is it possible to use our device as both com port and D2XX just like Azure starter kit device?
I believe it is possible to use libftd2xx while ports are in COM port mode.
Using this ftd2xx python library wrapper , I am able to list all the device ports (except the one in use by the device communication service:
import ftd2xx
count = ftd2xx.createDeviceInfoList()
for dev in range(0, count):
print(ftd2xx.getDeviceInfoDetail(dev))
Yields:
{'index': 0, 'flags': 2, 'type': 7, 'id': 67330065, 'location': 593, 'serial': b'984A8DD25A36A', 'description': b'MSFT MT3620 Std Interface A', 'handle': c_void_p(None)}
{'index': 1, 'flags': 2, 'type': 7, 'id': 67330065, 'location': 594, 'serial': b'984A8DD25A36B', 'description': b'MSFT MT3620 Std Interface B', 'handle': c_void_p(None)}
{'index': 2, 'flags': 1, 'type': 3, 'id': 0, 'location': 0, 'serial': b'', 'description': b'', 'handle': c_void_p(None)}
{'index': 3, 'flags': 2, 'type': 7, 'id': 67330065, 'location': 596, 'serial': b'984A8DD25A36D', 'description': b'MSFT MT3620 Std Interface D', 'handle': c_void_p(None)}