Maxim Dallas 1-Wire, MicroLan, iButton: A Hobbyist's View
I have been having a lot of fun with some superb products from Dallas Semiconductor, which is now part of Maxim. These pages attempt to help you join the fun. One apology: My material on this topic has become a little disorganized... persevere if you don't find what you want immediately?
What if you don't want to get involved in making devices or writing programs? You can still enjoy using devices based on 1-Wire chips. They are available ready made, and software is available too.
On this page: material for you in three categories:
1) An introduction to the product family.
2) Information about hardware and software, ready to use, or in kit form.
3) For programmers: How to interact with the chips.
and then at the bottom...
3) Odds and Ends, including how to contact the author.
If you have decided that you want to try a MicroLan, I have posted a keystroke-by-keystroke How To guide about setting up your PC with the minimum necessary elements.
Introduction To The Product Family.......
Dallas Semiconductor, now part of Maxim, produces a line of chips in a family Dallas calls "1-Wire".
Just before we start down the path to the "proper" use of 1-Wire chips, let me mention that they can be used in a very simple, very direct way. If you have a microprocessor, and just want to hook up to one or two 1-Wire chips, I have a page about that for you.
They can be used many, many different ways, but here's a simple example, just to get you started.....
I have a computer with a graph on its screen showing me indoor and outdoor temperatures. Besides the computer, I needed a MicroLan adapter (about $30, and you only need one per MicroLan), two chips (very simple. about $5 each) and some simple wire.
I had to install some drivers on my PC. (Free from Dallas, and the drivers don't seem to affect anything else.) The adapter just plugs into the PC. You can get parallel, serial or USB adapters. The wire goes into the other side of the adapter, by an RJ-11. (The sort of connector used for phones in the US.) The chips are connected to the wire the way you'd attach light bulbs to a circuit, i.e. in parallel. (The chips are "rungs" on a "ladder", where the wires are the stringers.) ("1-Wire" is a little misleading... you need one wire which carries data and power, PLUS a ground wire... two wires. Also, sometimes it pays (or is necessary) to add a third wire carrying a low voltage power supply. Not all "1-Wire" chips need this. Cat5 cable is the wire of choice.)
All that's left after the above is the program to read the temperatures reported by the chips. Dallas supply a free utility which will read the chips, but if you want the results graphed, you have to go to the 1-Wire community. These pages from me are meant to be a portal to those resources.
One last thing for this first introduction: "MicroLan" is the term used for one or more 1-Wire chips connected to an adapter and a "host" controller, e.g. the PC in the set up described above. (The host can be a mere microcontroller, a Linux box, etc, etc.) Every MicroLan has one host, controlling and using the data on the MicroLan, and one or more 1-Wire chips. Those chips can be, as above, mere electronic thermometers, or they can be input or out put devices (analog or digital), or counters, or storage ("memory"), or security dongles, or.... I'm sure that the Dallas engineers have "new toys" brewing in their labs, even as you read this.
Congratulations! You've finished one of my "What if 1-Wire" descriptions. I hope it has encouraged you to try to learn more. It is NOT hard or expensive to work with MicroLans!
Of course, if you want to know about this product line, the main place to go it to Maxim/ Dallas themselves! Go to Dallas for the chips and for good libraries of documentation. I just hope that my site will help you make use of all that Dallas has created for us! You may also want to look at notes I've prepared on relevant forums and other sources of help.
You don't need to write software to use the MicroLan chips and products... but it is so much more fun if you do write your own! You can make everything work just the way you think it ought to! I use Delphi, but there is good support for other languages, and you can work from a Linux based machine. If you are into microcontrollers, you might want to explore Dallas's TINI, which will drive 1-Wire chips, and is really cool... but a story for another day!
Go here for detailed tutorials, most of them focused on specific chips. They also often incorporate the sourcecode for useful programs. Once you've written your first program, to access a specific chip, you'll find that accessing further chips is relatively easy. The essay mentioned above (A more detailed look at...) goes into a thorough (longwinded?) explanation of accessing a DS1820 temperature sensor and a DS2405 switch, and might be a good starting point. It also takes you through installing the drivers your system will need.
While you don't have to use Delphi to work with 1-Wire chips, Borland's superb Delphi has been given away many times on cover discs of magazines like Personal Computer World, and, for non-commercial use, there used to be a version available by download from Borland's free stuff site. Dallas provides good sample programs in Delphi (and in several other languages). You don't need to add components to your Delphi IDE, or anything tedious like that.
Dallas's programs are 'professional'... flexible, user friendly, fault tolerant. Good, I suppose, but I think that the "frills" obscure the essentials. I've written stripped down demos to illustrate the core of working with 1-Wire. The source code for my versions is available from the MicroLan section of my Delphi tutorials site.
One solution to the software problem was to use the free DDEViewer. Sadly, it seems to have been withdrawn, but maybe you can find a copy, or buy a descendant. DDEView was a DDE server. Once it was running, you could access the chips on the Microlan remarkably easily. There's more at this page I wrote about Roso-Control's DDEViewer. You could, for example, put a formula in a spreadsheet cell, and the cell would begin to report the temperature of one of the 1-Wire chips. The product seemed a little unstable... but it was worth what we paid for it, and it points to the potential of MicroLans.
Odds and Ends...
You can do quite a lot without needing to be able to program or build electronics, but if you are able to program or make simple electronic devices a whole bunch of further fun is available to you.
I have no connection with Dallas, beyond being a happy user of their products for many years.
The terms "1-Wire", "Microlan" and "iButton" are Dallas trademarks. The first two are used almost interchangeably. An iButton is a 1-Wire chip encased in a small metal can, like a battery.
- - - - - - - - - - -
Book and Website: Want more help? Weathertoys is not only a website, but also of a book. Both discuss lots of fun things about building your own weather station. There is good coverage of using 1-Wire devices, but both the book and the site look at other answers, too. In May 2007, it was quite recently launched, but the site is not "under construction". There's lots of good stuff there.
FarWatch Do you have an "always on" internet connection, e.g. DSL or broadband? (Even a basic home user account is fine. You don't need a fixed IP address.) Want to set something up that lets you check all is well at your home or business.... from any internet terminal in the world? (The terminal needs nothing more than a standard browser.) You don't have to spend anything on software, everything you need is free. You might want to dedicate an old Win98 "box" to doing the work, but you don't have to. You'll probably want to spend a little money to attach one or more 1-Wire temperature sensors to the system, but there are ways around even that expense. Sound interesting? See the pages about my FarWatch system.
Good basic information about 1-Wire installations. Also a supplier of hardware: Simple ordering, pay by PayPal. All your basic needs... adapters, sensors... either as components, or made up on RJ-11 / RJ-45 cables. Some interesting "convenience" connectors and PCBs.
Please note: Sheepwalk Electronics and SheepdogSoftware are unrelated... we both adopted our names long ago (SheepWalk Electronics is a diversification of a different SheepWalk enterprise), and independently. (SheepdogSoftware and SheepdogGuidesare related, and are the source of the page you are currently reading.)
Do try to avoid wasting time re-inventing wheels... there are discussion groups where you can see what others have already discovered, ask for help, etc.
And last, least... if you are a real glutton for punishment, there is MORE stuff on weather monitoring hardware and software (most of it 1-Wire related) at these two disorganized holding areas for stuff I mean to incorporate in due course....
Looking for email, domain registration, or website hosting? If you visit 1&1's site from here, it helps me. They host my website, and I wouldn't put this link up for them if I wasn't happy with their service. They offer things for the beginner and the corporation.
Ad from page's editor: Yes.. I do enjoy compiling these things for you. I hope they are helpful. However... this doesn't pay my bills!!! Sheepdog Software (tm) is supposed to help do that, so if you found this stuff useful, (and you run a Windows or MS-DOS PC) please visit my freeware and shareware page, download something, and circulate it for me? Links on your page to this page would also be appreciated!
Page tested for compliance with INDUSTRY (not MS-only) standards, using the free, publicly accessible validator at validator.w3.org
Why does this page cause a script to run? Because of the Google panels, and the code for the search button. Also, I have my web-traffic monitored for me by eXTReMe tracker. They offer a free tracker. If you want to try one, check out their site. Why do I mention the script? Be sure you know all you need to about spyware.