replacing crystal with TCXO

jboyton:
I really am amazed at the contortions you're going through to avoid the obvious solution.

What is the solution? Obviously I'm not understanding what you are getting at.

Do you mean that I should change my "_read_raw" to work like this:

(1) assert CS
(2) read all 7 bytes
(3) de-assert CS

?

If so, then I'll have pass "_command" a "use CS or not" flag so that I don't need to assert and de-assert CS all over the driver (where "_command" calls are issued). Normally (for setting one register or reading/writing a BBSRAM byte), I want _command to handle CS by itself.

If I understand correctly, ONLY "_read_raw" (the one that grabs all 7 time registers at once) needs CS asserted at the start (to latch the time data) , then read all 7 registers, THEN de-assert CS.

Is this correct?