Short Answer: If you have access to Apple API/protocol. You can just add a layer on top more than likely.
I do not know if they use or support USB CDC protocol.
Long Answer:
My knowledge of Apple world is that this is a royal pain. You have to be deemed worthy to know. In the days of the 30 pin dock connector there was a UART protocol hidden which could be used for certain things. However Apple moved to USB and likely implemented specific networking protocols to chipsets as a replacement to this.
Andriod on the other hand has a number of different options for this. I have never worked with them personally however others have reported success. Andriod uses a different model. They can either enumerate a Linux device then allow the application to connect to the device driver. This is more like a Linux workflow rather than Andriod. Andriod workflow works off the accessory protocol or Andriod auto protocol. This is more of a raw API than a blessed chipset as I understand it. They allow you to choose to go that path, as they are much more interested in the services.
USB and UART are point to point protocols so they come with challenges in device drivers. Neither protocol manages this issue very well. When they do; it is usually through a proxy service in the OS, which needs to be blessed ahead of time. Wireless and networking protocols however work differently and the OS likely has support for the device driver, stack and service already. These may be able to connect directly to the application independent of the operating system.
With the right software and TCP/IP you can actually extend the system API completely. The protocols are usually quite diverse. The beautiful thing about TCP/IP is you can extend just about any service you want. This ends up being a nightmare but you can extend the operation system and create yourself as an operating system, if careful enough. Almost anything that allows TCP/IP comms out is fair game.
In some systems your are left with just doing things yourself. Given a proper environment there is nothing stopping you from at least hacking something together. However getting blessed compatibility is another story. Apple discourages certain things to ensure compatibility and consistency.
I do not know if they use or support USB CDC protocol.
Long Answer:
My knowledge of Apple world is that this is a royal pain. You have to be deemed worthy to know. In the days of the 30 pin dock connector there was a UART protocol hidden which could be used for certain things. However Apple moved to USB and likely implemented specific networking protocols to chipsets as a replacement to this.
Andriod on the other hand has a number of different options for this. I have never worked with them personally however others have reported success. Andriod uses a different model. They can either enumerate a Linux device then allow the application to connect to the device driver. This is more like a Linux workflow rather than Andriod. Andriod workflow works off the accessory protocol or Andriod auto protocol. This is more of a raw API than a blessed chipset as I understand it. They allow you to choose to go that path, as they are much more interested in the services.
USB and UART are point to point protocols so they come with challenges in device drivers. Neither protocol manages this issue very well. When they do; it is usually through a proxy service in the OS, which needs to be blessed ahead of time. Wireless and networking protocols however work differently and the OS likely has support for the device driver, stack and service already. These may be able to connect directly to the application independent of the operating system.
With the right software and TCP/IP you can actually extend the system API completely. The protocols are usually quite diverse. The beautiful thing about TCP/IP is you can extend just about any service you want. This ends up being a nightmare but you can extend the operation system and create yourself as an operating system, if careful enough. Almost anything that allows TCP/IP comms out is fair game.
In some systems your are left with just doing things yourself. Given a proper environment there is nothing stopping you from at least hacking something together. However getting blessed compatibility is another story. Apple discourages certain things to ensure compatibility and consistency.
Statistics: Posted by dthacher — Wed Aug 14, 2024 3:12 pm