Submit a Driver

Crestron® CSPs and dealers can submit their completed drivers to Crestron for inclusion on the Crestron Drivers Portal. Once Crestron approves the submission, the driver will become available to the Crestron Drivers Portal, .AV Framework™ software, and Crestron Home® OS.

The following procedures describe how to submit a driver to Crestron.

NOTE: To increase the likelihood that your driver submission will be accepted, ensure that the driver has been tested thoroughly as described in Test a Driver prior to submission.

Crestron Certified Drivers

Drivers published to the Crestron Drivers Portal are considered certified only when they have been developed and tested by Crestron. Crestron certified drivers are identified by the Crestron swirl within the portal.

Driver File Name

All third-party drivers must contain the developer or company name within the driver file names (for .pkg, .dll, and .pdf files). This requirement prevents a scenario where the same driver (using the same file name structure) is created and submitted by different developers.

Example: DriverDepot_AVReceiver_Sony_STR12345_Serial.pkg

The file name format is flexible and can be set at the discretion of the third-party developer. However, it must contain the developer or company name to avoid the submission being rejected.

Crestron recommends the following file name format: <Developer/Company>_<DeviceType>_<Manufacturer>_<BaseModel>_<Communication>.

NOTE: New versions of existing drivers do not need to be modified. This rule only applies to new driver submissions.

Developer Information

Your driver must have Developer information specified within the GeneralInformation section of the driver JSON file. The driver package must be built using ManifestUtil.exe version 16 or later to ensure the information is populated in the driver JSON file. The Developer information is used to populate the appropriate developer fields on the driver portal and to differentiate your driver from another driver which may support the same device.

Dependency Group

Your driver must also have a DependencyGroup string specified within the GeneralInformation section of the driver JSON file. The driver package must be built using ManifestUtil.exe version 16 or later to ensure the information is populated in the driver JSON file.

The DependencyGroup string should be populated as follows:

  • If you are developing a standalone driver that does not rely on any interaction with other drivers that you have developed, then specify DependencyGroup as an empty string.
  • If your driver shares any static data with other drivers (such as a singleton license manager) and relies on being in the same process as those other drivers, then those drivers must all specify the same DependencyGroup value. This is to inform applications that the drivers depend on being grouped together. This string should be unique to your company and must include your company name or other unique identifier to ensure it does not conflict with another company's group.

Driver Review and Approval

Your driver will be reviewed by our Quality Engineering (QE) department. A typical review period lasts approximately two weeks. If issues are discovered with your driver submission during this review, you will be notified via email. You will also be notified via email once your driver submission has been approved and published.

The email used to submit your driver package will be used for all correspondence.

Driver Licensing

The driver portal does not provide a way for users to purchase drivers. For information on creating a licensing service, refer to Driver Licensing.

Approved Third-Party Driver Types

Refer to Supported Device Types for a list of all device types currently supported on the portal.

The following classes of drivers cannot be hosted on our portal:

  • Drivers intended to control medical equipment
  • Drivers intended to interface with or control life safety equipment, including devices such as carbon monoxide or smoke detectors
  • Direct control of fire alarms or fire suppression systems (control through a security system is acceptable)

Crestron Home Extension Drivers

If you have created a Crestron Home Extension driver that is using a type not listed in the Approved Third-Party Driver Types section above, we will review the type you have defined and provide feedback regarding whether it needs to be adjusted. This is necessary in order to ensure common types are defined for all developers.

Removal of Drivers

Crestron reserves the right to remove a driver at any time under any of the following conditions.

  • A breach of contract has been determined with regards to your CSP, Dealer, or Integrated Partner agreement.

  • A driver has been reported to cause harm to either Crestron hardware, third-party hardware or a residence/property.

  • A driver has been reported to collect personal information without the consent of the end user.

  • A driver has been repeatedly reported as unstable or exhibits intermittent functional behavior.

How to Publish a Driver to the Crestron Portal

  1. Review your driver package prior to submission to ensure the following:
    • The driver you have built is one of the approved driver types we can host on our portal. Refer to Approved Third-Party Driver Types above.
    • NOTE: If you are submitting a Crestron Home Extension driver, we will review the type you have defined and provide feedback if it needs to be adjusted.
    • You have built the driver according to the standards described in Create a Driver section within this microsite.
    • You have completed and signed the appropriate driver self-test plan. PDF test plans with form fields can be downloaded from Resources.
    • You have created a help file using the help file template provided in the driver SDK.
      • The file must be saved as a PDF document.
      • The file name must match the full name of the driver PKG.
      • NOTE: For example, a package named “Projector_Epson_PowerLite-2140W_Serial.pkg” would have a help file named “Projector_Epson_PowerLite-2140W_Serial.pdf”.
      • The file must contain contact information required to provide support of your driver.
      • If your driver requires licensing, the file must contain information on licensing, as well as a link to the website used to license the driver.
      • The help file must be included in the actual driver .pkg file.
      • IMPORTANT! The filenames of the driver PGK file, DLL file, and help PDF file must all match exactly (including upper and lower casing). Any mismatches between filenames will cause your driver to be rejected.
  2. You must use Crestron’s File Sharing service to submit the driver .PKG file.
  3. IMPORTANT! Once the file is successfully uploaded, you will be given a downloader URL. This URL needs to be included in your driver submission email to Crestron.
  4. Create an email to drivers@crestron.com with the subject line “Driver Submission Package."
  5. Include the downloader URL you were provided in step 2 within the body of the email.
  6. Attach the signed driver self-test plan as described in step 1.

Crestron will review all valid submissions. CSPs and dealers are responsible for ensuring the quality of their drivers. Submitting a completed self-test plan is the minimum criteria required to post your driver to the portal, but Crestron encourages CSPs and dealers to rigorously test their driver to ensure the highest possible quality when the driver is integrated into a larger system.