SMX RTOS is IoT Ready
SMX has what you need to connect to the IoT.
Wireless communication is fundamental for IoT. Wi-Fi is popular and offers high throughput and long range (250m), making connection convenient even when devices are not in immediate proximity to one another. We were among the first developers of an embedded Wi-Fi 802.11 stack, releasing smxWiFi in mid-2008. It supports 802.11 a/b/g/i/n and has drivers for most of the MediaTek/Ralink USB chipsets. Any combination of drivers may be used in the system, and smxWiFi will automatically select the correct one for the Wi-Fi dongle plugged in. Due to our early lead, we have since added support for other protocols:
Wi-Fi Peer-to-Peer (P2P) is the basis of the Wi-Fi Alliance certification program called Wi-Fi Direct™. It allows easy, direct connection among Wi-Fi devices, anywhere, without need for an Access Point.
Wi-Fi Simple Configuration (WSC) is the basis of the Wi-Fi Alliance certification program called Wi-Fi Protected Setup™ (WPS). This simplifies connection to an Acess Point or other device and supports PBC and PIN.
SoftAP support is also offered by smxWiFi to allow your device to provide simple Access Point capability.
USB Wi-Fi dongles offer numerous advantages over other approaches: ultra-low cost; can be plugged into most evaluation boards to allow developing wireless capabilities before custom hardware is ready; interchangeable since available from many different vendors; permit upgrading to newer technology without board redesign; use TCP/IP directly vs. a proprietary protocol for a stand-alone chip solution to provide more flexibility and better performance. smxUSBH supports Wi-Fi dongles, and it is a leading USB host stack. It supports many other device types needed in IoT designs, such as: 3G modem, HID, mass storage, printer, RFID, serial, audio, video, and more.
IPv6 is a key requirement of IoT. smxNS6 is a dual IPv4/IPv6 stack that has passed IPv6 Ready testing. It supports IPv6 features such as Neighbor Discovery and Stateless Address Autoconfiguration. A dual stack allows a lower-cost IPv4 entry, with the capability to migrate to IPv6, when needed. Both stacks support Multicast DNS (mDNS), which allows a host on the network to discover services provided by other hosts. It supports zero-configuration (zeroconf) IP networking with Apple Bonjour and the Linux/BSD Avahi package. A rich set of other protocols also useful in IoT projects is offered such as: SNMPv3, SNTP, and web server. Drivers are available for the on-chip Ethernet controllers on many of the latest SoCs.
Security is essential for IoT. We offer SSL, SSH, and SNMPv3 for our TCP/IP stacks, WPA2 and EAP for Wi-Fi, and a secure bootloader for field updates. Personal and Enterprise security are supported for Wi-Fi. The bootloader supports image decryption during installation or even during the bootloading stage to defend against hacking and reverse engineering, and to control optional software feature distribution.
Communication is the essence of IoT, and it works better with strong multitasking support. smx is a hard real-time, small, high-performance RTOS kernel with a long list of features that are good for IoT designs: no-copy message passing, one-shot tasks, ultra-fast heap, and link service routines, are just a few of many. Dual-language support permits writing high-level code in C++ and time-critical code in C. A fast heap provides good C++ performance. The smx++ class library is easy to use for C++ programmers. See the smx Special Features whitepaper for discussion of these features and others.