(Paperback - BK&CD-ROM)
Written by the lead architect of the technology, the book is packed with examples, reference materials, and contains the complete TINI specification. This reference begins with an overview of the platform, then covers every detail of the specification from the runtime environment to device I/O, networking, and application programming. While some Java programming language experience is a prerequisite, the book requires no embedded controller or I/O interface experience.
...the first complete reference to this innovative "anywhere anyplace" interface for web-enabled devices.
The lead architect and developer of TINI (Tiny InterNet Interface) provides a tutorial and reference guide for developers networking embedded systems with TINI, a compact interface for connecting hardware devices directly to corporate and home networks. Reviews the platform, examines every detail of the specification. Requires some Java programming language experience and familiarity with network programming concepts. Annotation c. Book News, Inc., Portland, OR (booknews.com)
More Reviews and RecommendationsDon Loomis is the software engineering manager at Dallas Semiconductor Corporation and is the lead architect and developer of TINI.
From the Foreword by Tom Cargill
TINI (Tiny InterNet Interface) technology is the compact and powerful solution for connecting a wide variety of hardware devices directly to corporate and home networks. The TINI Specification and Developer's Guide is the complete tutorial and reference guide for developers networking embedded systems with this exciting new technology.
Written by the lead architect of the technology, this book is packed with examples and reference materials, and contains the complete TINI specification. It begins with an overview of the platform, then examines every detail of the specification from the runtime environment to device I/O, networking, and application programming. Though some Java programming language experience is a prerequisite, the book requires no embedded controller or I/O interface experience.
The key components of the TINI specification are explained, including:
The accompanying CD-ROM contains code examples from the book.
Direct from the authority, The TINI Specificatireference to this innovative "anywhere anyplace" interface for Web-enabled devices.
The lead architect and developer of TINI (Tiny InterNet Interface) provides a tutorial and reference guide for developers networking embedded systems with TINI, a compact interface for connecting hardware devices directly to corporate and home networks. Reviews the platform, examines every detail of the specification. Requires some Java programming language experience and familiarity with network programming concepts. Annotation c. Book News, Inc., Portland, OR (booknews.com)
| Foreword | ||
| Preface | ||
| Ch. 1 | The TINI Platform | 1 |
| Ch. 2 | Getting Started | 23 |
| Ch. 3 | Serial Communication | 51 |
| Ch. 4 | The 1-Wire Net | 81 |
| Ch. 5 | TCP/IP Networking | 111 |
| Ch. 6 | Dial-Up Networking Using PPP | 139 |
| Ch. 7 | Building a Remote Data Logger | 147 |
| Ch. 8 | Parallel I/O | 181 |
| Ch. 9 | Just the Bits | 199 |
| Ch. 10 | Accessing System Resources | 209 |
| Ch. 11 | Application Programming Tips | 225 |
| App.: Almanac | 255 | |
| Index | 341 |
Over the past two years, the power line has given way to Ethernet, and the network programming interface has transitioned from an application specific interface to a standards-based TCP/IP protocol stack. The device I/O capabilities have also been greatly extended. Today, TINI is a broad platform that includes both hardware and software used to create intelligent network devices. These are often devices that require a small footprint, have low power consumption, and are cost sensitive. A few examples include industrial automation equipment, access control, vending machines, remote meters, and environmental sensors.
The TINI development project is a first for Dallas Semiconductor in that its design has been open to public scrutiny. The networkingportion of the runtime environment along with the core Java APIs are of course well defined and well understood by a large development community. However, several new APIs have been created to expose the rich I/O capabilities of the technology. Major contributions to the definition of these new APIs have been made by the TINI SIG (special interest group). The result of this cooperative effort is a feature-rich platform. This work is an attempt at presenting a reasonably complete specification of the platform with plenty of examples to help clarify important topics. The book focuses on the following three areas.
Several of the chapters describe the APIs that expose the various forms of device I/O. Some of these may not be required by developers with specific applications in mind. However, the reader is encouraged to read at least the first and last chapters in addition to the chapters that expose capabilities relevant to his or her particular application. The first chapter provides a thorough definition of the platform, while the final chapter focuses on performance improvements and application hardeningtwo important topics for anyone writing serious applications targeted for the TINI runtime environment. Building a Remote Data Logger is also quite useful as it details a large example that brings together several of the concepts presented to that point in the book, including serial communication, 1-Wire networking, and TCP/IP networking over both Ethernet and serial interfaces.
The best way to become familiar with this technology is, of course, to use it. For this reason, every attempt has been made to create examples that are easily run on the most commonly available hardware. Some of the larger examples require additional hardware, but any additional hardware should be relatively inexpensive and easy to attain.
A strong familiarity with the Java programming language and some experience with network programming concepts is assumed. While a comfort level with hardware-related topics is helpful, it is not a requirement for understanding the bulk of the contents of this book. It is my hope that "pure programmers" can start with the code examples and gradually become more comfortable with the hardware-oriented concepts presented here.
The earliest implementation of TINI actually dates back to late 1998 when a handful of engineers at Dallas Semiconductor worked with a couple of engineers at Sun Labs to demonstrate a very small, Java programmable device capable of controlling household electrical appliances. The prototype modules were crammed into light switch housings, coffee pots, HVAC systems and fans. The appliances communicated with one another and with a central server using a crude form of power line networking. The main idea was to provide not only local control of the appliance, but also network connectivity to allow for remote control and monitoring. This increased the flexibility as well as the ease of use of the appliance. While none of the engineering work remains of this ancient version of the technology, the concept of a Java programmable runtime environment used to create embedded network applications is still the cornerstone of the TINI platform.
Over the past two years, the power line has given way to Ethernet and the network programming interface has transitioned from an application specific interface to a standards-based TCP/IP protocol stack. The device I/O capabilities have also been greatlyextended. Today, TINI is a broad platform that includes both hardware and software used to create intelligent network devices. These are often devices that require a small footprint, low power consumption and are cost sensitive. A few examples include industrial automation equipment, access control, vending machines, remote meters and environmental sensors.
The TINI development project is a first for Dallas Semiconductor in that its design has been open to public scrutiny. The networking portion of the runtime environment along with the core Java APIs are of course well defined and well understood by a large development community. However several new APIs have been created to expose the rich I/O capabilities of the technology. Major contributions to the definition of these new APIs have been made by the TINI SIG (special interest group). The result of this cooperative effort is a feature rich platform. This work is an attempt at presenting a reasonably complete specification of the platform with plenty of examples to help clarify important topics. The book focuses on the following three areas:
Several of the chapters are dedicated to describing the APIs that expose the various forms of device I/O. Some of these may not be required by developers with specific applications in mind. However the reader is encouraged to read at least the first and last chapters in addition to the chapters that expose capabilities relevant to his or her particular application. The first chapter provides a thorough definition of the platform while the final chapter focuses on performance improvements and application hardening, two important topics for anyone writing serious applications targeted for the TINI runtime environment. Chapter , Building a Remote Data Logger, is also quite useful as it details a large example that brings together several of the concepts presented to that point in the book, including serial communication, 1- Wire networking and TCP/IP networking over both Ethernet and serial interfaces.
The best way to become familiar with this technology is, of course, to use it. For this reason every attempt has been made to create examples that are easily run on the most commonly available hardware. Some of the larger examples require additional hardware, but any additional hardware should be relatively inexpensive and easy to attain.
A strong familiarity with the Java programming language and some experience with network programming concepts is assumed. While a comfort level with hardware related topics is helpful, it is not a requirement for understanding the bulk of the contents of this work. It is my hope that pure programmers can start with the code examples and gradually become more comfortable with the hardware oriented concepts presented here.
Acknowledgments
I would like to thank the many people who have contributed to the TINI project and this book. First and foremost I would like to thank the talented engineers who contributed so much to this long and intense development effort for their hard work and dedication: Kris Ardis, Bryan Armstrong, Tom Chenot, Chris Fox, Stephen Hess, Nicolas Kral, Yolanda Lei, Jesse Marroquin, Caroline McLean, Jeff Owens, David Smiczek, Lorne Smith, Stephen Umfleet and Clayton Ware. I would also like to thank my management, Steve Curry and Michael Bolan for their support and encouragement while writing this book. I am grateful to the volunteer efforts of many on the TINI SIG that not only provide fantastic support to new developers but also contribute to the quality and definition of the platform.
Thorough and insightful technical reviews of early drafts were provided by Tom Cargill, Steve Curry, Peter Haggar, Judy Loomis, Robert Muchsel and John Wilson. I appreciate all of the excellent feedback.
I am also grateful to Mike Hendrickson and Heather Olszyk at Addison Wesely who patiently guided me through the writing process. I would also like to thank the copy editors (what a whoopin this must have been).
Finally, many thanks to the folks at Sun Microsystems who allowed me to use their excellent MIF Doclet tool to create the Almanac. The legend page of the Almanac is also the result of blatant thievery from the Java Real-Time specification.
loading...
loading...
loading...
Terms of Use, Copyright, and Privacy Policy
© 1997-2009 Barnesandnoble.com llc
