EM2001 BASIC/C-Programmable IoT Board
Introduction
The EM2001 is Tibbo's most powerful and versatile Tibbo BASIC/C-programmable Ethernet board. The EM2001 is a close relative of the EM2000. The two devices have the same feature set, including a 10/100BaseT Ethernet port, four serial ports, onboard flash disk, EEPROM, and an RTC with optional backup supercapacitor. Like the EM2000, the EM2001 can control a WA2000 Wi-Fi/BLE add-on module, as well as an external LCD, keypad, buzzer, and many other peripheral components.
Unlike the EM2000, the EM2001 is a self-sufficient board: it has a 12V-to-3.3V switching power regulator, RJ45 connector with magnetics, three LEDs, and an MD button. Thus, the EM2001 does not require a host board to plug into — it is the host board. As such, the EM2001 is equally suited to low-volume production devices and hobbyist projects alike.
The EM2001 is fully supported by Tibbo IDE (TIDE) and shares the EM2000 programming platform.
EM2001 Advantages Over the EM1001 Board
The EM2001 is a high-performance upgrade to our EM1001. Here is small list of important improvements:
- 32-bit architecture (vs. 16-bit architecture of the EM1001).
- Five to 80 times better performance, depending on the calculations and variable types.
- Seven times faster GPIO manipulation.
- Three times larger available user SRAM (66KB vs. 22KB).
- 1.5-3.0 times faster graphics.
- 2.2 times lower power consumption (100mA vs. 220mA).
- Two 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 EM1001).
- Four-channel ADC.
- The ability to update TiOS firmware and compiled Tibbo BASIC/C app over-the-air (this requires the WA2000 add-on module).
Hardware Features
- 32-bit architecture
- 10/100BaseT auto-MDIX Ethernet port with RJ45/magnetics
- Optional Wi-Fi interface (requires the WA2000)
- Optional BLE interface (requires the WA2000)
- Can control a GPRS modem(1) (such as the SIM900).
- Four high-speed serial ports (CMOS-level):
- Baudrates of up to 460,800bps
- None(2)/even/odd/mark/space parity modes
- 7(2)/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; eight lines can work as interrupts
- Square wave output (can be used for buzzer(1) control)
- Four-channel ADC
- Four synchronous serial ports with SPI and I²C modes
- Supports a 320x240 TFT LCD(1)
- Supports matrix and binary output keypads(1)
- RTC with backup battery
- 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.
- 2,048-byte EEPROM for data storage
- Three status LEDs onboard:
- Green and red main status LEDs
- Yellow Ethernet link LED
- Two control lines for external green and red main status LEDs
- Software-controlled PLL allows selecting full, medium, or low speed
- Reliable power-on/ brown-out reset circuit
- Powering options:
- Through the switching regulator, 12VDC nominal (8V ~ 20V)
- Using regulated 3.3V power (the regulator is bypassed)
- The regulator can provide up to 1.3A @ 3.3V to external devices
- Power: 100mA @ 3.3V (100BaseT mode, full speed)
- Dimensions (LxWxH): 75 x 36 x 17.5mm(3)
- Operating temperature range: –40°C to +80°C
- Firmware is upgradeable through:
- The serial port
- Ethernet LAN
- Over-the-air (requires the WA2000)
- Tibbo BASIC/C application can be uploaded and debugged through the Ethernet LAN (no additional debugging hardware is required)
- CE and FCC-certified
- Must be connected externally.
- The EM2001 does not support the combination of 7 bits/character mode and the "none" parity mode.
- Not including RJ45, power jack, WA2000.
Programming Features
The EM2001 runs Tibbo OS (TiOS). The following is a list of the features supported by its programming 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, I²C...)
- 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