General Overview
WiConnect is Now Called ZentriOS
See ZentriOS Versions.
What is WiConnect?
WiConnect is an embedded serial Wi-Fi application that runs on a connectivity device. WiConnect provides a command-driven interface to communications and other functions. A WiConnect connectivity device provides a host microprocessor with a secure wireless connection to any device that is part of the universal Internet of Things. WiConnect connectivity devices include wireless modules provided by ACKme Networks.
For our Bluetooth Low Energy API, see TruConnect.
For a quick start guide to using a WiConnect evaluation board, see Getting Started.
A host MCU communicates with WiConnect via a UART or SPI serial interface.
A mobile or desktop app communicates with WiConnect via the HTTP Server RESTful API / Websockets or by the local or remote terminal interface.
The local or remote host sends commands to control the operation of the application and to exchange data with other devices on the network.
WiConnect provides a powerful set of commands to enable host control, together with a large number of variables to enable host configuration. Beyond commands and variables, WiConnect provides a rich feature set for wireless, network, peripheral and file system command and control.
Features include:
- Interfaces: serial, soft AP and WLAN Client
- Servers: TCP/TLS, UDP, HTTP(S), DHCP
- Clients: TCP/TLS, UDP, NTP, SMTP, DHCP, DNS
- Network Discovery with support for mDNS, LLMNR & Netbios
- GPIOs for control, indication and monitoring
- Remote terminal access
- HTTP Server with RESTful API and Websockets
- OTA (over the air) Update to remotely manage firmware via the wireless interface
- Scripts and configuration files
- Automated broadcast and streaming of data
- Local caching of sensor data
- Support for cloud services - goHACK.me and sensors.com
- Support for large file storage in bulk serial flash
All WiConnect commands can be issued manually (human command mode) or under host control (machine command mode). Human command mode is typically used during evaluation and development of a WiConnect application. Machine command mode is used during production.
For human command mode, the interfaces are a WiConnect Terminal, the WiConnect Web App, or a remote terminal.
Getting Started
To start using your WiConnect module in human command mode, see Getting Started.
WiConnect Web App
The WiConnect Web App provides complete monitoring and control of your ACKme module using a web browser.
See WiConnect Web App.
Serial Interface
WiConnect provides one of the easiest to use and most flexible serial Wi-Fi networking interfaces in the industry. The WiConnect serial interface provides support for multiple serial buses including multi-UART and serial-SPI, three different serial communications modes including command mode, stream mode and packet mode, and is easily configured for use by humans and machines alike.
See Serial Interface.
Wi-Fi
WiConnect provides an easy-to-use serial API allowing you to focus your efforts on application development, rather than the time-consuming complexity and interoperability issues associated with the development of a full-featured secure wireless network stack.
Two Wi-Fi interfaces are supported, including a Wi-Fi client (wlan) and Wi-Fi soft access point (softAP) interface. Each interface may be run independently or concurrently to suit various application needs.
See Wi-Fi Interface.
Networking and Security
WiConnect includes a full IPv4 networking stack and SSL/TLS security suite that supports a range of popular networking protocols including TCP, UDP, DNS, DHCP. Additional network application libraries are provided for native HTTP/S and secure cloud access using the goHACK.me API.
Peripherals
Various peripheral APIs are available to provide access to general purpose IOs (GPIOs), analog functions such as analog-digital and digital-analog converters, and timers including a real time clock. Special system and network functions can be assigned to GPIOs to enable handy features including:
- automatic LED status indicators to show the state of Wi-Fi and network connections;
- an indication of when one or more network clients are connected to a local WiConnect server; and
- the ability to control the connection state of a client or server.
See Peripherals.
File System
Most connected applications require the ability to store configuration information or cache local data. WiConnect provides a reliable read/write filesystem and on-board flash storage to satisfy application storage requirements. With just a few simple commands, WiConnect provides your application with complete access to local and network connected storage.
See File System.
Memory
For management of ACKme module memory, see Memory.
Configuration and Setup
Several options are available to setup a module running WiConnect. The most common option, and also the most convenient when prototyping is to use a command line and serial interface such as a UART. A PC terminal can be quickly connected to a WiConnect evaluation board, and within 60 seconds it is possible to be connected to a Wi-Fi network and downloading HTTP webpages or connecting to a remote TCP server.
Other methods for configuration, setup and Wi-Fi provisioning include:
- a softAP and webserver interface, or use of WPS push-button PBC or PIN for Wi-Fi provisioning;
- an (optionally) password-secured remote terminal that provides command line convenience over one of the WiConnect wireless network interfaces; and
- automatic execution of a custom configuration script on boot-up
System Functions
System functions include:
- Configuring WiConnect Command Mode and Response
- Power management
- Monitoring System State
- Controlling the Boot Application
- System Identification and Version
See System Functions.
Upgrade and Recovery
WiConnect is part of a larger sophisticated application framework installed on all ACKme modules. The framework provides a hardened bootloader, read/write file system, safemode recovery mechanism, and over-the-air (OTA) upgrade capability.
ACKme manages a secure on-line OTA server that offers each ACKme module with the ability to securely upgrade individual files, applications or an entire firmware bundle. In the rare event that WiConnect fails to regularly execute correctly, the bootloader switches the boot application to safe mode. The safe mode application provides the host with the ability to upgrade the firmware, switch back to WiConnect or even factory reset the module.
See Upgrade and Recovery.
goHACK.me
The goHACK.me API provided by WiConnect enables monitoring and control of your ACKme device. Using goHACK.me commands and goHACK.me variables, you can setup your ACKme device and automatically signup for an account, as well as synchronize data, control and messages with the goHACK.me cloud service.
See goHACK.me.