Hardware devices covered by this platform

  • EM500 programmable IoT module (optionally, with GA1000 Wi-Fi add-on).
  • Other devices incorporating the EM500 module.

Memory space and key info


17,920 bytes for application variables and data


327,680 bytes for application storage, data cannot be stored in this memory


200 bytes for application data

TiOS firmware version


Platform type

16-bit platform

Clock frequency (CLOCK) and clock control

Frequency is fixed at 80MHz

Available network interfaces

Ethernet (net.), Wi-Fi (wln.) , PPP (ppp.), PPPoE (pppoe.)(1)

GPIO type


UART limitations

Max practical baudrate ~115200

Serial port FIFOs

16 byte for TX, 16 bytes for RX

Serial port line configuration

N/A (as all GPIO lines are bidirectional)

Serial port interrupts and io.intenabled


RTS/CTS remapping

Not supported(3)



Pulse-width Modulation (PWM)


GA1000 support


WA2000 support


GA1000 lines remapping

Not supported(4)

Beep.divider calculation

N/A (buzzer not supported)

Recommended buzzer frequency divider

N/A (buzzer not supported)

Display type selection and line remapping

Display not supported

Special configuration section of the EEPROM

28 bytes for MAC and device password storage

Device serial number

4 bytes, the number can't be changed

Flash memory configuration

Dedicated memory for firmware/application

Data cannot be stored in this memory

Self-upgrades for the Tibbo-BASIC/C app.

Not supported

Status LEDs (LED Control Lines)

Green status (SG) LED control line

Red status (SR) LED control line

Patented Ethernet link status indication mechanism: LED brightness indicates link status

Debug communications

Ethernet / UDP Broadcast transport

Ethernet /WinPCap transport


  1. The sock.allowedinterfaces property refers to the Ethernet interface as "NET", Wi-Fi — as "WLN", PPP — as "PPP", and PPPoE — as "PPPOE". Sock.targetinterface and sock.currentinterface properties rely on the pl_sock_interfaces enum, whose members differ depending on the platform.
  2. Surrounding hardware may dictate which GPIO lines must be used as inputs and which — as outputs.
  3. CTS is permanently mapped to 0- PL_INT_NUM_0 (0- PL_IO_NUM_0_INT0). RTS is permanently mapped to 2- PL_IO_NUM_2.
  4. Connect the GA1000 add-on module as follows (also see schematic diagram C in Connecting GA1000 and WA2000):


7- PL_IO_NUM_7


6- PL_IO_NUM_6


5- PL_IO_NUM_5 (yes, DI and DO lines are on the same GPIO line)



Choose any suitable GPIO or use NAND gates to generate reset

Supported Objects, variable types, and functions

  • Sock — socket communications (up to 16 UDP, TCP, and HTTP sessions);
  • Net — controls the Ethernet port;
  • Wln — handles the Wi-Fi interface (requires GA1000 add-on module);
  • Ser — in charge of the serial port (UART, Wiegand, and clock/data modes);
  • Io — handles I/O lines, ports, and interrupts;
  • Fd* — manages flash memory file system and direct sector access (requires an externally connected flash IC);
  • Stor — provides access to the EEPROM;
  • Romfile — facilitates access to resource files (fixed data);
  • Pppoe — provides access to the Internet over an ADSL modem;
  • Ppp — provides access to the Internet over a serial modem (GPRS, POTS, etc.);
  • Pat — "plays" patterns on a pair of LEDs;
  • Button — monitors the MD line (setup button);
  • Sys — in charge of general device functionality.

This platform supports the standard set of variable types and functions (a.k.a. "syscalls") except aes128enc and aes128dec. These AES128 functions are not present on the EM500W platform.

Platform-specific constants

You can find them here.