EM7305 in Linux - Few Questions

Hi,

I have some questions about the EM7305 when used in Linux. Any help from anyone would be greatly appreciated.

  1. What is the lowest level for communication to the card hardware in Linux? Is it a proprietary kernel driver?
  2. Which document describes the API to the card? Is it SwiApiReference.pdf?
  3. What functions do I need to establish a connection to the provider?
  4. How can I choose the type of connection (UMTS, LTE etc.) or is it chosen automatically?
  5. What functions do I need to establish a connection to the recipient of my data?
  6. What functions do I need to disconnect?
  7. Which functions are available to monitor the connection status?
  8. What functions are provided to send and receive data?
  9. Are there different API functions used for different SIM cards or is that handled by the API internally?
  10. Which sample applications are available?
  11. Which Kernel version should be used?

Ok so some answers to the questions in line below

  1. What is the lowest level for communication to the card hardware in Linux? Is it a proprietary kernel driver?
    Drivers are here. https://source.sierrawireless.com/~/media/support_downloads/airprime/software/sierralinuxqmidrivers.s2.30n2.48.tar.ashx
  2. Which document describes the API to the card? Is it SwiApiReference.pdf?
    Yes, there is also a HTML version of it as well.
  3. What functions do I need to establish a connection to the provider?
    I presume you mean start a data connation, look at the connection manager sample application.
  4. How can I choose the type of connection (UMTS, LTE etc.) or is it chosen automatically?
    The unit will automaitcally go for the highest bearer, if you want to manually choose that is complicated but possible (not going to explain here).
  5. What functions do I need to establish a connection to the recipient of my data?
    When the unit has started a data connection you see it as an Ethernet interface on the Linux system, just use it as one of these.
  6. What functions do I need to disconnect?
    Look at the connection manager sample code.
  7. Which functions are available to monitor the connection status?
    You are just going to need to look through the API’s as there are a lot of them.
  8. What functions are provided to send and receive data?
    N/A, see answer to 5.
  9. Are there different API functions used for different SIM cards or is that handled by the API internally?
    No, the unit talks to the SIM card automatically (its a pretty broad question).
  10. Which sample applications are available?
    Look in the SDK in /Samples/ https://source.sierrawireless.com/resources/airprime/software/linux-qmi-sdk-software-04,-d-,00,-d-,11/, the naming is pretty self explanatory and there are readme files.
  11. Which Kernel version should be used?
    Drivers can be used from 2.3.32 to the latest (we might not have tested the absolute latest latest but they will more than likely work.

Regards

Matt