Using the 595 with shiftout()

Hello there. I have set up a 595 attached to my Arduino clone MC-NOVE board, as shown in the shiftout tutorial.
The basic process certainly works, but for some reason Q0 either doesnt light up or takes a long time to light up, and Q7 only comes on when I put my logic probe on 595 pin 7. Looks like some kind of buffer problem maybe?. When I run the second example with the serial read, entering a zero does nothing for a few seconds, then lights up flakily at first, then stays on eventually.
This is for a level indicator where I want LEDs “on” up to the current level. I have done it just using 8 digital outputs from the board and it works fine, but I need to free up inputs for other processes. This is my circuit to test the setup:

//Shiftout level indicator
int latchPin = 8;
int clockPin = 12;
int dataPin = 11;
int levelArray = {1, 3, 7, 15, 31,63, 127, 255};
void setup() {
pinMode(latchPin, OUTPUT);
pinMode(clockPin, OUTPUT);
pinMode(dataPin, OUTPUT);

void loop() {
for (int j = 0; j < 8; j++) {
//for debug - the numbers all print in sequence
// Latch low / shiftout /latch high
digitalWrite(latchPin, LOW);
shiftOut(dataPin, clockPin, LSBFIRST,levelArray[j]); //
digitalWrite(latchPin, HIGH);

I am driving an LED bargraph using a 390R resistor array.
I am a bit new to this, I’ve only had my board for a few days. Fortunately I know C++ moderately well.

Any clues

your sending it integers, each number is a byte

if you want "255" for all on try 0xFF or B11111111

other than that how is it wired

Hmm no that was not the problem - it worked the same with B1, B11,....B11111111 as 1,3,....255). But I did find the problem - well the two problems. One of my jumper wires was open circuit (!) and pin 7 was not making contact through the breadboard. Never had either of them happen before! So thanks for your advice, but it is now working beautifully.