When starting an IoT project, one important consideration is whether to use an on-premises or cloud environment to run IoT applications and manage devices and data. While many private networks may not have Internet connectivity or be able to transmit data through a public cloud, there are several advantages to running on-premises IoT solutions. For instance, a private network that is not connected to the Internet is generally more secure, as transmitting and storing data in a cloud environment can introduce additional security risks for mission-critical IoT solutions. Additionally, on-premises solutions can offer more control over data and infrastructure, as well as potentially lower costs for some organizations. It's important to carefully weigh the pros and cons of both options and choose the one that best meets the needs and goals of your specific IoT project.
An on-premises IoT platform is installed and run on a local computer/device in a private network rather than on a remote server in the cloud. This type of platform can offer greater security and control, as well as potentially lower costs for some organizations. If you're interested in creating a cost-effective on-premises IoT platform, our hardware-agnostic IoT foundation may be a good option for you. It allows you to build an IoT platform that is tailored to your specific needs and can be run on-premises, giving you more control over your data and infrastructure. Whether you're a large enterprise or a small business, an on-premises IoT platform can be a powerful tool for realizing the benefits of IoT in your organization.
The Barracuda App Server is a powerful tool for building and deploying on-premises IoT, edge, or private utility solutions in private networks. This is especially useful for enterprises that need to maintain security and control but still want to take advantage of the benefits of a cloud-based IoT platform, such as the ability to develop integrated IoT applications quickly and securely. If you're unable to deploy to the open Internet or transmit data through a public cloud, the Barracuda App Server can help you get the most out of your IoT projects without sacrificing security or control. With its user-friendly programming environment and extensive capabilities, the Barracuda App Server is a versatile and reliable choice for organizations looking to realize the full potential of IoT in their operations.
When building on-premises IoT solutions and products, it's important to have a strong foundation that includes industry-standard protocols such as OPC-UA, Modbus, MQTT, HTTP, and REST. These protocols are essential for enabling communication and interoperability between different devices and systems and help ensure that your IoT solutions are reliable and scalable. By choosing a platform that supports these protocols, you can be confident that your on-premises IoT projects will have the foundation they need to succeed.
One of the key benefits of the Barracuda App Server is its hardware and operating system agnosticism, which allows it to run on a variety of systems. This includes (Embedded) Linux, , QNX, VxWorks, Windows, macOS, Zephyr, FreeRTOS, INTEGRITY, Azure RTOS, Nucleus RTOS, embOS, RTXC, SMX, MQX, and RTOS-32, making it an ideal choice for a wide range of projects. Whether you're working with a specific hardware platform or operating system, the Barracuda App Server can help you bring your IoT vision to life.
In addition to supporting standard protocols like OPC-UA, Modbus, MQTT, and HTTP, Barracuda App Server also includes an IoT protocol called SMQ. This protocol is similar to MQTT but includes additional features that are particularly useful for device management and supervision. With SMQ, your product can act as an IoT broker, similar to an MQTT broker, but with the added benefit of being able to integrate industry protocols, HTTP, and application server technology in one easy-to-use integral package. This makes the Barracuda App Server an ideal choice for organizations that need a powerful and flexible platform for their IoT projects.
The following picture depicts how one SMQ broker can manage and supervise many devices, such as actuators and sensors. These devices do not run the Barracuda App Server but use the SMQ C Client Library when connecting to the broker.
The example to the right is from the article Modern Approach to Embedding a Web Server in a Device, which provides an innovative design pattern for controlling on-premises actuators and sensors using SMQ.
You will see multiple light switches to the right if other users are viewing this page. Only one switch belongs to you. See the article for details.
One of the benefits of the SMQ protocol is that one can control and supervise any number of devices using the same client. The server hosting the SMQ broker also becomes an SMQ client when a custom Lua application is installed on the server side. The SMQ broker includes a cluster plugin enabling any number of Barracuda App Server-powered products to communicate using the cluster bus.
The SMQ cluster technology includes a ready-to-use auto-discover plugin, enabling Barracuda App Server powered products to automatically connect to the SMQ cluster bus. See the IoT Cluster Demo for a hands-on cluster bus tutorial.
See the online SMQ documentation for additional on-premises IoT use cases.
The embeddable Barracuda App Server C source code library is a powerful and flexible platform for building on-premises IoT solutions and can be easily embedded in a larger program or firmware as a C source code library. When working with a high-level operating system like (embedded) Linux, QNX, VxWorks, or Windows, you can also use the ready-to-run Barracuda App Server bundle called the Mako Server to make deployment even easier. This bundle includes everything you need to get started and can help you get your IoT projects up and running quickly and efficiently.
One of the key benefits of using the Mako Server for your IoT projects is its ease of deployment. With all features, including the database, integrated into one executable, it's quick and easy to get your projects up and running. Plus, deploying your custom Lua applications is as simple as uploading a standard ZIP file. This makes the Mako Server a convenient and user-friendly choice for organizations looking to build on-premises IoT solutions with the Barracuda App Server. Whether you're working on a small pilot project or a large-scale deployment, the Mako Server has the tools and features you need to succeed.
The Barracuda App Server also provides a solid edge controller foundation. See the Industrial Edge-Controller Software page for details.
Although the following demo is designed to be installed on a cloud server, it demonstrates concepts that can be applied to an on-premises IoT platform. The clustering shown in the video may not be necessary for an on-premises IoT platform but can be beneficial if the platform requires internet access. The clustering allows for bridging between a local server and an internet server, making it possible to securely reach devices in the private network from other locations.
Please refer to the demo documentation for instructions on how to download the Windows demo executable and for information on how to synchronize all displays. Note that the demo application focuses on demonstrating how a native UI and web UI can be synchronized in real time. This option is great for companies that need both a native and web user interface, but creating both a native UI and a web UI increases the cost as two separate user interfaces must be developed. However, modern web interfaces can easily replicate and provide the same user experience as any onboard UI, thus native UIs are not necessary with modern device design.
The Mako Server includes an IoT example designed for being installed on your own computer. See Installing The SMQ Broker On Your Own Computer for details.
Navigating the world of embedded web servers and IoT can be daunting. Our consulting services are here to provide instant expertise. But our tutorials are ready if you're looking for a self-paced journey. Every challenge, every ambition, we've got your back.
Expedite your IoT and edge computing development with the "Barracuda App Server Network Library", a compact client/server multi-protocol stack and toolkit with an efficient integrated scripting engine. Includes Industrial Protocols, MQTT client, SMQ broker, WebSocket client & server, REST, AJAX, XML, and more. The Barracuda App Server is a programmable, secure, and intelligent IoT toolkit that fits a wide range of hardware options.
SharkSSL is the smallest, fastest, and best performing embedded TLS stack with optimized ciphers made by Real Time Logic. SharkSSL includes many secure IoT protocols.
SMQ lets developers quickly and inexpensively deliver world-class management functionality for their products. SMQ is an enterprise ready IoT protocol that enables easier control and management of products on a massive scale.
SharkMQTT is a super small secure MQTT client with integrated TLS stack. SharkMQTT easily fits in tiny microcontrollers.
An easy to use OPC UA stack that enables bridging of OPC-UA enabled industrial products with cloud services, IT, and HTML5 user interfaces.
Use our user programmable Edge-Controller as a tool to accelerate development of the next generation industrial edge products and to facilitate rapid IoT and IIoT development.
Learn how to use the Barracuda App Server as your On-Premises IoT Foundation.
The compact Web Server C library is included in the Barracuda App Server protocol suite but can also be used standalone.
The tiny Minnow Server enables modern web server user interfaces to be used as the graphical front end for tiny microcontrollers. Make sure to check out the reference design and the Minnow Server design guide.
Why use FTP when you can use your device as a secure network drive.
PikeHTTP is a compact and secure HTTP client C library that greatly simplifies the design of HTTP/REST style apps in C or C++.
The embedded WebSocket C library lets developers design tiny and secure IoT applications based on the WebSocket protocol.
Send alarms and other notifications from any microcontroller powered product.
The RayCrypto engine is an extremely small and fast embedded crypto library designed specifically for embedded resource-constrained devices.
Real Time Logic's SharkTrust™ service is an automatic Public Key Infrastructure (PKI) solution for products containing an Embedded Web Server.
The Modbus client enables bridging of Modbus enabled industrial products with modern IoT devices and HTML5 powered HMIs.