I sold a TinyTimer-Classic with assembly today. The assembly went fine… the testing did not. After several hours I concluded that sharing the MOSI/MISO lines was causing grief. After wrestling with several alternatives, I decided to retire TinyTimer-Classic. It will be replaced with an upgraded board called TinyPLC. This is an Atmega328 based unit and essentially rolls forward the work of TinyTimer under a more appropriate product name.
The new unit will increase in cost due to the larger PCB and the beefier Atmega328 cpu. While I regret increasing the cost of components, it is still a bargain compared to the cost of an industrial PLC.
Here is a preview of the board:
Tiny PLC 12 Jan 2014
Should have the initial boards in hand at the end of the month. This is the core design involved in TinyTimer Duo and TinyTimer KS. Look for the following product developments:
TinyPLC Single (this unit)
TinyPLC Duo (TinyTimer Duo)
TinyPLC Quad (4 channel version) I have to review the pin availability, but I’m pretty sure this is do-able.
I originally designed the tiny timer using an MJE3055 transistor. I did this because I had one laying around. Always a great excuse when hacking a project. For production purposes, that’s not usually the best choice. I decided that I would change over to one of my favorite transistors, the BC517. It’s a high amplification transistor with an Hfe rating of 30,000. This means that the signal amplification is 1:30,000. The first time I put a timer together with it I promptly fried it. That was unfortunate but a stark reminder to always check resistor values. So today I setup the breadboard to do some component validation. I wired a relay, BC517, and 1M ohm resistor. I then coupled it to an Arduino Uno. I don’t remember what sketch is on the Uno, but when I put a wire to pin 1 the relay started going off like a door bell. Good enough for testing. After an hour or two I’ll have accumulated enough cycles. It’s running at around 4 cycles a second. That yields 14,400 cycles an hour. I’ll let it go for a couple of hours. 28,800 cycles is a good break in test.
For your amusement I’ve attached a short video I took with my Nexus 4 Android phone.
I spent some time this evening revising TinyTimer Duo. I made both relays capable of handling AC loads. I also added a second input, and switched the chip in the design to an Atmega328p-PU which is the same as what is in some types of Arduino boards. This makes it fully compatible. The inputs are on the A/D lines which makes them useful for more than just simple switches. Each input sources 5v and is protected by a resistor.
Here is what the prototype board looks like. It’s approximately 4×2. It’s a little more spacious then some of my other designs.