Soooo.... Dave, what have you been up to lately? You haven't posted much.
I came across an article in April ed. of CircuitCellar dealing with Home Automation Control by Scott Weber and his implementation was quite inspiring.
Recently I have had the need to do some remote control on my tower, switching power on and off to the amplifiers etc. I needed a method of sending signals up to a control box on the tower to do that. RS232 or Ethernet were out of the question. Enter RS485, up to 16mb datarate and inversely proportional to length... which by the way can be up to 4000 ft. My needs were not that demanding since the tower is behind the house and only 40 ft tall, so maybe a total of 100 ft.
I downloaded the source code Scott Weber provided on the CircuitCellar ftp site. I am greatful I have had a lot of experience with assembly code and got to work on rewriting it to C, my language of choice. This didn't take that long, maybe a couple days... but I got to thinking what am I gonna do about talking to it. I needed a Win32 program to talk to my board. Again Scott had provided an example of a program aimed at home automation... not exactly what I had in mind. But, it was written in C# and used the MS Visual Studio development environment. I had been looking for an excuse to start learning Visual Studio... I guess this is it.
I installed the express version of Visual Studio and spent a couple weeks learning what should be the most mundain tasks were not working... cross theading calls were causing my hair line to receed even further. But... lots of research and examples garnered from netizens have helped me produce this....
This won't get me a degree in computer science but, it does the job. I have to say working with Visual Studio is a fantastic experience.. and thats coming from a linux monger... high praise indeed.
The code for the remotes is pretty much done. Turning on/off logic levels... i.e. relays and such.. is no problem. The protocol and timing-on-the-wire have been pretty much debugged. I spent a lot of time with that part. Here's a clue... use an external power source to power the RS485 wire network... NOT the USB source coming from your computer. Even though I had it all sitting on my desk, it was still flakey as hell until I hooked up the external P.S.
I have spent a lot of time with this project... the Win32 program and the code to drive the remote controls. There was one more peice of the puzzle that I wanted to work into this project also. The MCP2200 USB to UART controller chip was cheap and easy to work into the design. My master controller for the network was based on this chip and I'll have some drawings and code for all of you RSN.
Check the "Projects" link at the top of the page for more. I'll post stuff as I finish it.
Welcome to KD0YU.COM
This site is dedicated to the pursuit of EDA design, microcontroller development and programming... as it always has been. Throw in some linux tech, sendmail and mail filtering rules, perl programming, add some random thoughts and you get this mess I call my own.
This site was reincarnated on 15SEPT11 and not entirely open to the public.. yet. Content will be VERY limited while I get the site configured and tested. Obviously security is a concern and I want to make sure it's safe before I put it online.
I will be hosting some projects I've been working on in hopes that they may be of use to the community at large. I've recently been working on a PIC18F4550 development board. Simple and straight forward with a SOIC 8 MCP7840N RTCC chip onboard. I've also put together a port expansion board that uses the MCP23017 I2C Port Expander chip... looks very useful.
The boards should be here on or about 17SEPT11. I'll try and get some pix during my first assembly posted as soon as I can ;)
As I said earlier, not entirely open to the public. Project files, when posted, can be downloaded by anyone. If you care to post replies/input/questions, you'll need to register here on the site with a real email address (I'm an EE, not a spammer!) and a reason you'd like to post (english and intent test, could be hard for some ;). Spam sites need not apply.
I also enjoy working on the spam filters on my mail server. Kicking ass and taking ip's is a very enjoyable pastime (if your into that sorta thing). Mailfromd and MailScanner are a formidable pair. I get NO spam and I'm not about to start.
Enjoy your stay.
For those that would just like a user/pass, again apply for a user on the board and drop me an email stating your intentions. No gmail or hotmail accounts will be accepted... period! For pete's sake, if your serious about what you do, get a serious email address.
For now I have enabled OpenID login. Should make it a bit easier to access content here. I'll disable it if I feel it's being abused.
While all of this may sound like I'm paranoid or something, I assure you I am not. I just don't need the idiots and spammers floating around causing trouble. Serious inquiries only!
I recently found a library (albeit small) that bit bangs the I2C protocol on port1 of a non-i2c 8051. This is GREAT!. I could now get my legacy development system to talk to some of the newer RTCC's, eeproms, and port expansion chips.
My first order of business was to get my dev board wired to a Microchip MCP7940N RTCC I've had laying around for a while. I was stunned when it worked the first time! Fascination ensued and I spent the rest of the day coding a menu system to read/write the clock chip with time and date, alarms, alarm trigger output, and the ability to turn the backup battery on and off. I'd like to share this code with anyone else struggling with I2C or the MCP7940N (or both). I'll have it bundled and posted shortly. (17SEPT11)
After working on version 1.0 for a while I realized there were a few shortcomings in the design. Not show stoppers by any means, but features that were handy to have on the board... not on a peripheral. Version 1.0 worked as intended and is running a temperature monitor and RTCC continuously as I write this. There was not a flaw on the board, I am really happy with it.
But, it needed some extras so I started work on version 1.1. I added a dedicated LCD port, a MAX232CSE, RS232 connector and glue, and a USB port/connector. The design software didn't have an up to date component for the USB connector so I needed to model a new one. If you've ever had to layout a complex footprint, you know what I'm talking about when I say it takes time.. cuz it better be right! This brought the board size to a whopping 3"x3.5". Wow. During the research on the chip for the USB support I learned about the SSP port and it's functions. STOP THE PRESSES!!!
They just arrived, now if I could just get this grin off my face I could assemble one of them.
Smaller than a credit card. PCBCart in China did a fantastic job on the boards. I submitted the artwork on the 9th of this month using their standard 12 day service, and got the boards on the 17th via FedEx Standard! Now that's service! Much better than my experience with PCB-Pool.