EM1000, EM1000W, and EM1000N Platforms
Hardware Devices Covered by This Platform
- EM1000 programmable IoT module (optionally, with a GA1000 or WA2000 add-on module)
- DS10XX programmable industrial controllers (now obsolete)
- Other devices incorporating the EM1000 module
This section covers three separate platforms:
- EM1000 — does not support any wireless modules
- EM1000W — supports the GA1000 Wi-Fi add-on module
- EM1000N — provides limited support for the WA2000 add-on module (Wi-Fi only; BLE is not supported)
Memory Space and Key Info
RAM |
22,271 bytes for application variables and data |
Flash |
983,040 bytes for application and data storage (shared flash memory)* |
EEPROM |
2,040 bytes for application data |
*Some earlier devices had only 458,752 bytes of flash memory available
16-bit platform |
|
Clock frequency (CLOCK) and clock control |
PLL on: 88.4736Mhz PLL off: 11.0592Mhz(1) |
Available network interfaces |
EM1000: Ethernet (net.), PPP (ppp.), PPPoE (pppoe.)(2) EM1000W: Ethernet (net.), Wi-Fi (wln.) , PPP (ppp.), PPPoE (pppoe.)(2) |
Unidirectional(3) |
|
UART limitations |
Maximum practical baudrate of ~921,600bps |
16 bytes for TX, 16 bytes for RX |
|
Depends on the serial port mode |
|
Independent |
|
Supported(4) |
|
ADC |
NO |
Pulse-width Modulation (PWM) |
NO |
GA1000 support |
YES |
WA2000 support |
Supports Wi-Fi, BLE is not supported |
Supported(5) |
|
beep.divider calculation |
beep.divider = CLOCK / (2 * desired_frq) |
Recommended buzzer frequency divider |
Depends on the attached buzzer |
Type selection and line remapping supported |
|
28 bytes for MAC and device password storage |
|
128 bytes: 64 OTP bytes + 64 fixed bytes |
|
Shared |
|
Self-upgrades for Tibbo BASIC/C applications |
Supported through the fd.copyfirmware, fd.copyfirmwarelzo, and fd.copyfirmwarefromfile methods |
Green status (SG) LED control line Red status (SR) LED control line Yellow Ethernet status (EY) LED control line Green Ethernet status (EG) LED control line |
|
Ethernet / UDP Broadcast transport Ethernet / WinPCap transport |
1. Default PLL state after the external reset depends on the PM pin of the EM1000(W).
2. The sock.allowedinterfaces property refers to the Ethernet interface as "NET," Wi-Fi as "WLN," PPP as "PPP," and PPPoE as "PPPOE." The sock.targetinterface and sock.currentinterface properties rely on the pl_sock_interfaces enum, whose members differ depending on the platform.
3. Surrounding hardware may dictate which GPIO lines must be used as inputs and which as outputs.
4. Default CTS/RTS mapping is different for each serial port:
RTS |
CTS |
|
Port 1 |
||
Port 2 |
||
Port 3 |
||
Port 4 |
5. Mapping of GA1000 and WA2000 control lines is fully flexible on the EM1000W. However, if the GA1000 or WA2000 module is installed on top of the EM1000, then the following mapping must be applied:
CS |
|
CLK |
|
DI |
|
DO |
|
RST |
6. Older EM1000 and EM1000W devices did not contain the serial number. To find out if your EM1000(W) has the serial number onboard, try to read this serial number with the sys.serialnum R/O property. If this property returns an empty string, then the serial number is not present. This property returns all 128 bytes of the serial number. The first 64 bytes are one-time programmable (OTP) with the sys.setserialnum method.
Supported Objects, Variable Types, and Functions
- beep — generates buzzer patterns
- button — monitors the MD line (setup button)
- fd — manages flash memory file system and direct sector access
- io — handles I/O lines, ports, and interrupts
- kp — scans keypads of matrix and "binary" types
- lcd — controls graphical display panels (several types supported)
- net — controls the Ethernet interface
- pat — "plays" patterns on up to five LED pairs
- ppp — provides access to the Internet over a serial modem (GPRS, POTS, etc.)
- pppoe — provides access to the Internet over an ADSL modem
- romfile — facilitates access to resource files (fixed data)
- rtc — keeps track of date and time
- ser — in charge of serial ports (UART, Wiegand, and clock/data modes)
- sock — socket communications (up to 16 UDP, TCP, and HTTP sessions)
- ssi — implements up to four serial synchronous interface (SSI) channels, supports SPI, I²C, clock/data, etc.
- stor — provides access to the EEPROM
- sys — in charge of general device functionality
- wln — handles the Wi-Fi interface (only available on the EM1000W and EM1000N platforms, requires the GA1000 or WA2000, respectively)
These platforms support the standard set of variable types and functions (a.k.a. "syscalls").
Platform-Specific Constants
- Enum pl_redir — The list of constants that define buffer redirection (shorting) for this platform
- Enum pl_io_num — The list of constants that define available I/O lines
- Enum pl_io_port_num — The list of constants that define available 8-bit I/O ports
- Enum pl_int_num — The list of constants that define available interrupt lines
- Enum pl_sock_interfaces — The list of available network interfaces