Security and Connectivity for the IoT Edge

+1 978-264-6600



Command Line Interface for IoT Devices

RomCLI™ is designed to speed the implementation of text line interfaces for embedded devices.

Embedded CLI Overview

The RomCLI™ Command Line Interface toolkit is designed to speed the implementation of text line interfaces for embedded devices. In particular, the RomCLI™ toolkit supports command-line interfaces that look like Cisco IOS-style command systems. The RomCLI™ toolkit can work stand-alone or in conjunction with Allegro’s RomPager® Web Server to provide unified variable access using common variable access routines.



The RomTelnet toolkit provides an embedded Telnet server for standard protocol negotiation with any Internet Telnet client. Multiple simultaneous sessions are supported based on configuration.


For use with a serial line interface, the RomConsole toolkit provides component interfaces to user-supplied serial interfaces. RomCLI™ can use RomConsole to provide command line services via a serial interface in addition to the TCP/IP-based sessions provided by RomTelnet.


RomSShell™ is an optional toolkit that provides a secure shell for users accessing their embedded device. SSH version 2 is supported. RomSShell™ also supports multiple simultaneous sessions based on configuration.

Variable Access

Retrieval and storage of variables are achieved using the RomPager® Variable Access architecture. An API is provided with built-in routines to convert internal data types to and from external string formats.

Command Line Handler

The Command Line Handler provides basic line handling functions common to all parsing trees. Command lines are assembled by gathering characters from the Telnet, SSH or serial interfaces and passed to the Parser System for processing.

Parser System

The Parser System utilizes a set of predefined tables to provide command interaction. All commands are stateless and follow the ‘Cisco-like’ request-response format and resolve to an action. An Action can fully interface with variable storage or invoke user exit routines to display special format information or load different parse trees. Multiple parse trees allow separate authorization, configuration and operation command sets to be specified. Command prompts are specified as part of the parse trees allowing different prompts in different modes. Full <TAB> and ? command completion are supported to access command help support.


Included as part of the RomCLI™ toolkit, this offline tool will save your development team many hours when creating a CLI interface. The CliBuilder takes an XML format description of the command tree syntax including command help, action routines, security realms, etc. and produces the internal parse tree tables and help string tables that are used by the CLI Parser System.


Also included with the RomCLI™ toolkit, VarBuilder is an offline compiler that takes an XML format description of variables, data types and access routines and then produces a set of interface data structures. The data structures provide the basis for the common and consistent exchange of data between RomCLI™ and device variable storage.

ROM CLI Diagram



Small code footprintMore resource available for application features
ANSI C Source Code DistributionBroad processor architecture support eases porting and support
Processor, RTOS, and TCP/IP stack agnosticAllegro’s products will work with new or existing hardware and software designs
Interface files for leading RTOS vendors providedMinimizes porting effort, decreasing time to market
Shipping in millions or products worldwideField-proven reliability
CLIBuilder and VarBuilder offline toolsSpeed development of CLI interfaces and give customers a fast time to market
Offline tools available on OS X, Windows and X86 LinuxAllegro’s tools are supported on common development environments
Optional SSH securityCreate embedded devices that support secure remote device management with ease
Support for Telnet or Serial interfacesAllegro’s RomCLI™ toolkit can support both networked and serial environments
Common variable access structuresEase of program integration
Fully integrated with the RomPager® Suite of productsPre-integrated products save time and ultimately time to market
External command trees specified in XMLCommand architecture is easily extensible and flexible to meet your development needs

System Requirements

  • Processor Architecture – Works with any 16-bit, 32-bit or 64-bit processor
  • Operating System (OS) – Works with any OS vendor and will function without an OS if needed
  • TCP/IP Stack – Works with any vendor implementation
  • Filesystem – Works with any vendor implementation and will function without a filesystem if needed
  • Compiler – ANSI C

Contact Us Today To Ensure Your IoT is Secure

Implementing IoT device security can be a challenge. Let us help you by sharing our proven framework for integrating a proactive security approach into your design. Schedule a one-on-one web conference to discuss your security needs.

Our Other Products

We Help Your Company with IoT Security 


The Allegro Cryptography Engine (ACE) is a platform independent, high performance, resource sensitive, embedded FIPS 140-2 Validated cryptography engine specifically engineered for the rigors of embedded computing.
Learn More


Embedded device security is always a concern when building a networked embedded device. Allegro’s RomSTL is a small, resource sensitive TLS client and server solution specifically written for use in IoT applications.
Learn More


RomSShell is a Secure Shell (SSH) toolkit that is often used in conjunction with RomCLI to deliver secure remote device management capabilities to many Internet of Things (IoT) applications. SSH provides encrypted communications between hosts over an insecure network.
Learn More


RomCert makes embedding security certificate management into resource sensitive IoT devices fast, easy and reliable while decreasing time to market.
Learn More


The Allegro EdgeAgent Suite is specifically engineered to meet the rigors of embedded computing while offering manufacturers access to the latest networking and embedded security technology to actively participate in the rapidly growing Internet of everything universe of devices.
Learn More


Allegro’s RomWebClient toolkit allows your engineering team to leverage proven Web technology when creating custom IoT devices. The RomWebClient toolkit enables embedded engineering teams to build products that send and receive objects to and from any Web server using HTTP with full support for IPv4 and IPv6 operation.
Learn More


Allegro’s RomXML Parsing and Framing Toolkit drastically decreases the time and effort needed to implement Extensible Markup Language (XML) in your embedded application. XML offers a processor-independent method to encode data for interchange between diverse systems and is based on a set of rules for the construction of tag-delimited information.
Learn More

RomXML Plus™

Allegro’s RomXML Plus development toolkit offers design engineers a comprehensive solution for building connectivity between IoT devices and enterprise IT environments utilizing web services technology. Web services are often utilized with IoT applications such as remote data collection, operations, industrial automation, sensor networks and monitoring applications.
Learn More


The RomCLI Command Line Interface toolkit is designed to speed the implementation of text line interfaces for embedded devices. In particular, the RomCLI toolkit supports command-line interfaces that look like Cisco IOS-style command systems. The RomCLI toolkit can work stand-alone or in conjunction with Allegro’s RomPager Web Server to provide unified variable access using common variable access routines.
Learn More