WM2000 Programmable Wireless IIoT Module
The WM2000 is the first programmable wireless IIoT module offered by Tibbo. The device incorporates Wi-Fi and Bluetooth Low Energy (BLE) interfaces that introduce several new features, such as Wi-Fi auto-connects (automatic association), wireless debugging, over-the-air (OTA) updates, and Transport Layer Security (TLS).
The WM2000's hardware incorporates two high-speed serial ports. It also features software I²C/SPI ports, onboard flash and EEPROM, a real-time clock, and ten GPIO lines, two of which work as external interrupts. Nine lines can be configured to provide Pulse-width Modulation (PWM) output.
The WM2000 is fully supported by Tibbo IDE software and a dedicated WM2000 platform that covers all of the module's hardware facilities (see the TIDE, TiOS, Tibbo BASIC, and Tibbo C Manual).
Dual Tibbo BASIC/C apps
The WM2000 is the first Tibbo device that can store up to two compiled Tibbo BASIC/C binaries — "APP0" and "APP1" (only one can run at any given time).
All our earlier products store a single app that can take up all of the flash space not occupied by the Monitor/Loader (M/L) and TiOS. The WM2000 — which has at least four times the flash storage of any predecessor — allows you to store the second app — APP1 — in the space left over from the M/L, TiOS, and APP0.
A Device Configuration Block (DCB) stored in the flash memory allows you to define which of the two apps runs when the WM2000 is powered up or reboots (there is also an override through the MD line that forces execution of APP0). We have provided a convenient web app called BLE Terminal to interface with a new BLE console, allowing you to access the DCB.
Tibbo BASIC/C applications can work with the DCB through a provided API (new properties and methods of several objects). Specifically, your APP0 and APP1 can read and write DCB data, as well as switch between each other.
Tibbo envisions APP0 playing the role of a "secondary Monitor/Loader" and APP1 implementing the main functionality of WM2000-based products. For example, this "secondary M/L" could provide avenues for configuring the product's settings, updating its code from the cloud, or performing other management functions. To this end, we have developed a "companion" application that ships with the WM2000 as APP0. This companion app allows users to view and alter the device's configuration through the L.U.I.S. smartphone app (available on iOS and Android). As this companion app was written in Tibbo BASIC, our customers can alter its code to suit their needs.
Simplified Wi-Fi connectivity
The WM2000's platform features a significantly improved wln. object (see the TIDE, TiOS, Tibbo BASIC, and Tibbo C Manual) supporting automatic association with a designated wireless network. This makes the WM2000's Wi-Fi interface as easy to use as the Ethernet port on "wired-first" Tibbo devices. Set the target Wi-FI network's SSID and password, enable "autoconnect," and the WM2000 will automatically associate with the network and keep associated when in range! This also enables the wireless debugging of your Tibbo BASIC/C apps.
All parameters related to automatic Wi-Fi association are stored in the DCB and can be configured via the BLE console or through Tibbo BASIC/C code. The companion app that ships with the module also allows for configuration of the Wi-Fi interface.
- Function groups: String functions, trigonometric functions, date/time conversion functions, encryption/hash calculation functions, and more
- Variable Types: Byte, char, integer (word), short, dword, long, real, and string, as well as user-defined arrays and structures