Getting Started with TINI
This chapter will get you started with your TINI without overwhelming you with detail (we save that for the next 8 chapters). It focuses on installing the TINI classes and libraries, getting TINI up and running, and then getting the 1-Wire libraries installed (so you can control things with your desktop or laptop computer as well) and verified, so that everything is working properly.
What Is TINI?
The TINI microcontroller is a small computer that executes Java bytecode and has built-in Ethernet networking and interfaces for connecting many different types of hardware. The name TINI stands for “Tiny InterNet Interface” and refers to both the TINI Chip Set and the TINI Board. The TINI CPU is the Dallas Semiconductor DS80C3901. TINI has built-in serial, parallel, 1-Wire, I²C and Controller Area Network (CAN) ports, with extra pins for controlling optional devices. It can address up to 1Mb of RAM and 1 Mb of Flash ROM. The TINI board also contains an RS232 interface, a real-time clock, a unique Ethernet MAC address, and a battery backup for the RAM. The Ethernet controller supports 10-Base-T networking and allows you to Internet-enable many applications. The Flash ROM contains the TINI firmware, Java Virtual Machine, and Java class libraries. It also has space to store a bootstrap program. TINI is a 1-¼″ x 4″ form factor, the footprint of a typical memory SIMM (Single Inline Memory Module), so that a TINI microcontroller can fit almost anywhere. With TINI you can Web-enable just about any piece of electrical equipment. You can develop Java applications for TINI quickly and easily to provide an Internet or intranet interface for your equipment.
The 1-Wire Net, sometimes known as a MicroLAN, is a low-cost network based on a PC or microcontroller communicating digitally over twisted-pair cable with 1-Wire components. A 1-Wire Net-based system consists of three main elements: a bus master (such as a TINI microcontroller or a microprocessor) with controlling software, the wiring and associated connectors, and 1-Wire devices. An economical DS9097 COM Port Adapter is available to interface a personal computer’s RS-232 interface to a 1-Wire network.
This is a practical discussion of how to get started, obtain and set up all of the pieces.
The TINI SIMM
TINI is available in two forms, the 512-kbyte SRAM version and the 1-Mbyte SRAM version. In fact, they are both the same but with the 512-kbyte version, only one of the two SRAM chips has been soldered to the SIMM, while the other is empty. In Chapter 6 we will discuss the details of this memory (512k and 1 Mbyte) and in Chapter 8 we will show you how to add memory to the 512-kbyte version. Both of these are available from the Dallas Semiconductor iButton Store2.
The socket board
As TINI is a SIMM, it has no sockets on it for connecting to external devices, just a single edge connector. To connect TINI to various devices like the serial port and a network, it needs to be plugged into a host or motherboard that either provides the needed connections or offers sockets and connectors for the various connections. Why is it like this? TINI is intended to be a plug-in “brain” on an appliance. The appliance should provide the necessary connection directly to the TINI SIMM. For development and testing purposes (and for small-scale applications where a custom motherboard is too costly) it is possible to use one of the many prototype sockets available that provides the needed connectors for TINI and various interfaces. Table 5-1 below lists and compares some of these available socket boards for TINI. Unless noted otherwise, all socket boards include:
• 72-pin SIMM connector • Power connector
• RJ45 Ethernet connector • RJ11 1-Wire network connector
4 Dallas Semiconductor’s E10 socket – http://www.ibutton.com/TINI/developers/index.html
5 Systronix E50 socket – http://www.systronix.com/tini/sp.htm
6 Systronix TILT socket – http://www.systronix.com/tini/tilt.htm
7 Systronix STEP socket – http://www.systronix.com/tini/step.htm
8 Viniculum’s proto adapter – http://www.vinculum.com/1001.php