Digital Pins 8-13 Not Working

hi all,

i am very much a beginner with arduino so please bare with me. I have a Arduino Duemilanove board (328 version) I have it connected up with flash to switch a number of relays which all works fine.

The problem which I am finding is that digital pins 8-13 aren't working at all, i have searched the web and found some information to do with the spacing between digital pin 7 and 8 but am not sure exactly what this means.

I am already using digital pins 0 to 7 and really need 2 more pins, I am assuming that the problem is something to do with spacing which I have read about?

Any help or information would be much appeciated, ie. how to power pins between 8-13. I am almost certain that it isn't my flash code, the same code works for all my other pins before the spacing between pin 7 and 8.

kind regards

The spacing has nothing to do with it. That's just referring to the physical distance between pins 7 and 8.

Did you do something to hurt those pins? IE, try to source too much current by trying to use a relay directly, etc.?

Try a simple blink sketch on all of those pins and use a DMM or LEDs to see if they even work any more.

Have you got some code we could have a look at?

We are all suckers for a bit of code! ;D


I have tested the same code on a second arduino board and I get exactly the same problem, which suggests it's something to do with my code.

I am coding the using flash. I have tried uploading a different firmdata onto the board. The firmdata I am currently running on the board is version 2 of the glue firmdata found here Google Code Archive - Long-term storage for Google Code Project Hosting.

I have also uploaded the blinking example straight onto the board to check the pins 8-13 and putting a led into the ground and digital pin 13 it blinks like it should.

I assume this means that the problem is with my flash code rather than the board. In the comments on the firmdata it says:

"This firmware augments StandardFirmata with Servo support
on pins 9 and 10, using the SERVO_CONFIG SysEx message proposed
as an extension to Firmata 2.
Pins 9 and 10 are usable as normal I/O/PWM, until they are configured
for servo use with the SERVO_CONFIG sysex message. It is not possible
to detach servos right now.

TODO: add Servo support using setPinMode(pin, SERVO);
What should behavior of this function be?"

This makes me think that it isn't the firmdata as stated above it says pins 9 and 10 can be used as normal I/O pins.

I have attached the flash code which I have created, with the code all the pins from 0-7 work fine but when I call any pins from 8-13 they don't work. The light on the board flashs to say something is happening but the my leds don't light.

I can't imagine I need to referance digital pins above 7 differently.

anyway my flash code is attached below

kind regards

I think I have partially solved my own problem. I tested all of them with pwm flash code and they work with an led fader example.

I was wondering though does anyone know if it is possible to turn a pwm pin into a standard digital pin?

The glue arduino to flash says to just rename the ledpin but that don't work. Not sure if this thread is in the corrent place now I have narrowed the problem down to the flash to arduino software.


PWM pins are standard digital pins, with extra capabilities. Every PWM pin functions as a standard digital pin, but not every digital pin functions as a PWM pin.