WM2000

Hardware devices covered by this platform

  • WM2000 programmable wireless IIoT module

Memory space and key info

RAM

59,392 bytes for application variables and data

Flash

1,728,512 bytes for storing up to two compiled Tibbo BASIC/C application binaries

4,194,304 bytes for data storage (dedicated flash disk memory)

EEPROM

2,048 bytes for application data

TiOS Firmware Version

Date

Notes

V4.01.02 (download)

17JUN2021

  • RTS/CTS performance improvements
  • Network throughput performance improvements
  • Wiegand timings corrected
  • Improved pin and PWM initialization
  • Added HMAC256 functionality
  • Fixed UDP socket replies using broadcast under some circumstances

V4.00.00 (download)

25DEC2020

  • Initial release

Platform type

32-bit platform

Clock frequency (CLOCK) and clock control

Frequency is fixed at 192MHz

Available network interfaces

Wi-Fi (wln.), PPP (ppp.)1

GPIO type

Unidirectional2

UART limitations

Maximum practical baud rate of ~921,620

Serial port FIFOs

512 bytes for TX, 512 bytes for RX

Serial port line configuration

Depends on the serial port mode

Serial port interrupts and io.intenabled

Interdependent

RTS/CTS remapping

Supported

ADC

Three channels, 12 bits (7 bits effective)

Pulse-width Modulation (PWM)

Nine channels with a common 2MHz core clock

30Hz to 20KHz frequency range

frequency and duty cycle resolution is frequency-dependent

GA1000 support

N/A

WA2000 support

N/A

GA1000 and WA2000 lines remapping

N/A

Beep frequency

beep.frequency defines the frequency used, from 30Hz to 20KHz

Special configuration section of the EEPROM

28 bytes for MAC and device password storage

Device serial number

128 bytes: 64 OTP bytes + 64 fixed bytes

Flash memory configuration

Dedicated

Self-upgrades for Tibbo BASIC/C applications

Supported through fd.copyfirmware, fd.copyfirmwarelzo, fd.copyfirmwarefromfile, and fd.copyfirmwarefromfilelzo methods3

Status LEDs (LED Control Lines)

Status Green (SG) LED and control line

Status Red (SR) LED and control line

Status Yellow (SY) LED and control line

Debug communications

Serial

Wireless / UDP Broadcast transport

Wireless / WinPCap transport

  1. The sock.allowedinterfaces property refers to the Wi-Fi interface as "WLN" and PPP as "PPP." The sock.targetinterface and sock.currentinterface properties rely on the enum pl_sock_interfaces, whose members differ depending on the platform.
  2. Surrounding hardware may dictate which GPIO lines must be used as inputs or outputs.
  3. All files in the WM2000's flash storage must be 4KB-aligned. For more information, please see Platform Objects.

Supported objects, variable types, and functions

  • Objects:
    • adc — provides access to three ADC channels
    • beep — generates buzzer patterns1
    • bt — in charge of the BLE (Bluetooth Low-Energy) interface1
    • button — monitors the MD (setup) line
    • fd — manages the flash memory file system and direct sector access1
    • io — handles I/O lines, ports, and interrupts
    • kp — works with matrix and binary keypads
    • pat — "plays" patterns on up to five LED pairs
    • ppp — accesses the Internet over a serial modem (GPRS, etc.)
    • pwm — handles pulse-width modulation settings for I/O1  
    • romfile — facilitates access to resource files (fixed data)
    • rtc — keeps track of date and time
    • ser — controls serial ports (UART, Wiegand, clock/data modes)1
    • sock — socket comms (up to 32 UDP, TCP, and HTTP sessions) and support for TLS2
    • ssi — controls serial synchronous interface channels (SPI, I²C...)
    • stor — provides access to the EEPROM
    • sys — in charge of general device functionality1
    • wln — handles the Wi-Fi interface1
  1. These platform objects are either new or have new features (as compared to the EM2000). Please see Updated Platform Objects for more information.
  2. TLS1.2 with RSA-2048 cryptosystem, supported on a single outgoing TCP connection.
  • 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, string, plus user-defined arrays and structures

Platform-specific constants

You can find them here.