Sketch funciona no Uno mas não no Nano

Depois de muito estudar sobre o módulo SPI conversor de analógico para digital AD7705 da placa vermelha que se vende por aí (AliExpress, Mercado Livre) e usar a biblioteca do Kerry D. Wong (AD7705 library), consegui fazê-lo funcionar certinho no Arduino Uno (clone com CH340). Porém, ao passar a mesma montagem pro Nano (também um clone com CH340, ligações conferidas e refeitas várias vezes, inclusive com troca da matriz de contatos) não funcionou.
O sketch de teste usa um gerador de tensão MCP4725 (DAC de 12 bits, I2C) que gera uma rampa de 0 a 5V e que é lida pelo canal A do AD7705 e pelo A0 do Arduino (só pra conferir). O canal B lê a tensão de 3,3 V.
Segue abaixo o programinha:

#include <Wire.h>
#include <AD770X.h>
#include <Adafruit_MCP4725.h>

Adafruit_MCP4725 dac; // Digital para Analogico (DAC)
AD770X ad7706(2.5); // Analogico para digital (ADC) com tensao de referencia 2.5V
float valorA; // Variaveis que vao receber as leituras
float valorB;
uint16_t valorDAC;

void setup() {
  Serial.begin(9600);
  dac.begin(0x62); // Endereço I2C do DAC
}

void loop() {
  for (int i = 1; i < 4096; i = i + 8) { //Incrementa de 8 em 8 ate o maximo de 12 bits
    dac.setVoltage(i, false); //  Gera uma tensão na saida do DAC
    ad7706.reset();
    ad7706.init(AD770X::CHN_AIN1, 0x1, 0x0, 0x0, 0x7); // Configura o canal A do ADC
    valorA = ad7706.readADResult(AD770X::CHN_AIN1); // Le a tensao gerada no DAC
    ad7706.reset();
    ad7706.init(AD770X::CHN_AIN2, 0x1, 0x0, 0x0, 0x7); // Configura o canal B do ADC
    valorB = ad7706.readADResult(AD770X::CHN_AIN2); // Le 3.3V
    valorDAC = analogRead(A0); // Le o que foi gerado no DAC
    Serial.print(valorDAC); //Escreve o valor gerado no DAC
    Serial.print("\t"); // Tabulacao
    Serial.print(valorA); //Escreve o valor A
    Serial.print("\t"); // Tabulacao
    Serial.println(valorB); //Escreve o valor B
  }
  Serial.println("***FIM***"); //Soh pra marcar o final da serie
  delay(5000);
}

Qual é a diferença entre os Arduinos Uno e Nano para que um mesmo sketch não funcione no Nano?

Oi @renatoia,
como o UNO e o nano usam o mesmo processador (Atmega328), seu projeto deveria funcionar em ambos.

RV mineirin

Desconfio que esteja relacionado à biblioteca do K Wong. Nela, há uns comandos, me parece, colocando o Arduino como escravo da placa AD7705. Mas não entendo muito bem desses comandos. Vejam bem, ele usa um comando "spiTransfer()" (em vez do SPI.transfer()) que está no arquivo .h:

    byte spiTransfer(volatile byte data) {
        SPDR = data;
        while (!(SPSR & _BV(SPIF)));
        return SPDR;
    }

E no arquivo .cpp ele usa uma outra linha que não entendo (a última abaixo):

AD770X::AD770X(double vref) {
    VRef = vref;
    pinMode(pinMOSI, OUTPUT);
    pinMode(pinMISO, INPUT);
    pinMode(pinSPIClock, OUTPUT);
    pinMode(pinCS, OUTPUT);

    digitalWrite(pinCS, HIGH);
    SPCR = _BV(SPE) | _BV(MSTR) | _BV(CPOL) | _BV(CPHA) | _BV(SPI2X) | _BV(SPR1) | _BV(SPR0);
}

O Uno funciona diferente do Nano neste caso?