TPP3W and TPP3N Platforms
Hardware Devices Covered by This Platform
- Size 3 Tibbo Project PCB (TPP3)
- Tibbo Project System (TPS) devices based on this board
This section covers two separate platforms:
- TPP3W — supports the GA1000 Wi-Fi add-on
- TPP3N — provides limited support for the WA2000 add-on (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 |
16-bit platform |
|
Clock frequency (CLOCK) and clock control |
PLL on: 88.4736Mhz PLL off: 11.0592Mhz |
Available network interfaces |
Ethernet (net.), Wi-Fi (wln.) , PPP (ppp.), PPPoE (pppoe.)(1) |
Unidirectional(2) |
|
UART limitations |
Max practical baudrate ~921,600bps |
16 bytes for TX, 16 bytes for RX |
|
Depends on the serial port mode |
|
Interdependent |
|
Supported(3) |
|
ADC |
Available through Tibbit modules |
Pulse-width modulation (PWM) |
Available through Tibbit modules |
GA1000 support |
YES |
WA2000 support |
Supports Wi-Fi, BLE is not supported |
Supported(4) |
|
beep.divider calculation |
beep.divider = CLOCK / (2 * desired_frq) |
Recommended buzzer frequency divider |
2,048Hz, beep.divider = 21600 (with PLL ON) |
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 the Tibbo-BASIC/C app. |
Supported through fd.copyfirmware, fd.copyfirmwarelzo, and fd.copyfirmwarefromfile methods |
Green status (SG) LED Red status (SR) LED Yellow Ethernet status (EY) LED An LED bar consisting of five blue LEDs |
|
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." The sock.targetinterface and sock.currentinterface properties rely on the pl_sock_interfaces enum, whose members differ depending on the platform.
2. Surrounding board hardware and installed Tibbits dictate which GPIO lines must be used as inputs and which as outputs.
3. Default CTS/RTS mapping is different for each serial port:
RTS |
CTS |
|
Port 1 |
||
Port 2 |
||
Port 3 |
||
Port 4 |
4. Although the platform itself supports remapping, actual "wires" connecting the system to the GA1000 or WA2000 are fixed and your mapping should reflect this:
CS |
|
CLK |
|
DI |
|
DO |
|
RST |
Supported Objects, Variable Types, and Functions
- beep — generates buzzer patterns using the onboard buzzer
- button — monitors the onboard setup (MD) 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(1)
- net — controls the Ethernet interface
- pat — "plays" patterns on up to five LED pairs
- ppp — provides access to the Internet over a serial modem (4G, POTS, etc.)(2)
- 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, I2C, clock/data, etc.
- stor — provides access to the EEPROM
- sys — in charge of general device functionality
- wln — handles the Wi-Fi interface (requires a GA1000 or WA2000 add-on module to be plugged into the TPP2 G2 board)
- The kp. object can be configured to communicate with an external keypad connected to the TPP3 via Tibbits. Only one keypad can be serviced at a time.
- This may be an external modem connected to the TPP3(G2), a 4G (LTE) Tibbit, or a Cat-M1/NB-IoT Tibbit plugged into the board.
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_int_num — The list of constants that define available interrupt lines
- enum pl_sock_interfaces — The list of available network interfaces