Digital Output Low Level Voltage

I am measuring (with a relatively cheap voltmeter) the output low level voltage and it gives me 1.65V. Why is this? I would expect 0V or similar. The high level is 3.3V which makes sense.

Did you use pinMode (pinX, OUTPUT); ? Are you trying to sink or source a lot of current, more than 20mA?

This is the only thing I use:

#include <SPI.h>

const int chipSelectPin = 10;
const int resetPin = 3;

void setup()
   pinMode(chipSelectPin, OUTPUT);
   pinMode(resetPin, OUTPUT);

   digitalWrite(resetPin, LOW);    
   digitalWrite(resetPin, HIGH);

   digitalWrite(chipSelectPin, HIGH);


void loop()
   unsigned int result = readRegister();


byte readRegister()
   digitalWrite(chipSelectPin, LOW);
   SPI.beginTransaction(10, SPISettings(4000000, MSBFIRST, SPI_MODE1));
   SPI.transfer(10, 0x91, SPI_CONTINUE);
   SPI.transfer(10, 0x20, SPI_CONTINUE);
   SPI.transfer(10, 0x00, SPI_CONTINUE);
   byte result = SPI.transfer(10, 0x00, SPI_CONTINUE);
   digitalWrite(chipSelectPin, HIGH);
   return result;

Also, if I generate MOSI/SCLK with the GPIO commands (digitalWrite), everything looks normal. Is there any SPI pull-down/standard/divider enabled internally?