Make the Switch
Launch Your Design with TI

Looking to create ‘the next big thing’? Look no further than TI's Maker and DIY community! Launch your design with TI's low-cost, community-supported development platforms. Begin rapid prototyping applications in minutes with our microcontroller-based LaunchPad kits, Sitara™-processor-powered BeagleBoards and SimpleLink™ wireless connectivity SensorTags.

The IRC Bot


Internet Relay Chat (IRC) is a chat system from the early 1980's that has served much of the technical community among the Internet as a reliable, yet decentralized way to engage with other users.  Its protocol and usage has expanded since its inception but today it gets significantly less use. Much of IRC's original use cases have been superseded by modern social networks.

IRC has a look and feel similar to older command-line interfaces like Unix and DOS.  You type text on a single line, hit enter and it goes into the chat.  As an experienced Linux user and IT professional I find this interface comfortable for a lot of reasons, most notably the ability to "script" multiple statements or sequences of statements.  Another feature of IRC is the fact that people congregate in "channels" which may be private or totally public.

I believe these qualities of IRC make it a great idea for an "Internet command-line" interface of sorts; a command-line interface that lets you configure and interact with computing systems remotely.  IRC could enable a very free-form way of "chatting" and interacting with our machines, and realizing this goal using the TM4C Crypto Connected LaunchPad™ development kit solves two problems of mine:

1. How do I interact with my hardware remotely in a free-form manner?

2. How do I interact with remote sensors and query the device for past logs or information, but also enable other users to access the system as I deem appropriate?

The latter question points to the TM4C129x microcontroller (MCU)'s intended role as an Internet of things (IoT) Gateway. The use of a TM4C129x MCU has certain advantages over the typical platform used to host IRC bots. TM4C129x MCUs sport a rich set of peripherals which may be used to connect it to a wide variety of external hardware like ultra-low-power radios such as the TI Sub-1 GHz CC110L value line transceiver or the CC1200 RF transceiver via one of the TM4C129x MCU's many UART ports or SPI, a CAN-attached bus and more.

The TM4C129x MCU's cryptographic hardware allows one to use SSL connections, so SSL IRC connections can be private and protected from man-in-the-middle attacks where an attacker might gain unauthorized control of your home, or snooping that could allow an attacker to determine when you leave your house.

IRC bots traditionally offer whimsical features such as "quote of the day", historical recall features that IRC lacks natively, such as telling you the last time a particular user signed in or said anything in the channel. They may serve as watchdogs to kick out users who are banned, or providing "ops" status to users who should automatically receive it. Adding an MCU to the list of potential IRC bot platforms also allows for another use case as a controller for your IoT sensor or home automation network.

How will you use the TM4C Crypto Connected LaunchPad to securely connect to the cloud? Let us know in the comments!

Comments