10-31-2017, 09:34 PM
Given what I'd learned during all that digging to figure out the lock thing, and having been forced to dig around into some other implementations, I've gone back and started over again from scratch. Well, I'll end up pulling over most of the code I've done so far in one way or another, but just in terms of really getting the architecture right. Simplifying some things, and adding some more abstractions such as for Z-Wave controllers so that it could support things other than COM port based ones if need be.
And also now that I know how it all needs to go together, I can do a strict, top down architecture and try to really get a better layered result and test it well at each level. I really had to jerk the current code around quite a bit trying to figure how to make this work or that work, so I need another run at it to patch the holes in the wall. This also makes it much easier to test via a little standalone program as well.
And also to make it a separate Z-Wave engine facility, not to have it all just in a driver. The driver will end up being just a light wrapper around that engine. This could have some other useful business benefits down the road potentially as well, who knows. We have a number of technologies now thusly implemented so that they can be embedded into any program, like the IR system and the web server and some others.
And also now that I know how it all needs to go together, I can do a strict, top down architecture and try to really get a better layered result and test it well at each level. I really had to jerk the current code around quite a bit trying to figure how to make this work or that work, so I need another run at it to patch the holes in the wall. This also makes it much easier to test via a little standalone program as well.
And also to make it a separate Z-Wave engine facility, not to have it all just in a driver. The driver will end up being just a light wrapper around that engine. This could have some other useful business benefits down the road potentially as well, who knows. We have a number of technologies now thusly implemented so that they can be embedded into any program, like the IR system and the web server and some others.
Dean Roddey
Explorans limites defectum
Explorans limites defectum