IoT—Smart Embedded Solutions
Everyone is talking about the Internet of Things (IoT). We, The Embedded Experts, provide everything you need to build smart embedded solutions for the IoT.
- Complete end-to-end solution for any IoT scenario
- Optimized for resource-constrained embedded systems
- Algorithms optimized for performance of your target device
- High performance with low memory footprint
Because the IoT encompasses a diverse collection of smart connected devices and capabilities, developers need to satisfy a wide range of software requirements, especially in terms of communication and security.
SEGGER has the solution to these complex requirements. Our complete software portfolio provides the solid foundation on which to built your application. With SEGGER software, you can accelerate your time-to-market with software and tools that simply work.
What is an IoT Device?
First, there is the functional side of the IoT device. This functional part is essentially an embedded system as we have known it for years. Second, IoT devices interact with each other, a server or the cloud. To achieve this, the device needs to find its counterparts; this is supported by protocols such as MQTT. The connection itself is handled via IP or UDP based protocols.
Communication increases the exposure of the IoT device, which makes it more important to keep the different aspects of security in mind during development. There are multiple ways of compromising an IoT device, therefore the use of secure components is highly recommended. Such components may include transport layer security, secure shell, digital signatures, and certificates to block out unwanted communication or snooping.
As the environment for the IoT device constantly changes, another security component is its ability to adapt to these changes. This makes it a requirement to allow in-field upgrades.
How does SEGGER support the development of IoT devices?
We offer a complete end-to-end solution. Our customers have access to a comprehensive IoT package that covers all areas from development tools to standard firmware components.
Software IP components from SEGGER, such as emSSL Transport Layer Security (TLS), emSSH Secure Shell, emSecure Digital Signature suite, emCrypt Crypto libraries, emWeb HTTP Web server, and emNet TCP/IP stack, to name a few, can be used as foundations for your securely connected IoT device. Our software works on virtually any MCU. We work with all major silicon vendors, keeping our fingers on the pulse of their latest developments to enable the next generation of designs. Take our embOS-MPU RTOS for example. This super-reliable OS works effortlessly on today's Cortex-M based MCUs and is already primed to support the next generation ARMv8-M architecture.
Connected devices requiring User Interface (UI) or Human Machine Interface (HMI) support can take advantage of SEGGER's popular graphics package emWin. Licensed by many of the top semiconductor companies, its popularity is a testament to its robustness and flexibility, perfect for implementing your custom graphical interface.
In addition to our software suites, system developers can also take advantage of SEGGER's Embedded Studio IDE, our SystemView tracing tool, and our industry-leading J-Link debug probe, all from one reliable, established vendor.
Custom IoT solutions can be developed on demand, utilizing SEGGER's embedded engineering know-how and expertise.
Example IoT Projects
The range of IoT applications is almost endless. Almost every product can be built to connect to other devices, or the internet, and to publish or receive data.
We developed some projects to show how to create a "Thing". The examples were developed to demonstrate useful IoT applications.
To get started, set up the hardware (usually a development board and some sensors), download the firmware, and then see what the Thing does.
Want to make your products IoT-ready? Download the example projects to find out how you can create an IoT application with SEGGER Software.
SEGGER Weather Station
- Secured communication via MQTT
- MQTT over TLS
- MQTT Publish
- Secured communication via HTTPS
- GET from a REST API
- Device configuration and provisioning
- User data storage
- Client certification
- Creating and parsing JSON data
- Parse server responses
- Publish messages
The SEGGER Weather Station demonstrates how to create an IoT Node to communicate with an IoT Cloud Service. The IoT Temperature Node registers with the service and publishes its sensor data.
The data is analyzed in the cloud and made available on a website: http://weather.segger.com
Create your own IoT Temperature Node
Effortless communication with modern IoT devices
The IoT Toolkit is a collection of libraries that enables communication with modern IoT based environments and devices. It is a high-performance collection of libraries optimized for minimum memory consumption in RAM, ROM, high speed, and versatility working on any device.
Provide easy to use graphical user interfaces that can be accessed from anywhere!
emWeb allows you to use the most widely accepted language for providing Graphical User Interfaces in the world, HTML.
Ideal for Any Network Application
emNet is a high-performance TCP/IP stack that has been optimized for speed, versatility and a small memory footprint. It is written in ANSI C and can be used on virtually any CPU.
- Seamless integration with the emNet stack
- Simple, easy to integrate, unified API regardless of the WiFi module used
- No need for re-certification by using WiFi certified modules
- Access Point support (depends on module features)
- Support for all Ethernet based protocols (not only TCP/UDP)
- Support for various host MCU interfaces like UART / SPI / SDIO / RMII
- Add-on modules for the emPower eval board available
WiFi Connections Supported by Unified API
WiFi support is a solution to add WiFi (IEEE 802.11) support to your product. It supports various WiFi modules from different vendors to be added to your product easily.
Get Your Mobile IoT Device Connected at Any Location
Connect your embedded system with an LTE / UMTS / GPRS modem via PPP (Point to Point Protocol) and get access to a network. The emNet PPP implementation is an optional extension which can be integrated into your TCP/IP application seamlessly. It combines a maximum of performance with a small memory footprint.
Reliable, Secure and Built for IoT Devices
emSSL is a software library that enables secure connections across the Internet. emSSL offers both client and server capability. SSL/TLS is a must-have in nearly every application which is connected to the Internet. Products of the IoT, smart grid or home automation markets benefit from securing their communication.
Provide Security for The Administration Interface of Your Device
emSSH is a software library that enables secure login to your embedded system. emSSH offers the possibility to establish a secured connection to any server application in your product. It can be used both target independently in native computer applications and in embedded targets.
- Proven modern cryptography standards
- NIST-validated implementations of many algorithms
- Secure, fast, and cleanly-written code
Secure Data and Communication Protocols for Your IoT Device
emCrypt is a secure and efficient implementation of all essential cryptographic algorithms specifically designed for embedded systems and IoT devices.
Secure Your Device and Prevent Cloning
emSecure is a software solution to securely authenticate digital assets. It can be used to secure products against hacking and cloning at no per unit cost .
Save ROM to Save Money
emCompress is a compression system that is able to reduce the storage requirements of data that must be embedded into an application. Compress on the host in advance, decompress in the target on demand.
Make Software Updates of Your IoT Device Easy
emLoad allows straightforward updates of embedded applications either with a USB stick, with an SD card or via USB-connection to a PC - or else via a serial connection (type RS-232, RS-485).
Efficient File Transfer for IoT Devices
emFTP is the ideal software solution to exchange files using the FTP protocol. Edge devices can easily transfer their collected data to a server or provide them as a service via FTP.
- Multiple device driver support. You can use different device drivers with emFile, which allows you to access different types of hardware with the file system at the same time
- Cache support. Improves the performance of the file system by keeping the last recently used sectors in RAM
- Works with any operating system to accomplish a thread-safe environment
Reliable Data Storage for Your IoT Device
emFile is a file system for embedded applications which can be used on any media for which you can provide basic hardware access functions.
The Heart of Every IoT Project
embOS is a priority-controlled real time operating system, designed to be used as a foundation for the development of embedded real-time applications. It is a zero interrupt latency, high-performance RTOS that has been optimized for minimum memory consumption in both RAM and ROM, as well as high speed and versatility.
Add Industry Standard Protocols to Your IoT Device
emModbus is SEGGER's implementation of the Modbus protocol. It supports communication via UART (ASCII, RTU) and Ethernet (Modbus/TCP and Modbus/UDP) and is capable to communicate with any Modbus compliant device.
Boost Your Connectivity
emUSB-Device is a high performance USB device software specifically designed for embedded systems. The software is written in ANSI C and can run on any platform. A variety of target drivers are already available.
Enhance Your IoT Device Through the Use of USB Host
emUSB-Host implements full USB host functionality, including external hub support, and optionally provides device class drivers. It enables developers to easily add USB host functionality to embedded systems.
Visualize Your Ideas
emWin is designed to provide an efficient, processor- and LCD controller-independent graphical user interface (GUI) for any application that operates with a graphical LCD.
Easy and Secure Data Exchange via Dropbox
The SEGGER Dropbox client is a software library that allows you to easily gain access to your Dropbox account using emSSL and any TCP/IP stack that supports sockets. This allows you to share files between different devices or to publish files like updates to your devices using a Dropbox account.
Software Platform for Embedded Systems and IoT Devices
The emPack source software package includes our core components (RTOS, GUI, File System) and communication software (TCP/IP, USB-Device, USB-Host, Modbus), as well as our IoT Toolkit, Security and Compression modules serving all software needs of modern embedded industrial and IoT devices. Each component is supplied as libraries for any Cortex-M microprocessor and can easily be enabled in your new projects.