Program Future-Ready Extron Control Systems with Microsoft Visual Studio Code and Python
Extron Control - More Choices. Better Results.
Over 20 years ago, Extron pioneered a unique approach to setting up an AV control system using simple, drag-and-drop configuration software. The popularity of this user-friendly, configuration approach grew as platforms and system designs evolved. We took this to the next level by introducing more powerful hardware and software and creating advanced configuration with our Pro Series platform. But we had no intention of stopping there.
The same rock-solid platform that we use to program our Pro Series systems is available to customers, providing an ideal toolset for creating robust, sophisticated, and elegant control systems. Whether it is the convenience of configuration with the industry's most powerful configuration-based control system solution, or the unbridled freedom of Extron Control System Programming, you'll be confident that you have the right solution for any AV application.
Standardized Control System Commands for Extron Products
Industry's first Configuration Software
Server Based AV Resource Management Software
Powerful Configuration Software for MediaLink Plus, TouchLink Pro, IP Link Pro and eBUS
Integrated Programming Development Environment for TouchLink Pro, IP Link Pro and eBUS
Development of ControlScript projects using Microsoft Visual Studio Code and other common tools.
Extron Programming
Python's Power + Extron's Expertise
More Choices in How You Edit Your Code
Extron has opened its programming environment and made it easier to edit ControlScript projects in Microsoft's Visual Studio Code editor, as well as, other popular Python editors. Extron has released the ControlScript Extension for VS Code to add ControlScript Libraries to VS Code's IntelliSense Code Completion and in-line documentation, as well as other tools and snippets to aid code development in VS Code. With the release of Extron's ControlScript Deployment Utility, ControlScript projects developed in any editor can be deployed and debugged to Extron Pro Series control processors and TouchLink Pro touchpanels.
Extron ControlScript - The Python Library for AV Professionals
To help accelerate the learning and development processes, Extron created a custom Python library called ControlScript. ControlScript uses familiar AV terms that make it easier to program AV control system projects. When combined with Extron Pro Series control hardware, ControlScript is poised to revolutionize the way you deliver programmable control systems.
Integration with Visual Studio Code
Extron offers more options for the ways you work. Extron has developed the ControlScript Extension for VS Code to integrate ControlScript programming easily into Microsoft's Visual Studio editor. Developers can take advantage of VS Code's IntelliSense code completion and inline documentation, and integration with version control software like, GIT.
ControlScript Code Libraries
We offer an extensive set of code libraries to aid your code development and boost your productivity. Extron device modules provides a large code library to control many of today's AV devices. Extron ControlScript Helper modules provide libraries of common tasks used within ControlScript projects that save you time and effort, and help you complete your projects faster.
ControlScript Deployment Utility
Extron’s ControlScript Deployment Utility is used to download ControlScript projects developed in VS Code or other Python editors to Pro Series control processors and TouchLink Pro touchpanels. The deployment utility keeps track of project credentials and certifies ControlScript projects to ensure that your projects are developed by Certified EAP professionals.
VS Code - Program Extron Control Systems with the Most Popular Development Environment on the Market
Microsoft Visual Studio Code is currently the most popular development environment, period. It supports a wide variety of languages, runs on multiple operating systems, and is supported by a vast array of plugins and extensions. In addition to all this, it’s simple, lightweight and free, making it ideal for collaboration and remote development. Now you can enjoy all the benefits of VS Code while using ControlScript to program your Extron control systems.
Python - The Choice is Clear
Python is a well-established, object oriented programming language that delivers power and flexibility. It is easily readable, editable, and greatly enhances programmer productivity. The popularity of Python and its continuing growth is well-documented and is fueled by numerous programming resources, including a wide variety of online courses and tutorials.
Modern Programming Architecture
Programmers in our industry have long been forced to use proprietary software. These development environments, even when framed by open source languages, suffer from obsolescence and stagnation due to being part of an intrinsically-closed ecosystem. This is why Extron chose an open system, built on Python. We wanted to provide programmers a resilient, ever-improving platform that inspires creative design, provides easy implementation, and allows long-term AV system viability. The open source nature of Python allows you to incorporate readily-available elements that speed up development and lower costs. Hundreds of lively, online communities are continually extending Python's capabilities by creating additional libraries, modules, and projects.
Open Systems
- Easily incorporate code from any developer
- Have an abundance of programming resources
- Are easy to learn and use, with an expansive amount of online guides and tutorials
- Are built on a resilient platform that grows with your needs
- Promote more efficient workflows to develop, debug, and deploy programs
- Encourage programming creativity and knowledge transfer
- or -
Closed Systems
- Cannot use code from other environments
- Limit outside resources for users
- Have a steep learning curve
- Use outdated development environments
- Offer minimal troubleshooting options
- Rely on proprietary knowledge that doesn't transfer to other systems
Python Advantages
Python is a modern, open source programming language. Active online communities are continually extending Python's capabilities by creating additional libraries, modules, and projects. These openly accessible components speed up development and lower costs.
Python is an interpreted language that offers a quicker workflow from editing code to testing a program. Ultra-fast data parsing and real-time event modification speed up and simplify programming tasks.
The design philosophies of Python emphasize code readability and simplicity. Its unique code structure is uncluttered by punctuation, features an efficient and concise lexicon, and uses white space for enhanced readability.
Python has a shallow learning curve compared to other programming languages, which helps get programmers up and running quickly. Programmers can write flexible programs without volumes of support code, providing quicker turnaround and code verification.
Using ControlScript and Python, programmers can extend the capabilities of a system by adding or customizing modules to fit the specific needs of the project. This adaptability makes the language well-suited for the broadest variety of applications.
Python helps you create programs for any size application. Our Pro Series Control Systems have been running Python under the hood all along. Now ControlScript - the Python Library for AV Professionals, is ready to help.
Control System Programming - The Complete Solution
Let's face it, not everone works the same way. Different people have different preferences and we are most productive when we are using the tools with which we are most familiar. That is why Extron has opened up its programming environment and has developed tools to allow you to develop ControlScript programs in the Editor that you are most familiar. The ControlScript Deployment Utility lets you upload ControlScript projects developed in any Python editor and debug the project. The ControlScript Extension for VS Code adds the ControlScript libraries to Microsoft's Visual Studio Code and adds ControlScript to Intellisense and inline documentation.
Our Pro Series Control Systems have been running Python under the hood since they were introduced. In addition to programming software, our Pro Series platform includes configuration software, AV system management software, touchpanels, button panel and conferencing interfaces, control processors, and a broad range of other tools and technologies geared to handle the evolving complexities of today's AV system designs.
ControlScript is an object-oriented API - Application Programming Interface optimized for rapid data manipulation. ControlScript speeds programming by enabling large datasets to be retrieved from multiple devices and parsed effectively and efficiently. Programmers can reuse portions of code, incorporate readily-available modules, as well as define objects once in the program and then simply reference them moving forward. The ControlScript API accelerates development efforts so that programmers can spend a little less time waiting and a lot more time creating.
Programmers can use ControlScript and Extron Pro Series control processors to support the latest BMS - Building Management System protocols, including BACnet, KNX, and DALI. Modern BMS allow for centralized monitoring and control of mechanical and electrical systems that include HVAC, lighting, power, and closed-circuit camera control.
Resources
Extron Authorized Programmer - EAP is an Extron Control Systems Certification program designed for AV professionals who will use ControlScript utilities to deploy and maintain programmable Extron control systems. In this program, you will learn how to develop a programmed framework using Python, as well as best practices for designing these systems and ensuring optimal system performance. Become a Certified Extron Authorized Programmer and access all the benefits of the ControlScript utilities, the ControlScript API, and more.
Extron offers an extensive library of modules that speed up the development process for Pro Series control systems. Device modules are time-saving, reusable program files that include all the commands necessary for integrating a device into a Pro Series control system. Helper modules, which include common AV operations and logic, can be used in many different types of projects directly as provided, or they can serve as examples to create your own modules to suit almost any need. Modules are developed and tested to provide a consistent, standardized coding approach that makes programming more straightforward and troubleshooting more efficient.
Device Modules Helper ModulesExtron has a library of online video tutorials to help you learn more about the latest features in Extron control system software, including the ControlScript Deployment Utility and the ControlScript Extension for VS Code. These videos also highlight steps and helpful tips to accomplish common tasks with ease, and successfully set up your control system.
Extron publications are essential resources for designing and deploying professional AV systems. Our guides provide an in-depth look at a variety of applications with a focus on designing functional, highly effective and intuitive systems. The Extron GUI Design Guide is a valuable reference of the latest GUI Design concepts and best practices.
View Extron Design GuidesTo further support the growing community of programmers, Extron has an online forum where peers can learn and share insights about using Python, Extron control system software, and ControlScript. Extron actively moderates support discussions in the forum, answering questions and offering recommendations to ensure the success of this thriving control system programming community.
Extron Control System Programming Products
Contact Us
For a first-hand look at Extron programmable control systems at one of our worldwide facilities, or, for a personalized in-office demonstration of the Pro Series Control platform, contact your Extron representative.
View Extron Worldwide Office Locations