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.