For dead-simple wireless design, AT Commands on smartBASIC have you covered
Published on November 11, 2019
Laird Connectivity is focused on providing the solutions and experience that speed our customers’ solutions to market. Our wide array of modules and antennas bring quality and flexible development options to your designs. One example of this is our implementation of an AT Command Set, for use in our wireless modules with smartBASIC.
AT commands are a long-established, simple way of interfacing between two modems. They are an interface designed to allow one modem to connect to another, establish data mode, transfer data, and “hang up” so to speak. This simple exchange is characteristic of most wireless exchanges, which makes it an enduring protocol that is still in use after nearly 40 years, especially in embedded design.
To this day, nearly every modem uses some variant of the AT command set. So where did it come from, and how can it accelerate your wireless development today?
A Little History – Hayes Microcomputer Products
AT commands as we know them today are the principle invention of Hayes Microcomputer Products. Founded in Atlanta, GA in the mid-70s, the AT Command Set represented an elegant solution to a complicated problem in the early days of early PC modems.
Modems at the time were impractical for the new 8-bit home computers of the time. They were difficult to use, expensive, and would need special software for every single computer bus. Most modems could only send or receive, required manual dialing and disconnecting, and were overall impractical.
Hayes sought to create a modem that was suitable for the coming wave of home computer users. This would be an all-in-one modem that could dial, answer, initiate data transfer, escape data mode, and hang up. But the only way to do that would be to develop a protocol for mode-switching between modems and differentiating those control commands from the data itself.
The Hayes AT command set accomplished this. AT (which represents “attention” in the exchange between modems) served as a prefix for commands, including a command to initiate data mode. A unique escape sequence that would end data mode and return to command mode.
All of this meant that the modems didn’t require separate lines for data and control, and allowed a degree of automation to the exchange. These factors made the AT command set much more suitable for computer hobbyists, which Hayes debuted on their successful Smartmodem 300.
Ultimately, modems lost out to high-speed cable internet for home use. The internet meant that a computer didn’t need to individually dial out to every desired connection, but simply routed through the internet over one connection. High speed internet rendered dial-up modems obsolete, and the internet moved on.
An Enduring Option for Wireless Design
However, decades later, AT commands are still a viable way to develop wireless applications, even over a protocol like Bluetooth. They remain popular in embedded design, and are enjoyed for a number of reasons.
The first is that it’s a simple protocol to learn. There are only a handful of AT commands, and the core commands are relatively standard. While the original command set was expanded on by many, many custom commands created by competing manufacturers, the core Hayes commands are relatively standardized and familiar to those who’ve previously developed with AT commands.
Because those commands are so easy to learn and use, the AT command set makes it easy for those who aren’t programmers or software engineers to develop applications. An AT command exchange is relatively simple: open a connection, send the required data, and close the connection. This makes it easy to pick up and develop wireless applications.
AT Commands are also, as we’ve discussed, an established protocol that’s been used successfully for decades. When embarking on a new design, you can go forward with the confidence that your application environment has been used for many years for similar applications with reliable results.
Our Implementation in smartBASIC
Laird Connectivity brings all these advantages to our industry-best smartBASIC modules via a custom designed AT command set application. Our smartBASIC programming language enables a fully-featured embedded environment for hostless applications, especially event-driven ones that are typical of IoT design. Our AT command set application enables you to write applications which send IoT data over those proven AT commands without learning another language or spending much time learning a new language.
Let Laird Connectivity’s experience in wireless design and IoT development speed your ideas to market by leveraging our development time and expertise. Our smartBASIC modules, such as the BL65x series, are the fastest route from your conceptualization to reality.