Available Packages

Overview

This list showcases some of the core packages that are available, but it is not intended to be an exhaustive list of all packages in the registry. For such a list, you can call lpm viewall, and all available packages will be printed to the console.

Package Types

There are many different types of packages available. Each has a different format and functionality:

  • Library packages: these are binary libraries that are intended to be installed into an Automation Studio project. They don’t run any code in and of themselves, but must be called from a task.
  • Folder packages (i.e. ‘pkg’): these are source packages that represent an entire folder in the Logical View of Automation Studio. They can include resourcew such as tasks, .typ and .var files, and subfolders.
  • Project packages: these are source packages that contain an entire Automation Studio project.
  • HMI packages: these are source packages that contain frontend frameworks and templates.

Library Packages

Name Type Description
a3br Library AR Library for communicating with ABB targets via RWS. ABB + BR = A3BR!
atn Library AR Library for broadcasting commands from an execution context agnostic master. All Together Now!
chopper Library AR Library for building strings with embedded variable values
csvfilelib Library AR Library for reading and writing variable values to and from CSV files
errorlib Library AR Library to handle error collection, acknowledgement, and display
fiowrap Library AR Library for basic File IO operations
hammers Library AR Library with general tools - Every problem’s a nail when you have the right hammer
iotmqtt Library AR Library for MQTT client handling
jsmn_parse Library AR Library for parsing JSON packets
llhttp Library AR Library for handling HTTP(S) clients & servers
logthat Library AR Library for adding diagnostic information into the CPU’s logger
matrix Library AR Library for manipulating points, vectors, and 4X4 transformation matrices in 3D space
omjson Library AR Library for websocket-based JSON comms. OMG! It’s JSON!
persist Library AR Library for storing variables to permanent memory
piper Library Piper is a distributed machine sequencing library developed by Loupe for B&R controllers
ringbuflib Library AR Library for implementing a ring buffer
stringext Library AR Library for extending string parsing functionality
tcpcomm Library AR Library to handle TCP communication
udpcomm Library AR Library to handle UDP communication
vartools Library AR Library for getting and setting variable values
websocket Library AR library for WebSocket communications

Folder Packages

Name Type Description
firstinitprog Folder First program run upon machine boot. Initializes file devices, machine configuration, persistent data, loggers, etc.
piperprog Folder Full executable Piper implementation
revinfoprog Folder RevInfo automatically creates Git commit data and Automation Studio build information for use in an AS project.
luxprog Folder Server-side task for Loupe UX implementations, running on the PLC

Project Packages

Name Type Description
starterasproject Project Minimalist Starter AS Project
librarybuilderproject Project AS Project for building libraries into binaries

HMI Packages

Name Type Description
starterhmiproject HMI Starter HMI Project with basic template content
loupe-ux HMI Client side implementation of the UI ↔ PLC comms
tmplits HMI Template components for HMIs