EM2000 BASIC/C-programmable IoT Module

em2000

Introduction

The EM2000 is Tibbo's fastest, as well as the most powerful and versatile BASIC/C-programmable IoT module. The module is a high-performance upgrade to our popular EM1000 device.

The module's hardware features include 100/10BaseT Ethernet port, four serial ports supporting UART, Wiegand, and clock/data modes, four I2C/SPI ports, onboard flash, EEPROM, RTC, and up to 56 I/O lines.

The EM2000 is also excellent for prototyping your projects — it has the standard pin pitch of 2.54mm (0.1").

The EM2000 is fully supported by Tibbo IDE software and a dedicated EM2000 platform that covers all hardware facilities of the module (see TIDE, TiOS, Tibbo BASIC, and Tibbo C Manual). For convenient testing and evaluation Tibbo offers EM1000TEV and EM1000EV development systems (they are compatible with the EM2000 module). The EM2000 can also support Wi-Fi and GPRS communications.

EM2000 advantages over the EM1000 module

The EM2000 is a high-performance upgrade to our EM1000 device. Here is small list of important improvements:

  • 32-bit architecture (vs. 16-bit architecture of the EM1000).

  • 5 to 80 times better performance, depending on the calculations and variable types.

  • 7 times faster GPIO manipulation.

  • 3 times larger available user SRAM (66KB vs. 22KB).

  • 1.5-3.0 times faster graphics.

  • 2.2 times lower power consumption (100mA vs. 220mA).

  • 2 times larger flash memory (1MB for TiOS/code + 1MB for the file system vs. 1MB total for TiOS, code, and file system).

  • 56 I/O lines (vs. 54 lines on the EM1000).

  • 4-channel ADC.

  • The ability to update TiOS firmware and compiled Tibbo BASIC/C app over-the-air (this requires the WA2000 and an iOS or Android device).

Hardware features

  • 32-bit architecture.

  • Powered by Tibbo OS (TiOS).

  • 10/100BaseT auto-MDIX Ethernet port (automatic detection of "straight" and "cross" cables). Standard Ethernet magnetics are NOT integrated into the module.

  • Optional Wi-Fi interface (requires the WA2000 add-on module to be connected).

  • Optional BLE interface (requires the WA2000 add-on module).

  • Can control a GPRS modem* (such as the SIM900).

  • Four high-speed serial ports (CMOS-level):

    • Baudrates of up to 460,800bps;
  • None**/even/odd/mark/space parity modes;
  • 7**/8 bits/character;
  • Full-duplex mode with RTS/CTS and XON/XOFF flow control;
  • Half-duplex mode with direction control;
  • Encoding and decoding of Wiegand and clock/data streams.
  • 56 general-purpose I/O lines; 8 lines can work as interrupts.

  • Square wave output (can be used for buzzer* control).

  • 4-channel ADC.

  • 4 synchronous serial ports with SPI and I2C modes.

  • Supports a 320x240 TFT LCD*.

  • Supports matrix and binary output keypads*.

  • RTC with dedicated backup power input.

  • 66KB SRAM for Tibbo BASIC/C variables and data.

  • 1MB flash for TiOS and application code.

  • Additional 1MB flash for the hardened fault-tolerant file system.

  • 2048-byte EEPROM for data storage.

  • Three status LEDs onboard:

    • Green and red main status LEDs;
  • Yellow Ethernet link LED.
  • Four control lines for external status LEDs:

    • Two control lines for green and red main status LEDs;
  • Two control lines for Ethernet "link" and "100Mb" LEDs.
  • Software-controlled PLL allows selecting full, medium, or low speed.

  • Reliable power-on/ brown-out reset circuit.

  • Power: 100mA @ 3.3V (100BaseT mode, full speed).

  • Dimensions (LxWxH): 38.4 x 28.4 x 5.5mm.

  • Prototyping-friendly 2.54mm (100mil) pin pitch.

  • Operating temperature range: -40 ~ +80 C.

  • Firmware and compiled Tibbo BASIC/C app can be updated through:

    • The serial port;

    • Ethernet LAN; or

    • Over-the-air (this requires the WA2000 and an iOS or Android device).

  • Tibbo BASIC/C application can be debugged through the Ethernet LAN (no additional debugging hardware is required).

  • CE- and FCC-certified.

* Must be connected externally.

** The EM2000 does not support the combination of 7 bits/character mode and the "none" parity mode.

Programming features

  • Platform objects:

  • adc — provides access to four ADC channels.

  • beep — generates buzzer patterns.
  • bt — in charge of the BLE (Bluetooth Low-Energy) interface.
  • button — monitors the MD (setup) line.
  • fd — manages the flash memory file system and direct sector access.
  • io — handles I/O lines, ports, and interrupts.
  • kp — works with matrix and binary keypads.
  • lcd — controls the LCD.
  • net — controls the Ethernet port.
  • pat — "plays" patterns on up to five LED pairs.
  • ppp — accesses the Internet over a serial modem (GPRS, etc.).
  • pppoe — accesses the Internet over an ADSL modem.
  • romfile — facilitates access to resource files (fixed data).
  • rtc — keeps track of date and time.
  • ser — controls serial ports (UART, Wiegand, clock/data modes).
  • sock — socket comms (up to 32 UDP, TCP, and HTTP sessions).
  • ssi — controls serial synchronous interface channels (SPI, I2C...).
  • stor — provides access to the EEPROM.
  • sys — in charge of general device functionality.
  • wln — handles the Wi-Fi interface.
  • Variable Types: Byte, char, integer (word), short, dword, long, real, string, plus user-defined arrays and structures.

  • Function groups: String functions, trigonometric functions, date/time conversion functions, encryption/hash calculation functions, and more.