Go to Triangle Digital Support Home Page TDS2020F TECHNICAL MANUAL
Development software
Datalogger wizard
Live website search
Enter key words



The Datalogger Wizard is a PC program that will help you design a custom datalogger based on TDS2020F single board computer. Tell it what you need and the software is written for you. No programming is needed for many applications but, even if the Wizard cannot cover the exact specification, the source file it outputs will be an excellent starting point because it is closer to the requirement than any pre-written library file could be. Click here to get the Datalogger Wizard.

The Wizard will ask questions on possible requirements for your application. Afterwards it evaluates your answers and establishes the feasibility of creating a program that meets those requirements. If it is possible, the program for a datalogger is then automatically written. If it is not possible, step backwards and forwards refining your requirements until the Wizard confirms that it can write the program.

Click to download latest Datalogger Wizard

First page of the Datalogger Wizard - click to download



q       Questions posed in English, Spanish, French, Italian or German

q       Produces the program with least power consumption

q       Analog inputs of 6,10, 12 or 16 bit resolution

q       Digital states, up to 39 of them

q       GPS location, altitude, speed, direction

q       Date and time

q       Humidity, temperature & dewpoint

q       Count of input pulses on up to 8 channels

q       Frequency of signals on up to 8 channels

q       Microseconds to months logging intervals


The TDS2020F datalogger module is capable of a lot more than shown in this list, but the Datalogger Wizard is limited to producing programs covering these requirements. Some features are mutually exclusive-—for example at the moment you cannot specify logging of a count and also humidity even though the TDS2020F could handle both with manual programming.

The output from the Datalogger Wizard is a source file ready for compilation into the TDS2020F. Apart from the code itself, this file contains


q       The date when it was made and the Datalogger Wizard version used

q       A description of the particular program including the logging interval, items logged and data recovery method

q       Parts list for ordering purposes

q       Pin connections for the different inputs

q       The order in which items are logged in a record

q       Hints for further customisation of the program

q       Instructions for use of the program

q       How to use a Flash-EEPROM to eliminate any PROM blowing


The Datalogger Wizard bases its output on one of three published library programs:


q       #DATALOG.TDS

Slow logging with the processor in standby when possible

q       #DUAL2.TDS

Fast logging with the processor sleeping when possible

q       #DOSDUAL.TDS

Fastest—the generated logging interrupt is written in assembler code rather than Forth


The program collects information about the requirement and then chooses the most appropriate of these three programs as a basis for further work. Additions, subtractions and modifications are made to the chosen program to produce a source file that is as close to the specified datalogger as possible.

Pay attention to the final screen showing that a source code program has been generated. The Wizard will sometimes adjust the specification you have given to make the logger possible. Details of any changes will be shown.


The Datalogger Wizard is designed to be self-explanatory, but these further notes on some of the questions might help.

Will a keypad (up to 8 x 8) be connected?

This refers to the possible connection of a matrix keypad for user input to the datalogger module, see MATRIX KEYPAD SUPPORT, page 110, for more details. The connections are in the circuit on page 99.

Should the time and date be maintained when the equipment is off?

The answer to this will affect the parts list in the program. An appropriate battery module TDS2020BYD or TDS2020BYN will be suggested.

Is an operational foreground program essential during the time that data is collected?

Perhaps the only job needed is collection of data. However the TDS2020F is also powerful single board computer and can often do other work at the same time. The Datalogger Wizard cannot write that part of the program but if you check this box it will (if possible) structure the program to handle both the background collection of data and the foreground operations. Notes in the generated source code show where to customise it for the extra functions and also time limits (if applicable).

Remember that a foreground will increase power consumption, especially in applications that log data slowly. There will be little opportunity to put the system to sleep or on standby to save power.

Data storage

A flash chip will only store up to 512k bytes, but Compact Flash or PCMCIA cards go to over a gigabyte. Only use a flash chip if the storage requirement will be small or for lower cost. If you choose a full-sized PCMCIA card be sure to obtain one which emulates a hard disk (also known as a Flash-disk). There are some older Flash types that cannot be used and RAM cards cannot be used with the output from the Datalogger Wizard.

Data recovery method

Choosing to extract the data from a serial port on the TDS2020F is convenient because you won't have to physically remove the stored data from the logger, but it is much slower. The maximum serial port speed is 38,4000baud. The Datalogger Wizard output for the moment does not distinguish between use of a modem or not on the serial port. If you have a modem manually add file #MODEM.TDS or #GSM.TDS to the list of files included. The first is for fixed telephone lines, the latter for a GSM radio mobile.

Recording format

CSV is Comma Separated Variable and looks like this:





Each field of the data terminates in a comma and one record ends CR and LF characters (hex 13 and 10). Microsoft's Excel spreadsheet will open data files with this format. On the File menu choose Open and set the the 'File of type:' to 'All files'. Select the file with the CSV data and Excel opens an import wizard. Indicate that you have a delimited file and that the delimiter is a comma. After the import, right click the top of the column the represents time and format the cells in your chosen time format. Do similarly with the data column.

Binary format in more compact. A 10-bit analog value represented above as 1842, and occupying 5 bytes in CSV would need only two in binary. However, you will probably need to write a PC program (say in Visual Basic) to interpret your data.

Number of analog channels

Up to 8 analog channels can be handled by the Datalogger Wizard, but only 4 if 16-bit resolution was chosen. If the box will not go above 4 and you want more channels, go to the next page to change the resolution then come back to this one.

Analog channel resolution

The bottom selection of 16-bits will be unavailable if you chose more than 4 channels. This is because the 16-bit option relies on an external A to D converter chip ADS7825 that only has 4 inputs. The 12-bit option also needs an external chip, MAX127, but in this case 8 channels are available.

Analog channel multipliers

Here you set a number to scale each of the analog inputs to represent real-world quantities. For example the 10-bit converter in-built on the TDS2020F gives a raw conversion of 0 to 1023 for the input range 0 to +5V but by setting a scaling factor of 4.888 a conversion value of 1023 will be recorded as 5000 (4.888 x 1023 = 5000 approx.).

Number of digital channels

There can be up to 39 digital channels but less some other features are selected. these are 8 or 10-bit analog, counter or frequency recording. For each channel you are recording a digital state, with 0 representing a 0V input and 1 for 5V.

GPS requirements

If you choose to record Global Positioning System (GPS) data two pages of the Wizard are available to fill in the details of your selection. Standard NMEA format data at 4800 baud is expected from the GPS receiver to serial port 1 or 2 on the TDS2020F.

The raw data contains positions in degrees, minutes and seconds of an arc but you can have the TDS2020F convert this to decimal degrees to make later calculations easier.

The GPS signal carries a UTC time signal and you can choose to set the TDS2020F clock. Note that this time is (more or less) the same as Greenwich Mean Time (GMT) so the logger clock will not be recording according to your local time-zone.

The speed is provided by the NMEA data string in km/hr but the TDS2020F can convert it before recording to miles per hour or nautical miles per hour (knots) if required.

Heading is provided in degree true, meaning degrees measured clockwise from true north.

Altitude can be unreliable from some GPS receivers unless there is a good signal strength but you can record it in either the native meters from the GPS receiver or have it converted to feet.

Humidity and temperature

Humidity, temperature and/or dewpoint need an add-on transducer made by Sensirion but stocked by us as part number SHT75. It connects to the same two wires as the I²C bus on the TDS2020F but the protocol is not quite the same. It provides Relative Humidity in percent saturation and also the temperature. The TDS2020F does second order linearisation on the raw data for more accuracy and, if selected, also computes the dewpoint (temperature at which condensation would occur).

Frequencies and counters

A total of up to 8 frequencies and counters can be selected. A counter increments at every negative transition of an input from +5V to 0V (see file #COUNT8.TDS to change it to a positive edge). Each is 32-bits giving a maximum count of over 4,000,000,000, At regular intervals the counters are transferred to other 32-bit registers to give a measure of frequency. This is recorded as Hertz to one decimal place, but note that the frequency is only updated every 10 seconds.

The input signal can be anywhere from zero to 2,500 Hz (5,000 if you manually adjust the generated program).

How often do you want the date logged?

You can record the date every record or less frequently to save space. In the case of CSV format recording a comma is inserted in the record to act as a placeholder. If you check the 'Once a day' box the date will be recorded only with the first record after midnight.

Three formats are possible. Excel format inserts a day number a used by PC versions of Microsoft's Excel spreadsheet. (set the column to date format to show it as a real date). European format records it as 25.12.04 for Christmas day where the USA format would give 12.25.04.

How often do you want the time logged?

Time is logged every record or every so many records as required. Excel format is a fraction of a day so the recorded number is a decimal one ranging from 0 to 1. In this scheme 0.5 is midday and 0.75 is 6pm. Just setting the Excel column to a time format will correctly show when the records were logged.

Interval between records

Here you set how often a data record is taken. If you find the Datalogger Wizard is unable to generate a program for you try coming back here and changing the logging interval. Making it longer will often make it successful, but sometimes a shorter value makes it possible.

Maximum logging times

On this page the available time for data collection is shown against different media sizes. The times can range from minutes to years for fast and slow data logging. They come from a calculation made by the Wizard based on the data format selected, number of channels of the different inputs. logging interval and so on. They are conservative estimates and represent the minimum times you have available before the recoding medium will be full. If the type you want is greyed out, go back in the Wizard and change the data storage selection.

The Datalogger Wizard has finished collecting information

On this page you see the result of the datalogger Wizard's analysis of your requirement. You will get one of three results:


q       With the parameters you have given the Datalogger Wizard is able to write a custom program for the TDS2020F. Press Finish to continue . . .

q       Although the custom datalogger you need might be within the capabilities of TDS2020F, the Datalogger Wizard is not able to write a custom program. Either go back to change parameters or write the program manually.

q       The datalogger you have described is not within the capabilities of TDS2020F.

The first case (check mark graphic) means you can continue to generate the custom source file. The second (question mark) shows that the Wizard is not able to write the program but it thinks that it should be possible to write manually a program to meet your needs. Request from us further help for this case unless you can adjust the requirements to get a positive result. The third possibility (red cross) indicates that the TDS2020F may be incapable of the job, perhaps logging is too fast for example. The Datalogger Wizard can be wrong so please check with us.

If you do not get a success at this screen, try going back to previous screens to change the specification.

Go to Triangle Digital Support Home Page Go to top   Next page