TinkerKit MosFET module with Spark

I’ve been working with @peekay123 on getting this tinkerkit MosFET module to work with the spark core. Here’s the problem I’m having. I’m getting power to the module fine, and I’m also getting the signal LED to blink according to my code, but I’m not getting any output voltage on M- and M+.

I’ve checked the module on my arduino and it works fine the sample arduino LED blink code.

@peekay123 might be working on a solution at the moment, but I thought I’d give him a break for a moment and see if anyone else has any thoughts.

I’m using the basic LED blinking code for testing.

 int MOTOR = D0;

void setup()
  pinMode(MOTOR, OUTPUT);

void loop()
  digitalWrite(MOTOR, HIGH);
  delay(20000);   // Pause for 20 seconds
  digitalWrite(MOTOR, LOW);
  delay(20000);   // Pause for 20 seconds

I guess you have taken this into account, but the FT520’s datasheet states that the Gate Threshold Voltage is typically 2.9V but might be as high as max. 4V. So the 3.3V the Core deliveres might not be enough, especially if there occured some voltage drop along the way from D0 to the Gate of the FT.
To test this, you could use your Arduino and devide the output voltage down to 3.3V with a voltage devider.

You made a good point. Here are some things I’ve tried. On the arduino if I plug the module into the 3.3v the module doesn’t work, with the 5v it does. Now when I was using the spark, I was using a breadboard and had the module plugged into the same VIN line that was powering the board. I was using a dc to dc buck converter and had the voltage set at 6volts. Maybe I had it too high? I’ll try again.

@james211, are you using the buck to power the Spark from 12V through the Vin? If so, 6V is the max voltage so you may want to drop it to 5.5V. The issue is the a) the power to the MOSFET board for its logic which looks like it needs to be 5V and b) the logic level to drive the “signal amplifier” to logic 1 on the MOSFET board. Any chance you can find the part number on that 8-pin chip on the board?

So I have the voltage set at 5.5v and still no luck.

The little chip is very hard to read but what it looks like is 31TI RSR does that make any sense to you?

Ok, so make the dc-dc output 5v and tie a pull-up resistor from the Spark pin to 5v. Use a 4.7k resistor.

Here is a closeup of that chip:

When you say from the Spark pin to 5v what spark pin are you referring to?

Sorry. From the D4 pin to 5v :slight_smile:

No luck… :frowning:

Ok, if you connect the input on the MOSFET board to +5v, does the motor turn?

Nope. I even removed the sparkcore from the equation completely and still nothing. I’ve double checked that it is getting the 5v and it definitely is.

And if you connect the MOSFET input to GND?

You did say you had this working on your Arduino, right?

Yes, it works perfect on the arduino. When you say the mosfet input to ground do you mean the ground pin on the mosfet board? I tried connecting the mosfet directly, both positive and ground directly to the buck converter with and without the signal attached as well as with and without the 4.7k resistor.

Let’s get back to the Arduino. What you need to do is to test the MOSFET board by manually connecting the input to +5V on the arduino and then GND, again on the arduino.

So, the MOSFET board Vcc is connected to 5V on Arduino, GND to GND on Arduino and input on MOSFET to either 5V or GND to see which one turns the motor on.

I made a discover…and maybe this is what you wanted me to do but I’m confused by you talking about the mosfet chip vs the mosfet board. If I touch the center pin of the mosfet directly the motor runs. Here is a visual.

@james211, what is mean is on the 3-pin connector! That small chip is most likely an OP-AMP. If you are correctly powering the BOARD (via the 3-pin connector), the PWR LED should light. Then if you connect the INPUT pin on that 3-pin connector to 5V or GND, the OUT LED should light on one of those.

Here is a picture of my current setup and currently the power light is on, and the OUT LED blinks every 20 seconds, which to me indicates its getting the signal from the spark core.

The INPUT pin connects to 5V, Signal to D0 (I was playing at the moment between D0 & D4) and Ground goes to ground. I’ve also tried the ground on the other side of the spark core.

@james211, take the wire from D0 and instead connect it to 5V or GND to see which one turns on the motor. If this does not work, something is fishy since this works with your arduino.

If I connect the wire from D0 to 5V the motor runs.