WM2000 Programmable Wireless IIoT Module

An isometric render of the WM2000.

Introduction

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 (TIDE) and a dedicated programming platform that covers all of the module's hardware facilities.


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 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.


Hardware features


Notes:

  1. Although two independent Tibbo BASIC/C compiled binaries (apps) can be stored in the WM2000's flash memory, only one can run at a time.
  2. Several of the WM2000's configuration parameters are stored in the DCB, which is accessible via the BLE console. Our BLE Terminal web app leverages the Web Bluetooth API (compatible with the Chrome, Chromium, Edge, and Opera web browsers) to connect to the WM2000's BLE console. Configuration parameters can also be read and set through Tibbo BASIC/C code.
  3. TLS is supported on a single outgoing TCP connection.
  4. To enable Wi-Fi debugging, you must turn on autoconnect — automatic association with a designated Wi-Fi network. This can be accomplished via the BLE console, the companion app, or in code.
  5. Only one serial port is available to Tibbo BASIC/C apps when in serial debug mode. If you need to use both serial ports, use Wi-Fi debugging instead. The debug mode can be selected via the M/L console or the companion app.
  6. For normal module operation, RTC power must be connected at all times. If there's no backup battery, connect the backup power input to VCC. The backup power input draws power even when the module is active.
  7. The power draw on the backup power input can vary up to ±15% depending on the configuration of the attached hardware.

Programming features

The WM2000 runs Tibbo OS (TiOS). The following is a list of the features supported by its programming platform:


Notes:

  1. These platform objects are either new or have new features (as compared to the EM2000).
  2. TLS1.2 with RSA-2048 cryptosystem, supported on a single outgoing TCP connection.

WM2000 Programmable Wireless IIoT Module

Introduction

Dual Tibbo BASIC/C apps

Simplified Wi-Fi connectivity

Hardware features

Programming features