Manual Update History
• The Manual has got a brand new look!
• Documented the EM510W platform .
• Expanded Connecting GA1000 and WA2000 topic.
• Small edits in the Monitor/Loader (M/L) section.
• Small edits in the Monitor/Loader (M/L) section.
• Significantly expanded the Wln Object section with new information pertaining to the WA2000 Wi-Fi/BLE add-on module.
• Documented the Bt Object (supported by the WA2000 device).
• Added WA2000 info to Connecting GA1000 , renamed it into Connecting GA1000 and WA2000 .
• Documented the Monitor/Loader and expanded this section with new information describing firmware upgrades through the BLE (Bluetooth low-energy) interface of WA2000 devices.
• Updated Setup (MD) Button (Line) .
• Updated Status LEDs (LED Control Lines) .
• Updated Platforms (mainly because of the introduction of the WA2000 Wi-Fi/BLE add-on module).
• Documented the SCAP Library .
• Documented the adc. object.
• Added ADC-related data to the Platforms section.
• Documented the EM2000W platform.
• Updated the Upgrading Firmware/Application topic.
• Updated the Fd.copyfirmware Method , Fd.copyfirmwarefromfile Method topics.
• Added Fd.copyfirmwarefromfilelzo Method , Fd.copyfirmwarelzo Method, 16-bit version , Fd.copyfirmwarelzo method, 32-bit version topics.
• On the advice of one of our customers, we added write endurance warning messages and information for our stor. (EEPROM) and fd. (flash) objects.
• Documented our new Simulator software:
▪ Updated Your First Project section: now it also explains how to run the test project on TiOS Simulator.
▪ Added the SIMULATOR platform documentation.
• Added new Common vs. Proprietary Knowledge topic.
• Updated the info on content types and file compression supported by the web server.
• Documented new sock.httprqtype property.
• Updated the keypad (kp.) object's documentation. The documentation really fell behind and was missing many new features that were added to the kp. object over the years.
• Corrected RAM size information posted in platform documentation .
• Documentation for all platforms now contains information on their type (16/32 bit). Renamed the Type Conversion topic into Difference Between 16- and 32-bit Platforms , extended the topic to include the discussion of said difference.
• Documentation for all platforms now contains information on the RX/TX line configuration, and the new explanatory UART GPIO Configuration topic was added.
• Documentation for all platforms now contains information on the use of interrupt lines by the serial port, and the new explanatory Serial Port Interrupts and Io.intenabled topic was added.
• Documented the TPP2-G2 platform.
• Documented the TPP3-G2 platform.
• In connection with the introduction of 32-bit platforms like the EM2000W, the descriptions of these properties and methods were amended: ser.rxbuffrq , ser.txbuffrq , sock.rxbuffrq , sock.txbuffrq , sock.cmdbuffrq , sock.rplbuffrq , sock.varbuffrq , sock.tx2buffrq , ppp.buffrq , wln.buffrq , ser.rxbuffsize , ser.txbuffsize , ser.rxlen , ser.txlen , ser.txfree , ser.newtxlen , sock.rxbuffsize , sock.txbuffsize , sock.rxlen , sock.txlen , sock.txfree , sock.newtxlen , sock.cmdlen , sock.rpllen , sock.rplfree , sock.tx2len , ppp.buffsize , wln.buffsize , sys.totalbuffpages , sys.freebuffpages .
• Documented new properties sock.cmdbuffsize , sock.rplbuffsize , sock.tx2buffsize , sock.varbuffsize , sock.varlen .
• Documented a bug in sock.txlen implementation (it does include uncommitted data after all). TX and RX Buffer Memory Status has also been edited to reflect the actual behavior of the sock.txlen property. Sock.txlen behavior is different from ser.txlen , which only reports the amount of committed data. We decided not to harmonize sock.txlen and ser.txlen. There are applications that rely on the existing behavior, so it's better not to change anything.
• Documented new MQTT library .
• Documented new Locals pane (available from TIDE V5.1).
• Added info about static variables .
• Added new topic: Limitations on the Use of Strings in Unions .
• Added new topic: Bitfield structures .
• Added new topic: Conversion to/from Strings (for Arrays, Structures, Unions ).
• Added new topic:Copying between Arrays, Structures, and Unions .
• Updated the Getting Started topic of the STG (Settings) Library.
This is a major rewrite caused by the release of our C compiler, as well as a substantial rethinking of how this manual should be narrated. As of this release, the following sections have been created anew or rewritten:
• THE REFERENCE/Tibbo BASIC Keywords
• THE REFERENCE/Tibbo C Keywords
• THE REFERENCE/Tibbo IDE (TIDE) Software
The remaining part of the Manual, beginning with THE REFERENCE/Platforms and onwards hasn't been updated yet. The planned update will not be as dramatic as the one that completely redrew the sections listed above. It will mostly deal with the fact that there are now two languages — Tibbo BASIC and Tibbo C.
• Corrections of the TPP2W and TPP3W documentation (primarily in the LED Bar Control topic).
• Documented TPP2W and TPP3W platforms.
• Added information about the Solomon SSD1963 LCD driver .
• Documented preprocessor directive #message .
• Documented .tprusr extension in The Structure of a Project and "Creating, Opening and Saving Projects".
• Documented pane Bookmarks .
• Updated images.
• Edited Getting Started , "For... Next Statement" and RTC Object .
• Documented TIDE Preferences for "Compiler".
• Updated images.
• Edited Using Preprocessor and "If.... Then... Else Statement".
• Updated images.
• Documented TIDE R3.
• Re-edited "Overview", Getting Started , Programming with TIDE, and Development Environment .
• Documented DS1100 , DS1101W , and DS1102W platforms.
• Almost completely rewritten the Common Library Info section.
• Documented the AggreGate (AGG) library .
• Significantly updated the Setting (SRG) library documentation.
• Documented changes to the gprs_start() of the GPRS library (new apn argument).
• Documented ppp. object and GPRS library .
• Documented fd.copyfirmwarelzo, and edited Upgrading the Firmware/Application .
• Documented ssi. object.
• Documented STG library improvements:
It is now possible to use escape sequences (i.e. "\xA5") in default value strings — see Setting Descriptor File Format .
Stg_restore_multiple() now has now have 4 operation modes.
STG_REDUNDANCY now offers three choices.
new STG_RAM_TYPE define added.
• Documented changes in the .romfile object, which now supports files over 64KB.
• New topic added: About _get_info() API Functions .
• Documented new API procedures: pppoe_get_info() , wln_get_info() , dhcp_get_info() .
• Edited Using HTTP — SWF files are now supported!
• Documented WLN library .
• Updated wln. object documentation (many small edits). Notable changes:
Removed "Known Limitations" from wln. object documentation — these limitations do not exist any more.
Expanded on WPA security (for example, see Setting WPA Mode and Keys ).
• Documented two new API calls of the STG library : stg_find() and stg_stype_get() .
• Updated code examples in the DPHP library .
• Updated the sample project of the STG library .
• Fixed error in Serial Settings topic code sample.
• Added "Includepp Statement" topic.
• Updated wln. object documentation:
Dropped "Migrating From the WA1000" and "Rebooting" topics.
Reedited the entire text.
• Changed Our Language Philosophy topic to reflect support for floating point variables.
• Documented aes128dec , aes128enc , rc4 , strand , stror , and strxor functions.
• Fixed sock.allowedinterfaces topic to include new values (PPPoE and PPP)
• New topic: sock.availableinterfaces
• Documented pppoe. object and PPPOE library .
• New topics: Protecting Your Device with a Password , Setup (MD) Button (Line) .
• Updated: Compiling a Final Binary , The Structure of a Project , "Creating, Opening, and Saving Projects", "Adding, Removing, and Saving Files", "Project Settings", "Device Explorer", Special Configuration Section of the EEPROM .
• Corrected: Connecting GA1000 (diagram C was wrong).
• Corrected: .ip Property (of the net. object).
•EM500 platform change: fd. and wln. objects are now supported.
•Fd. object docs change: there is a new 16- PL_FD_STATUS_FLASH_NOT_DETECTED error code , and fd.format , fd.formatj , fd.mount , fd.getsector , fd.setsector may return it.
• New topics: Connecting External Flash IC , Connecting GA1000 .
• Many small changes in Platform Specifications (especially for the EM500 module).
• Removed "EM202" platform documentation, it is no longer supported. We recommend using EM1206 or EM1206W instead.
• Cleaned up platform specifications — many things rearranged:
Most specs for each platform now fit in a single topic;
The folder with common information has been expanded and rewritten.
• Updated fd. object documentation:
Documented transactions (new feature).
Most topics were edited and updated.
• Released all-new Libraries section, with SOCK , FILENUM , STG and DHCP library documentation.
• Updated TIDE topic "Adding, Removing and Saving Files" with new screenshots and "add existing files" option.
• Corrected typographical errors in topics Lbin Function , Lhex Function .
• Corrected typographical errors in topics Instr Function , .Insert Function , Date Function , Mincount Function .
• Documented new feature, incremental project uploads .
• Corrected EM1206 PLL status on boot (PLL ON by default, no PE pin) under Platform-dependent Programming Information.
• Corrected inter-pulse gaps in Wiegand mode for the .ser object (2mS instead of 20mS)
• Documented EM500 platform.
• Added Enum pl_io_port_num topic to each platform's description.
• Added Device serial number section to the Platform-dependent Programming Information topic of each platform.
• Changed the Serial Number topic — it now refers to the Device serial number section (see above).
• Edited Serialnum R/O Property and Setserialnum method topics.
• Uncluttered platform documentation — made these topics "common":
Project Settings Dialog.
• Merged EM1000 and EM1000W platform documentation under a single manual — EM1000 and EM1000W Platforms .
• Added EM1202W platform documentation into the EM1000 platform docs, renamed the section into EM1202 and EM1202W Platforms .
• Documented new platforms: EM1206 and EM1206W , DS1202 , DS1206 .
• Reworked Platform Specifications topic.
• Documented new insert function.
• Changes in the wln object manual:
Every topic was updated and edited;
Added "Migrating From the WA1000" to address the changes in the wln object operation;
- "Configuring CS Line" renamed into Configuring Interface Lines ;
"Powering Down" renamed to "Rebooting";
- "Detecting Disassociation or Powerdown" renamed into Detecting Disassociation or Offline State ;
- "Enabling Port" renamed into Applying Reset ;
• Changes in the button object manual:
Expanded the main topic;
Documented new button.pressed R/O property;
Added information about "debouncing".
• Changes in the pat object manual:
Updated all other information in relation to the above.
• Changes in the fd object manual:
Updated fd.find method;
Documented new fd.rename method.
In connection with the above, renamed "Creating and Deleting Files" into Creating, Deleting, and Renaming Files , expanded topic content.
• Changes in the sock object manual:
Updated HTTP-related Buffers — an HTTP socket can now live without the RX buffer. Also, HTTP variables of any size can now be received;
Added "Redirection and UDP" to the Redirecting Buffers topic;
• Changes in the ser object manual:
Corrected schematic diagram (C) in the Wiegand Mode topic.
• Documented kp. object , lcd. object .
• Documented md5 , sha1 , ddstr , and ddval syscalls.
• Documented sys.serialnum and sys.setserialnum . Added Serial Number topic.
• Added Using Preprocessor and "Scope of Preprocessor Directives" topics.
• Updated "The Watch" topic — documented new capabilities such as true support for arrays, expressions ("x(y)"), etc.
• Update "Project Settings" topic — documented new Customize button.
• Updated EM202 platform — this platform is now used by "203" devices as well.
• Documented fd object .
• Added Legal Information topic.
• Deleted "What's New in R2" and "Migration From Version 1" topics.
• Documented wln object .
• Documented new EM1000W platform.
• Documented new romfile.offset R/O property. In connection with this, updated the following topics: Supported Functions (Syscalls) (EM202/200 (-EV), DS202 platform), Romfile Object .
• Documented new sock.allowedinterfaces , sock.targetinterface , and sock.currentinterface properties. In connection with this, also edited the following topics: Accepting Incoming Connections , Establishing Outgoing Connections , and Checking Connection Status . Changed information in the Supported Objects (EM202 platform) topic. Updated sock.localportlist , sock.targetinterface property topics. Also edited "Platform-dependent Programming Information" topics of all platforms. EM1000 and EM1202 platforms got new "Enum pl_sock_interfaces" topics.
• Corrected a mistake in the Main Parameters topic (net object). The topic incorrectly stated that the Tibbo BASIC/C application can't change the MAC address, which is, in fact, possible.
• Correction: default value for the net.ip property is "126.96.36.199", not "127.0.0.1".
• Corrected net.ip , net.netmask , net.gatewayip (details portion).
• Correction: EM1202 platform does not support RTC (rtc .) object.
• Edited Enum pl_io_num topic of the EM1000 platform manual to reflect newly supported I/O lines 49-53.
• Added to Understanding TCP Reconnects topic (section about reconnects and HTTP). Note added also to Sock.reconmode Property topic.
• Improved "Supported Functions" and "Supported Objects" topics for all platforms.
• Extended and renamed the "Project Browser" topic (formerly called "Using the Project Browser"). Also made new screenshot.
• New screenshots in the "Code Auto-completion topic". Text edited slightly as well.
• Updated the Tooltips topic, created "Supported HTML Tags" topic. New data concerns using HTML elements in tooltips.
• Updated "The Watch" and "Scopes in Watch" topics — new screenshots; the text was also edited.
• Extended the Constants topic — added a new section about escape sequences in string constants.
• Updated Language Element Icons (slight changes only).
• Added the EM1202 platform description section.
• Corrected RTC Object topic: should be rtc.getdata and rtc.setdata, not rtc.get and rtc.set.
• Minor corrections in the EM1000 platform description section.
•Closing Connections topic contained references to sock.abort method, which does not exist. Correct method name is sock.reset.
• Expanded Establishing Outgoing Connections and Closing Connections topics. Both topics now contain "Do not forget! Connection Handling is fully asynchronous" sections.
• Added "Socket re-use after connection closing" section to the Closing Connections topic.
• New More On the Socket's Asynchronous Nature topic.
• Updated "Adding, Removing, and Saving Files" topic.
• Added "Graphic File Properties Dialog" topic.
• Updated Working With HTML topic.
• Significantly expanded "Embedding Code Within an HTML File" topic — especially important: all code fragments on the HTML page are parts of one procedure.
• Updated Using HTTP , Generating Dynamic HTML pages , and Working With HTTP Variables topics.
• Added "What's new in R2" and "Migration From Version 1" topics.
• Updated "The Watch" — described new functionality, provided more info on how watch works.
• "Scopes in Watch topics" — provided more info on how watch works.
• Updated Using the "Project Browser" — selected platform is now visible in the topmost tree node.
• Updated Program Structure — explained that event handlers can also accept arguments.
• New "Exceptions" topic
• Updated Variables and Their Types — added info about dword, long, real, float, and structures.
• Updated Type Conversion — almost 100% new text.
• New Type Conversion in Expressions — this section has been "under construction" for a long time.
• New "Compile-time Calculations" topic.
• Updated Arrays topic — new ways to declare, etc.
• New "Structures" topic.
• Updated and renamed "User-defined Types" topic. Now it is called Enumeration Types .
• Updated Understanding the Scope of Variables topic.
• New "Declaring Variables" topic.
• Updated Introduction to Procedures — explained that event handlers can also accept arguments and can never be functions procedures.
• Updated "Dim Statement" topic — new data about ways to define array variables.
• New "Type...End Type Statement" topic.
• Updated "Passing Arguments to Procedures" topic (strict byref argument match is now required).
• Updated "Goto Statement" — all labels are local!
• New Supported Variable Types topics for each platform (EM202, EM1000).
• Updated Platform-dependent Programming Information topics for each platform (EM202, EM1000).
• EM202 platform no longer supports redirection — Enum pl_redir topic has been updated.
• Updated Supported Functions (Syscalls) for EM202 and EM1000 platforms — some stuff in, some stuff out.
• Updated Generating Dynamic HTML Pages topic — described changed behavior when the same code snippet has to be executed from two instances of the same HTML page being sent to the browser.
• Updated Httpnoclose Property topic — there is a new "separator" string.
• Updated Pat.play and Beep.play topics — now "**" means x4 speed.
• New Sys.onsystimerperiod Property topic.
• Updated On_sys_timer Event topic — to reflect that there is a new sys.onsystimerperiod property.
• New Sock.inconenabledmaster Property topic.
• Updated Accepting Incoming Connections topic — added material regarding sock.inconenabledmaster property.
• Updated Stor.getdata Method , Stor.setdata Method , Rtc.getdata Method , Rtc.setdata Method topics because all four methods have been renamed.
• New Cfloat Function , ftostr Function , Lbin Function , Lhex Function , Lstr Function , Lstri Function , Lval Function , Strtof Function topics.
• Updated Vali Function topic — this function is no longer available since val function now works both for word (unsigned) and short (signed) conversions.
• Updated Val Function topic to reflect the fact that this function is now used both for word (unsigned) and short (signed) conversions.
• Updated Str Function , Stri Function , Bin Function , Hex Function , Val Function topics — more accurate description and examples.
• Added "declaration" to the description of all events.
• Updated sock.event R/O Property and sock.eventsimple R/O Property topics — these properties are not longer available.
• Updated On_sock_event Event topic — this event now carries newstate and newstatesimple arguments that have replaced sock.event and sock.eventsimple R/O properties.
• Updated Checking Connection Status topic to reflect the changes made to the on_sock_event .
• New "Split Packet" Mode of TCP Data Processing , .Splittcppackets Property , and On_sock_tcp_packet_arrival Event topics.
• Updated certain screenshots in several topics.
• Added Image Editor topics: "Built-in Image Editor", Image Menu , "Image Editor Toolbar", "Tool Properties Toolbars" (+ all subtopics).
• Updated "Adding, Removing, and Saving Files" topic (added image editor-related info).
• Added new platform — EM1000 .
• Added "Platform revision Programming Information" topics to EM202 and EM1000 platform documentation.
•Stor object got new property- stor.base . Entire description of the object has been updated because of that.
• Clarification has been added to the romfile object description. This object can only access first 65534 bytes of each file, even if the actual file is larger.
• Entire new beep object has been added.
• New feature in io object — io.enabled property was added.
• New feature in system object- see PLL Management, sys.currentpll , sys.newpll , sys.resettype .
• New features in serial port object- support for Wiegand and clock/data interfaces. New topics include: Three Modes of the Serial Port with subtopics, ser.mode , and ser.autoclose . A lot of other topics have been changed- too many to list here.
• Change in sys.buffalloc behavior: now if the serial port (socket) to which the buffer belongs is not closed (idle) the buffer size will remain unchanged. This affects ser.rxbuffrq , ser.txbuffrq , sock.rxbuffrq , sock.txbuffrq , sock.tx2buffrq , sock.cmdbuffrq , sock.rplbuffrq , sock.varbuffrq .
• Corrected errors in the Enum pl_io_num (pin descriptions were wrong- RTS, CTS, DTR, and DSR lines were shown at incorrect positions).
• Corrected ser.txlen , ser.txfree , sock.txlen , sock.txfree property descriptions. These properties do not take into account uncommitted data in the TX buffer (it was stated otherwise previously). Consequently these topics were also edited: Buffer Memory Status , TX and RX Buffer Memory Status . Ser.notifysent , on_ser_data_sent , sock.notifysent , on_sock_data_sent , ser.setdata , and sock.setdata have been amended accordingly.
• Corrected mistakes related to date/time conversion functions- date function was erroneously documented as "day" function, weekday function description was missing altogether. Topics of other date/time related functions- year , month , daycount , hours , minutes , and mincount were slightly corrected.
• Corrected errors in io.Num Property and io.State Property
• Updated Preparing Your Hardware with the network upgrade procedure
• Updated Starting a New Project
• Updated Making, Uploading and Running an Executable Binary
• Updated Project Menu with new entry description for Device Explorer
• Updated Debug Toolbar with new button description for Device Explorer
• Updated and expanded Device Explorer
• Added new functions: Day Function , Daycount Function , Hours Function , Mincount Function , Minutes Function , Month Function , Year Function
• Improved indexes — better context search.
• Added L1008, L1009
• Initial release of manual.