Thursday, September 15, 2011

ViewSonic VX2235wm and ADSL issues

I know this is a true story because it happened to me.


On a non robot slant I got to do some consumer electronics repairs recently. I have a 22" wide screen monitor on my main desktop, a ViewSonic VX2235wm. The desktop is five plus years old but still working well and more than enough of the odd internet cruising and mplab activities. The hard drive was starting to throw bad sectors so we decided to upgrade the machine to Windows 7 and replace the old hard drive. The wife installed Windows 7 fine. Everything was going along fine until we tried to access the internet. No joy. The Netgear ADSL wireless modem would drop it's internet connection whenever this desktop was on. Booting back to the XP setup, same issue. We also remembered the last time this desktop was on the laptop lost internet connection, but previously things had been fine.


We found that when the desktop goes on, 30 seconds later the internet connection gets dropped. Desktop goes off, internet come back. Wacky power issues?


Then I triggered it wasn't when the desktop came on, it was when the monitor came on. After replacing power cables things still weren't working. Different power circuits, still the same issue. We ran an extension lead from the 15Amp circuit in the shed, same issue. In all this time the monitor was working fine. The picture was fine, no odd behaviour.


Powering down the monitor and trawling the internet the wife found this monitor suffered from the common "bad capacitor" issue. Various electronics components get made with substandard capacitors which leak, fail, etc well before they are expected to. Based on what we were reading the wife suggested that I try and fix the monitor. At first I was reluctant to take apart a working monitor in case I made the issue worse and would be unable to fix it. However as the wife pointed out the monitor was useless as we lost the internet connection every time we turned it on. To the shed.


Taking apart the monitor was easier than expected. A few screw and then some gentle prying with a flat tip screw driver popped off the case. I didn't even break any of the snap together lugs. My daughter helped out by poking things with a screwdriver. A few more screws and the power supply circuit board was accessible. Three seconds later it was obvious what the issue was. The 400V 120uF capacitor had a nice blob of black goo coming out of it. Without that capacitor a large amount of electrical noise would be going back into the power line. This noise was so great it caused the ADSL modem to lose sync. Glad I've already had kids.


400V capacitors aren't stocked by the normal hobby electronics stores I go to like Jaycar, etc. Instead I went online to RS Components for the part, mainly as they were offering free shipping. $8 and a week and half later I had the replacement part. Out the old and in with the new. After putting the case back together I did a smoke test and the smoke stayed in. Taking the monitor back inside and turning it on, success! No more drop outs of the ADSL line. Happy days again. Now the wife can finish setting up the rebuilt desktop.


I can't see how electronic repair shops stay in business. For even a simple job like this the time cost alone would be the price of a new monitor. So next time you need a monitor check the skip bins. An hour, a soldering iron and some capaciors later you might have a working monitor.

Wednesday, September 14, 2011

Mini projects II



5 LEDs ready to shine


When you don't have time to do a real project you make up one. While doing some microcontroller tests I was using four separate LEDs. This was a bit messy with all the current limiting resistors. What would be better would be a small set of LEDs with resistors in one handy single block.


Ideally I wanted to use a SIL resistor array but didn't have anyone selling them locally (Little Bird Electronics now do). So it was going to be individual resistors and 3mm LEDs and some tight soldering. Also I wanted long header pins but no luck. Of course 3 days after I had finished Little Bird Electronics started selling long header pins.


My breadboard has two rows of holes above and below the normal breadboard area (ie for power rails). These power rail blocks have five hole groupings (instead of a continuous row of holes) so my LED stack would be five pins wide. That way I could plug in the block of LEDs into either the positive or ground rail depending on the circuit. As I am normally running 5 volts on my breadboard I used ?? resistors to limit the current to the LEDs.


The base for the project was a cut down piece of prototype board. Some tight soldering of header pins, LED, resistors and everything was done. I also had to file down the solder on the LED and resistor pins as the normal size header pins meant there wasn't much room underneath to ensure a good fit into the breadboard. Now the 5 bit loving can began.

Sunday, September 11, 2011

Mini projects I



Prototype board chop shop


For the last couple of months I've been working on a large dollhouse for my daughter so work on electronics stuff has pretty much halted. However I did slip in a few quick mini projects. One was a test circuit for hobby servos.


On my long list of things to try is controlling servos with a microcontroller (via assembly language). Before I started that I wanted some way of testing the various servos I have. All are bargain bin buys or salvage so I didn't have a high degree of confidence in them working. I didn't want to be banging my head against the wall debugging assembly language when the issue was with the servo.


So I did a quick internet tour and found a simple servo control circuit based on the 555 chip. (http://sarconastic.tripod.com/servodriver.html) . The site had an excellent guide to the operation and troubleshooting of the circuit. Hats off to that.


I setup the circuit on my baby green breadboard first. Hooked up the first servo and success! Servo go up, servo go down. The daughter loved playing with it to the point that the pins on the 10K pot used were almost snapped off. I did have one servo fail as it only moved a few degrees and stopped. However after taking the servo apart I remembered many years ago I had modified this servo to do continuous rotation (ie not a server, just a gearhead motor really). The passage of time...


The breadboard was cramped and messy so I decided to do the project properly (and to be honest just wanted to do a little project so I feel like I'm making progress). Since the circuit was just a 555 chip and some associated components I used a small prototype board which I cut down to size to fit in the small project box I was going to use. I used molex connectors for the servo and power plugs to be attached to. I considered having the batteries inside the project box (using a 9V battery with a 7805 regulator) but decided that since this test box would get very little use having batteries slowed discharge and leak was a bit of a waste. Also the self tapping screws used in the project box would only strip out over time. So external power was the go. The only other external part was the 10K pot used to adjust the servo position.


To support the two molex connectors (a 3 pin for the servo, a 2 pin for power) I glued a scrap piece of prototype board to the underside of the lid of the project box. I used a step drill bit to drill out the hole for the 10k pot. An hour of soldering later everything was almost working well. The prototype board I had used under the molex connectors needed a bit of probing as the glue had meant the solder didn't connect to the molex pins very well. A bit more heat and solder solved that.


Again the self tapping screws of the project box were a pain. Soft, poor quality metal screw heads.

Tuesday, May 3, 2011

Varbox circuit diagram



Created with TinyCAD and exported as a png file

Wednesday, April 20, 2011

Variable resistor box


Point to point wiring - yummy


While playing around with a current microcontroller project I found myself constantly swapping around the same resistor for a few different valued resistors. This led me down the path of wishing I had something to plug into a circuit that could change the resistor value easily.

I had seen resistor wheels before but they usually only had a limited range and were at the standard set resistor values. In essence a multipole switch. I wanted variable resistors. I had seen a project that had five variable resistors linked in series (not sure where I saw this, lost in the internet haze). The resistor values started at 1K and jumped up in value (10K, 50K, 100K, etc). That was closer to what I wanted. But I knew that variable resistors all have a tolerance range so it would be better to bypass the variable resistors I didn't want to use. It also meant I could set one variable resistor to a value, switch it out, set another and toggle between the two. Great for 555 timer circuits for example.

So I wanted half a dozen or so variable resistors in series with switches attached so I could bypass any variable resistor as desired. For values I chose 1K, 1K, 10K, 50K, 50K, 1M. The first 1K was a 25 turn precision type. The rest were the single turn type. Originally I was going to use a 100K resistor as the fifth resistor in series but the store was sold out so I went for another 50K resistor. I used SPDT switch to bypass the resistors. Finally I used a 2 pin molex connector to attach my test leads to. I would make up a few test leads with different ends (IC hook testing connectors, alligator clips, breadboard wire plugs).

To house everything I used a black UB5 jiffy box. It was the smallest box that could fit all components on the lid with a reasonable spacing. All wiring was simple point to point. I had been waiting for a good project to try out my new soldering iron station too.

After a quick mud map sketch I created a proper schematic with TinyCAD. Five minutes later I'm all done. There is nothing hard with this circuit but I'm finding as I tend to only get short amounts of time to spend on projects spread across a long period of elapsed time so documentation is a must.

Since I would be cutting out 11 holes and 2 squareish slots from the UB5 box lid I created a drill template using CadStd. A lot of mucking around was involved as I remember how to use CadStd and finally I had a nice template. As I planned to use my milling machine to actually make the holes the template was more to make sure my measurements were right and provide some sanity while making cuts.

When I came to drill out the holes (both the variable resistor and switches have round shafts) I used a 3-12mm step drill. The light plastic of the UB5 box lid can't really handle having an 8mm drill (needed for the variable resistors) go through it in one hit. Plus the plastic was only a few mil thick so the step drill went through it very easily. The mill made making a straight line of holes dead easy. The quality difference over my $100 drill press in terms of chuck wobble and control makes me think my drill press is going to get pretty dusty. For the 25 turn resistor I drilled two small holes and then filed out the remainder to get a rectangular slot. If I had been really keen I could (should) have used the slot cutter. For the 2 pin molex connector I used a dremel to cut out some material so the header sat recessed slightly so the pins were accessible from the other side of the lid. Finally I used an off cut of prototype board to glue (with 2 part epoxy) under the 25 turn variable resistor and 2 pin header to provide some more support. I didn't want the 25 turn resistor to be pushed through the lid and I didn't think a bit of hot glue would hold it well enough.

When the glue was dry and after cleaning up the holes I mounted all the variable resistors and switches. Ah, straight lines of components. It really does make a difference. Next was an orgy of wiring stripping, tinning and point to point wiring. Lots of double checking for shorts along the way. Then the lid was screwed onto the UB5 box. This was when I found the only bit of this project that failed. The self tapping screws that came with the box were rubbish. The head of one stripped and another started to go. Cheap soft metal were used in the screws. Not happy Jan. Finally I make up some tester cables and printed out some labels.

The majority of the parts for this project came from Jaycar. No reason other than Jaycar is my closest store. The IC testing hooks and alligator clips came from http://www.dealextreme.com/.

Parts List

Jaycar parts


  • SPDT switches (ST0300)

  • Variable resistors (RP8510, RP8516, RP8524, RP8504, RT4644)

  • Dials (HK7734)

  • UB5 jiffy box (HB6013)

  • 2 pin molex header (HM3402, HM3412)
Dealextreme parts


  • Electrical Wire Testing Hooks (10-Pack)

  • Multimeter Testing Clamps (10-Pack Small)

Tuesday, February 22, 2011

Pennybot

Pennybot is my attempt at a second mini sumobot. A sumobot with brains (or at least a microcontroller), IR sensors to detect opponents and possibly other sensors (a front touch sensor looks like a good idea). Again I will be constructing the chassis mainly from scratch. For motors I had two GM2 motors from Solarbotics. I really liked the offset design of the motors and skinny wheels available. Getting Nudgebot to fit in 10x10cm box was quite a challenge with the standard Tamiya gearbox and wheels. The GM2 motors will make life much easier.

For the chassis I tried many ideas before getting it right. All were around the same concept with the motors mounted on pieces of 90 degree aluminium which in turn are connected to a base plate. Just the positioning and battery location kept changing as I kept finding flaws in the designs. Part of this was due to looking at the design over a few months rather than spending a whole day just to work things out.

In the end I mounted both engines on 80mm lengths of 90 degree aluminium angle. Due to the position of the holes in relation to each other I used a paper template rather than dead reckoning to position the holes. The end result was quite a nice job (compared to other jobs I've done).

For the base I used the Tamiya plastic base plate like I had used on Trackbot and Nudgebot. Pre spaced 3mm holes are wonderful.

I mounted the motors on the bottom of the aluminium angle in order to fit the batteries underneath the base plate. This put the batteries at the lowest point and ensured the centre of gravity was as low as possible. To stop the batteries being damaged or accidently falling out I made a cover plate from some thin metel sheet (The EMF covering from inside an old Sun unipack disk enclosure). Instead of bolting the cover plate to the base plate I used a 3mm tap to put a thread in the cover plate. This meant I didn't waste space by needing room for nuts. Another case of "why didn't I always do this". At least that tap and die set purchased was justified.

For batteries I am using 5 x AA batteries. The motors are rated at 6V so I'm still working out if I either over supply the motors, use a diode to drop the voltage or just make a separate 6V tap. I intend to use a LM2940 low voltage regulator to provide a 5V supply off the 7.5V from all the batteries. How this regulator handles the noise from the motors is to be determined.

I did a quick temporary solder to add a power switch and did some push tests with 4 batteries (6V). No issues pushing the necessary weight (500gm). However I am slightly concerned by the amount of wobble in the axle on the motors. Straight line driving is really needed but there was definitely some travel. Hopefully when I screw the wheels to the axles (rather than just push them on) this will tighten up the slop.

Monday, February 21, 2011

CadStd review

Much in a similar vein to using TinyCad to produce semi professional schematics I decided to up the level of my designs with a CAD package. I needed something that was cheap, easy to learn/use and could produce 'true size' paper print outs. The dual end goals were to document my designs but more importantly be able to produce templates for machining (eg drilling templates). Previously I had used graph paper for these tasks.

I had no experience in using CAD packages or technical drawing. So the first step was some research into what a CAD package can do and what to expect out of one. I would recommend anyone looking for a CAD package do this first as some CAD programs are more focused on particular tasks than others (eg 2D vs 3D plans).

After some web research I came across CadStd (www.cadstd.com). The product has two versions, a free unlimited use lite version with some restricted functionality and a licensed pro version with full functionality. The lite version could be all that you need in cases where you are only doing simple plans. After using the lite version to do the tutorials I purchased the Pro version at $37.50 USD. The version I have is 3.7.2. CadStd is a 2D program but it does do isometric projections.

The install was simple with the total install size approx 5mb. There is a tutorial that runs through the basic functionality in a structured lesson format. By the end of the tutorial I was able to construct some simple plans. There is also a user guide. That said you will need to a few hours playing with all the drawing functions just to see how they work. I found some of them odd to begin with (like the three ways to draw an arc) but I suspect that is due to a lack of experience in both CAD and technical drawing. This is definitely a case of the more you do the easier to becomes. CadStd isn't MS Paint with a bit added. It's an engineering tool. You will have to work to use this but that seems to be constant across the CAD field. Feel free to insert "learning curve" in there too.

The litmus test was turning a technical drawing (the Solarbotics GM2 motor plan) into a drilling template. The drawing was detailed but not to scale. After an hour of fiddling I had drilling template ready for use. So success. Did I need the Pro version to do this? No. However I like to support people making tools like this.

I would recommend CadStd to anyone who has limited time to learn new products but is sick of using graph paper to make substandard templates. Be prepared to spend 2-3 hours to learn how to use it and expect to make so odd mistakes along the way. Ctrl-Z is your friend.

Tuesday, February 15, 2011

A(nother) headbot



Another project coming out of "Junkbots, Bugbots & Bots on Wheels" was the construction of a headbot based on the 74AC240 'biocore'. Again I would fully recommend this book for it's interesting projects and "make stuff from junk" ethic. The biocore was constructed according to the instructions in the book. I used 22uF capacitors as suggested.

My first attempt at a base was a failure. I used a small 3-6V DC motor with a pulley attached, which was geared down (via a belt drive) to another pulley that was attached to a larger base plate which had the batteries, biocore, etc. In essence trying to simulate the book example of a cassette deck setup. However the balance was totally off and the motor would simply jam under load (or at best spin and the belt would slip). What I needed was either a cassette deck or a gear head motor. Frustrated I put the biocore and other parts back in the big box of components for another day.

A couple of years pass. Kids arrive. My soldering iron gets rusty.

One day at Dick Smith (when they still sold electronics) I purchased an old and heavily discounted line following robot kit fot $20. The design was poor and complicated but at tht price I wanted the parts. Two gear head motors, a relay, seven IR leds, etc. Bargain. Now I have a gear head motor.
The 74AC240 was purchased from Solarbotics. For the base I used the wheel from the above mentioned robot kit as that was keyed to fit the 4.5V gear head motor. The phototransistors were salvaged from an old balled computer mouse. The base plate is a lid from a vitamin container. While this lid was a great size it wasn't the best choice.

My power source was to be two 1.5 volt AA batteries. For balance I mounted these batteries in two separate battery holders on each side of the motor. I used two part epoxy glue to stick the holders to the lid. However once the glue had dried I found that the glue simply peeled off the lid/base plate. Vitamin lids were obviously made to be highly non stick to stop nasty molds, etc from attaching. So instead of glue I used small (2.5mm) self tapping screws to attach the battery holders to the base plate. The screws came from my collection of salvaged cdrom bits.

The power switch was a small SPDT switch I had which I mounted sideways into the rim of the base plate. Then all that was left was to wire the various components together and put in the biocore. I couldn't decide on a good way to attach the biocore to the base plate so I left is 'hanging' but held in place by the wiring. The wiring was made to be just long enough so there was enough tension to hold the biocore in place. Finally the two eye sensors were attached to the rim of the base plate with U-tack. I didn't want to permanently mount the eyes as I wanted to trial the best setup.