MAX5483, 10-bit digital potentiometer controlled via SPI by arduino
Try this. All I need was just rewrite the byte0 and byte1, added a delay after CS goes low and before CS goes high. Also I changed the order of the SPI.transfer() so that its COMMAND, BYTE 1, and then BYTE 0.

void digitalPotWrite(int value) {
digitalWrite(csPin, LOW);
//some delay here delay(1) ?
byte command=0x0;
byte byte0 = (value &amp; 0x03) &lt;&lt; 6;
byte byte1 = (value &amp; 0x3FC) &gt;&gt; 2;
SPI.transfer(command);
SPI.transfer(byte1);
SPI.transfer(byte0);
//some delay here delay(1) ?
digitalWrite(csPin, HIGH);
}


If this doesnt work, then add this to your setup.

SPI.setDataMode(SPI_MODE2);


Looking at the page 15, it seems that the clock base rests at '1'. And the data is captured on the clocks rising edge. I'm not sure what the default setting is for SPI.begin() but it could be that its set for SPI_MODE1 (just a guess).

Have a look at SPI for the different modes and what they mean.