Some of the folks over at the HomeSeer forum badgered me into posting this here. Looked around and decided that it made sense. BTW, when I go into story-telling mode, you should be afraid. :angry:
Anyway...
I'm sure that many of you have either heard of or experienced issues with the original USB Z-Wave controller manufactured by ACT. Many possibilities were put forth: screwy drivers, bad power, too little power, bad usb port, needed usb2, etc. None really satisfied, as what worked for some people didn't work for others, and verse-visa. I myself had problems that didn't really go away until I upgraded computers entirely (for reasons other than this).
Enter the ACT serial controller. When introduced, it immediately became the darling of the community. It seemed that nearly everyone who had chronic issues while using the usb controller had much better luck with the serial version. It rapidly got to the point where the first question asked of anyone who reported Z-Wave issues was "Do you have the serial controller yet?". It's hard to argue with the success rate.
This puzzled me. Being something of a hardware hack, I had already peered inside the usb unit. What I saw was pretty simple - a standard zensys module, and a usb-to-serial interface. So wasn't this already a serial device? I brought this up on the forums a few times, but was basically ignored (actually I'm still amused by one person who was trying to label me as a usb fanboy). I also couldn't see anyway that host power quality could affect the device in any but the most extreme circumstances, as the whole darn thing ran on 3.3V internally anyway, and at very low current. Yet I was seeing people posting wondering if was possible to hack the usb unit to run on external power...
Of course, as one would expect, the serial controllers went out of stock. This situation seems to have lasted until last week. Martin got in a batch and promptly shipped them out to his backorder list. One enterprising individual, upon receiving his unit, did what any hardware tech would do with new hardware: he promptly took it apart.
And was appalled. What he was looking at appeared to be a usb controller, with the addition of one small card that had the serial cable and power connection, and a MAX232 chip. The usb host board had the original usb cable removed, one trace cut on the board, and four wires added that ran to the new board.
Which is where I re-entered the picture. My first thought was to shout: "See? I told you it was a serial device!" but then I decided that probably wouldn't help anybody. I asked zap to post pictures of his unit which he graciously did. After picking myself up off the floor, we started talking about what else might be different. Well, the only thing that was really left was the zen-sys module itself. I had always harboured a belief that firmware on the module was a likely culprit behind many of the issues. So naturally I wondered if there could be a difference here between the usb and serial units. Turns out that zap had already had the same idea. He had also tried swapping the zensys modules between his two units and both continued to operate as normal (as normal as they can, anyway).
Ok, so my pet theory was now shot to pieces. Well, in that case, let's see if I can reproduce the new version! In short order I had built up a simple circuit on a solderless breadboard based around a MAX232, and had added a buffer driver so I could hook in some activity leds (blinkies are always cool). I then proceeded to hack up my usb controller. Unsoldered the usb cable, cut the tx-to-rx trace on the board, and soldered a couple of wires on. And fired it up.
Wouldn't you know it? The darned thing worked!
I then proceeded to work up a schematic and sample layout that someone who was handy with a soldering iron would be capable of making. In the process, I noticed what appeared to be a few deficiencies in the design of the "new" serial controller (like feeding an apparently non 5V tolerant input on a 3.3V device with 5V anyway). I went ahead made a few changes to make the design more robust (but hey, how much *can* you do with something this simple?). I turned around and built this circuit on a soldered breadboard. Worked great too - except for one teeeny miscalculation - I put nice plugs on everything to make troubleshooting easier. This made my new board too tall to fit in the original case! Ooooops.
At any rate, I took plenty of pictures, and posted them for all to see. Surprisingly, I've had very little feedback, and the thread itself sort of degenerated into minor bickering over the best way for people to do this mod for themselves.
Personally, I'd like to see some people who are having problems with their usb controller to try this and see if it helps them. In the process of working out just what was going on, I came to the conclusion that the original ACT design has some "questionable" layout issues (sometimes I try to be polite).
Anyway, to cut this essay short, you can find the original thread at this location, in all it's gory details, pictures and all. It's my intention to put together a real writeup and post it on my website, where anybody can reference it. Shouldn't take me more than a year or two...
Jerry
p.s. Nothing like throwing rocks at a hornet's nest for a first post, eh?
Anyway...
I'm sure that many of you have either heard of or experienced issues with the original USB Z-Wave controller manufactured by ACT. Many possibilities were put forth: screwy drivers, bad power, too little power, bad usb port, needed usb2, etc. None really satisfied, as what worked for some people didn't work for others, and verse-visa. I myself had problems that didn't really go away until I upgraded computers entirely (for reasons other than this).
Enter the ACT serial controller. When introduced, it immediately became the darling of the community. It seemed that nearly everyone who had chronic issues while using the usb controller had much better luck with the serial version. It rapidly got to the point where the first question asked of anyone who reported Z-Wave issues was "Do you have the serial controller yet?". It's hard to argue with the success rate.
This puzzled me. Being something of a hardware hack, I had already peered inside the usb unit. What I saw was pretty simple - a standard zensys module, and a usb-to-serial interface. So wasn't this already a serial device? I brought this up on the forums a few times, but was basically ignored (actually I'm still amused by one person who was trying to label me as a usb fanboy). I also couldn't see anyway that host power quality could affect the device in any but the most extreme circumstances, as the whole darn thing ran on 3.3V internally anyway, and at very low current. Yet I was seeing people posting wondering if was possible to hack the usb unit to run on external power...
Of course, as one would expect, the serial controllers went out of stock. This situation seems to have lasted until last week. Martin got in a batch and promptly shipped them out to his backorder list. One enterprising individual, upon receiving his unit, did what any hardware tech would do with new hardware: he promptly took it apart.
And was appalled. What he was looking at appeared to be a usb controller, with the addition of one small card that had the serial cable and power connection, and a MAX232 chip. The usb host board had the original usb cable removed, one trace cut on the board, and four wires added that ran to the new board.
Which is where I re-entered the picture. My first thought was to shout: "See? I told you it was a serial device!" but then I decided that probably wouldn't help anybody. I asked zap to post pictures of his unit which he graciously did. After picking myself up off the floor, we started talking about what else might be different. Well, the only thing that was really left was the zen-sys module itself. I had always harboured a belief that firmware on the module was a likely culprit behind many of the issues. So naturally I wondered if there could be a difference here between the usb and serial units. Turns out that zap had already had the same idea. He had also tried swapping the zensys modules between his two units and both continued to operate as normal (as normal as they can, anyway).
Ok, so my pet theory was now shot to pieces. Well, in that case, let's see if I can reproduce the new version! In short order I had built up a simple circuit on a solderless breadboard based around a MAX232, and had added a buffer driver so I could hook in some activity leds (blinkies are always cool). I then proceeded to hack up my usb controller. Unsoldered the usb cable, cut the tx-to-rx trace on the board, and soldered a couple of wires on. And fired it up.
Wouldn't you know it? The darned thing worked!
I then proceeded to work up a schematic and sample layout that someone who was handy with a soldering iron would be capable of making. In the process, I noticed what appeared to be a few deficiencies in the design of the "new" serial controller (like feeding an apparently non 5V tolerant input on a 3.3V device with 5V anyway). I went ahead made a few changes to make the design more robust (but hey, how much *can* you do with something this simple?). I turned around and built this circuit on a soldered breadboard. Worked great too - except for one teeeny miscalculation - I put nice plugs on everything to make troubleshooting easier. This made my new board too tall to fit in the original case! Ooooops.
At any rate, I took plenty of pictures, and posted them for all to see. Surprisingly, I've had very little feedback, and the thread itself sort of degenerated into minor bickering over the best way for people to do this mod for themselves.
Personally, I'd like to see some people who are having problems with their usb controller to try this and see if it helps them. In the process of working out just what was going on, I came to the conclusion that the original ACT design has some "questionable" layout issues (sometimes I try to be polite).
Anyway, to cut this essay short, you can find the original thread at this location, in all it's gory details, pictures and all. It's my intention to put together a real writeup and post it on my website, where anybody can reference it. Shouldn't take me more than a year or two...
Jerry
p.s. Nothing like throwing rocks at a hornet's nest for a first post, eh?