Fixing A String Trimmer

I got my first string trimmer a couple of years ago, but immediately ran into trouble the next summer because I didn’t know how to winterize my gas powered tools. In fact, I just left it outside under the deck, and after a cold winter, as anyone who knows anything about engines would know, it didn’t start. I got some help from a friend, and he thought it was a problem with bad gas, which is a common problem with leaving gas in extreme weather.

The first thing we tested was the spark plug. I actually broke it when pulling it out, so there was no question about whether or not it needed replacing. I bought a new one, and still it wasn’t working. At this point we should have tested again for spark, but we didn’t think that gas was getting in there. This is where I learned a little trick to get small engines started. We took an eyedropper full of gas and squirted it into the cylinder beneath the spark-plug, carefully re-threaded the spark-plug (so as to not break it), and gave it a few pulls. Now, although this didn’t work in this case due to other problems that I still need to explain, this trick has come in handy in other circumstances.

So, what was the problem? Well, I set about testing for a spark by touching the metal of the spark-plug to metal on the engine (while the spark plug was still attached to the cable coming from the ignition coil), and pulling the starting cable. In my case there was no spark, but you should see a blue spark jumping across the two contacts of the spark-plug. Of course, yours could be dirty, but mine was brand new. Here is a YouTube video explaining how you can do this. Do take caution, because the spark produced could lead to death, so don’t be touching the metal, and keep it away from gas while testing it!

stringtrimmer

I also set about testing the kill switch just in case it was constantly on. I tested it by simply unplugging it and then trying to start the string trimmer again. This also didn’t produce the intended results. In my mind, there could only be one more reason there was no spark and that was the ignition coil. I looked it up online how to test it with a multi meter, and sure enough it was broken. Ignition coils can be expensive, but I found a replacement for a reasonable price. After some clean up, and installing the new ignition coil, it now runs great.

I guess I learned my lesson about winterizing my gas tools, but that shouldn’t break the ignition coil right? Well, there are two things that greatly contribute to ignition coil breakdown. One is excessive shaking, but my string trimmer runs really nice. The other thing is too much heat. Now, that summer, before it broke, I ran it like a horse, always at full power. (It was my first time using one.) I actually had black smoke come out of the muffler on several occasions (I think that the black was from burning oil). Anyways, I think that the ignition coil was broken before I stored it away for the winter. My improper storage made it harder to identify the problem, but I took some precautions to reduce the chance of it failing again. First, I turned down the idle speed (as it was pretty high). Second, I put some plastic washers between the ignition coil and the engine housing to reduce the amount of heat that it can absorb at once. And finally, I also oiled the crankshaft with some 2-cycle oil to reduce the head produced. Of course, the easiest way to prevent an overheat is to just run it slower, which I have been doing, but when I need it, it still has great power. Anyways, learn from my mistakes, and if you have a similar problem, maybe this will help you identify it.

Broken Dremel

Just the other day I was working on a project, and decided to fire up the old dremel. It turned out that my plans were about to change, as I accidentally broke it. Yes! I broke a tool. It turned on just fine but the switch got stuck in between the on and off setting.

It started revving up and down as I tried to get it all the way on or back off, but the button wouldn’t budge! Smoke started to pour out the ventilation grate, and I speedily unplugged it from the wall. So, what next, it’s broken right?

Well, after waiting couple hours for any potentially dangerous capacitors to discharge, I set out on a repair mission. When I opened it up, the culprit was immediately identifiable.

Burnt Button

Here is the button that I removed from the dremel. Notice anything wrong? The bottom was all burnt, and it smelled horrible too. In case you’re wondering, yes, it’s still stuck.

Lucky for me, my dad has a stash of old electronics in the closet, and as it turned out there was a near identical button in there. Here is what it looks like after some de-soldering and cleaning.

New Button

Yes, I know it is a DPST (double pole) switch, but when I say identical, I really meant it has the same voltage, amperage ratings, and it fits. As you can see in the picture, I just covered up one sides terminals with heat shrink to ensure insulation.

Here is what the insides of the dremel looked like when disassembled.

Inside the Dremel

The button is just connected with those two female electrical sleeves, and the wheel down there is the potentiometer for speed settings.

Nothing else looked burnt, so I wired it all up and gave it a go (ready to unplug it from the wall at any indication of smoke).

Fixed Dremel

It worked just like before, and after a minute of running at full speed, there are no apparent problems. I’m sure glad to have this tool back working again!

Relay and Thermistor

I have been tweaking my Arduino project lately and have got some decent results. I started by setting up the relay and thermistor separately. The plan was to turn on and off a fan based on when the room was hot or cold. Of course the hot and cold values were just our preference as set in the Arduino’s code.

Here is what the current prototype looks like.

Arduino Thermistor Relay Box

Graphing the serial output was something that helped us choose what temperature to turn on and off at. It currently sits near the heater and helps to circulate the warm air.

Thermistor Sensor

Temperature readings are a very useful data source. From mini weather setups to indoor readings, the thermistor sensor has many possible applications. The Arduino is a great board for gathering sensor data, being so low powered, easy to use, and giving precise controls and readings with its built in crystal oscillator.

I built this little setup using a Tinkerkit thermistor module and an Arduio Uno.

Thermistor Wiring

This module has a NTC, 100k, disc thermistor. I used a 1k resistor on the output pin coming from the thermsitor.

Thermistor Sensor

I borrowed some code from this forum post. You may have to change some values depending on what thermistor, resistor pair you use, but that code should give you a near approximation. For a more in-depth, accurate approach, consider reading this post.

Button Controlled Relay

Do you ever get tired of getting up to turn the light off? Is that fan running when it doesn’t always need to be? A relay is a simple switch controlled by a small input signal, and when paired with an Arduino board, it can be told through code to turn on under specified conditions. This gives more control than a manual switch, and more convenience.

Button Controlled Relay

I am using an Arduino Uno and a TinkerKit relay module in this example. The red wire coming from the relay is 5v, the black wire is GND, and the center orange wire is the signal input wire to activate the relay. I put a button in to control the relay, and that required more code.

I ran into debouncing problems, and had to do some research. With push buttons, the button could be slightly pressed and send multiple short signals. As you can imagine, your lights flickering on and off like that would be an annoyance, and it would be hard to stop the flickering in the desired position, on or off. After reading, I found that some had suggested a 10ms delay in the loop would solve that problem. Here is the code I used after some edits.

const int BUTTON_PIN = 7; // set button pin
const int RELAY_PIN  = 3; // set relay pin

int button_state = 0; //variable for button's state
int button_state_old = 0; //variable to store old button state
int relay_state = 0; //variable to store relay state


void setup() {
  Serial.begin(9600);
  pinMode(BUTTON_PIN, INPUT_PULLUP); // set arduino pin to input pull-up mode
  pinMode(RELAY_PIN, OUTPUT);        // set arduino pin to output mode
}

void loop() {
  button_state = digitalRead(BUTTON_PIN); //read button input value and store

  if ((button_state == HIGH) && (button_state_old == LOW)) {
    relay_state = 1 - relay_state;
    delay(10); //10ms delay
  }

  button_state_old = button_state; //set old button state

    if (relay_state == 1) {
    digitalWrite(RELAY_PIN, LOW); //switch relay on
  } else {
    digitalWrite(RELAY_PIN, HIGH); //switch relay off
  }
}