Without testing the board(s) completely, by probing each component, it would be a bit hard to tell precisely. Your best bet might be to try it and see if it works ok, and if not, you'll see exactly what doesn't work... if that makes sense. Whilst not exactly the same issue, this answer, to the question How drastic is reversing the polarity of the power supply to a RAMPS board?, might help.
Now, after having correctly read your question (:-D), I see that you've already done the above, that I mentioned. Maybe these links will help:
There are other similar links on the RepRap Wiki. You might need to check the power MOSFET and/or the fuse. The problem is knowing whether the Arduino Mega is damaged, or the RAMPS board, or both.
However, perform some of the relatively simple checks, listed below, for the:
- Outputs;
- MOSFETs - in particular Q3 which is switched by
D8
, and;
- Fuses - in particular, F2 (
MFR1100
- refer to schematic below) as it is this fuse alone which provides 12V2
which, in turn, is used by D8
/Q3 for the heated bed. It should be noted that there are two 12 V supply lines and it is the latter which concerns the heated bed:
Also... There is something else to be aware of. Depending on what you claim you are attaching to the RAMPS board, the pins move around. You have 3 High Power MOS-FET's. You can use the RAMPS board to drive some combination of heat bed, fan and 2 extruders. Depending on what you claim you have on your printer, the pin numbers for things move around.
I kind of doubt that is what is causing you problems... But it might be...
and check the config (bit of a long shot)
Have you checked that you don't have any error condition (such as MAXTEMP
or MINTEMP
) which prevents the hotend from being switched on?
Be wary of randomly switching outputs for high current draw devices (such as the heated bed)
Your topic says "D8 to D10" but if this is your heated bed, you can't
do this. D8 is on the 11amp circuit. plugging the heated bed into D9
or D10 goes threw the 5amp fuse and it will blow.
To test the outputs:
But basically test the io ports
Remove the ramps
Setup a led and resistor in the D port you which to use (make sure led
is the correct polarity)
load up the blink demo program, change the port it uses to the port
you testing. Upload firmware (this will overwrite you current
firmware) Does it blink? yes the IO pin is ok, no, The IO pin is dead.
repeat for all io pins you which to test
See learn.adafruit.com for more information
Check the fuses
Check the fuse (the big yellow thing). Connect you meter to ground and both sides of the fuse in turn. You should get about 12v on both.
Continuity check
continuity test the heated bed with it not plugged in. is it possible you have an open in your circuit?
and
Have you checked the cables? Also is the led coming on for D8?
The next section of the thread deals with an overheated (50 A?) MOSFET. Check the condition of that:
ok think i found the culprit, any ideas why that blew?

A couple of good points
With the bed I found there are 2 issues at play here.
The standard MOSFET that is typically found in theese kits have an RDS that creates a fair amount of heat at 10A and at this level the
datasheet says stick a heatsink on. Screwing a piece of metal to the
MOSFET cures the issue I use an aluminium bracket because thats what I
had laying around, thermal compound helps too if you have that laying
around from a PC.
A lot of heat beds state that they are 1.2ohms but aren't ( just a variance in manufacturing prehaps? ) sticking a cheap multimeter
across it says this but in practice it may not be reading correctly. I
found this out because my bed kept tripping a 11A polyfuse but was
fine with a 12A meaning its somewhere around 1.1ohms. good news is it
means my bed heats up slightly faster!
but seeming as your transistor blew I imagine the polyfuse is ok,
watch out though you may find it slowly does kick in when the MOSFET
works properly because if its near its tripping point it can gently
heat up and stop the current.
A good test procedure - this is probably the most relevant check for your case
That's not the way it's wired. Check the schematic.
12V input on RAMPS -- fuse -- (PS1) + output to BED
GND -- Source[MOSFET]Drain -- (PS2) - output to BED D8
---------------- Gate
As you can see, the MOSFET is switching the GND connection to the bed.
There will always be +12V on the + bed terminal whenever power is on
as long as the fuse is good. There's an LED across the + and - BED
terminal on RAMPS to indicate voltage. If that LED is turning on when
you turn the heated bed on from the host software, then the MOSFET is
good. If it's not coming on, they you might have a bad MOSFET or your
+12V supply is bad. Verify using a voltmeter across the bed terminals and across the 12V bed supply input in RAMPS.
The Prusa heated bed PCB should have a resistance around 1.1 ohm.

Then there are some tests for the fuses. Looking at fuse F2 (the main culprit, which protects the 12V2
circuit):
You haven't mentioned checking the fuse yet. You should make sure that
it's not blown. If RAMPS is still wired to the 12V power supply for
the bed, you can check this easily witn a voltmeter between the + bed
terminal and the ground wire from your power supply (any of the -
terminal between the power supply and RAMPS). You should read 12V if
the fuse is still good. If not, then the fuse is probably blown. If
the fuse is good, then it's a problem with the MOSFET.
You should visually check the solder pads for the MOSFET to make sure
that all the 3 pins are still soldered well. The chip can get hot
enough to melt the solder resulting in broken connection. Then with
the power on, turn on the bed heater in the host software and measure
the voltage going into the gate pin of the MOSFET. That should be the
outside pin on the same side of the MOSFET as the + D8 terminal. You
should see TTL voltage there (probably close to 5V). If you do, then
it confirms that the MOSFET is bad.
BTW, 1.5 ohm is probably too high for the bed resistance. You need to
subtract the resistance that you measure when you touch your
multimeter leads together. There could easily be 0.4 ohms there.
and
As far as checking the fuse, another way would be to turn off all the 12V power to RAMPS and check for continuity between the + bed power supply input and the + bed output on RAMPS. If the fuse is still good, this should be a short (near 0 ohms). If you disconnect the + lead to the bed, then this would be more accurate.
For fuse F1, you can do the following, although it is extremely unlikely that this has blown as the rest of the circuit is working from the 12V
circuit:
There's also a separate fuse for the other 12V supply input to RAMPS that powers the rest of the controller, including the AT Mega. You should check that too in a similar way. With all the power off, measure the resistance between the leads of F1 on RAMPS. You can also double check the resistance on F2 (bed 12V fuse) right next to it.
That should give you something to get started on. Without knowing more details, it's hard to be more precise.