This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

ADS1299: Some question about ADS1299 Daisy-Chain

Part Number: ADS1299
Other Parts Discussed in Thread: ADS1298

Hello everyone:

   I am making a 40-ch EEG sampling system using five pieces of ADS1299s and one STM32 ARM. I want to configure the five ADS1299 in Daisy-Chain mode but I have some questions to be solved

  1. When configured in Daisy-Chain mode, can the five ADS1299s work in internal or external clock mode separately  or must they work in the same clock system? I see someone configure the first ADS1299 working into internal clock mode and output the clock to drive the other four ADS1299s. If the working mode is correct? I am afraid that the clock wire go across the board and has electromagnetic inference on the other chip on the board.

  2. In Daisy-Chain mode, the 5 ADS1299s share the same /CS, START, RESET, SCLK and DIN signal, how to configure all the registers? How can we read and write the registers of different ADS1299?

  3. Someone posted in the forum said that there is must a SCLK between the data of two ADS1299s, but I look up the chart of Daisy-Chain Timing in the manual, it doesn't  mention that. Is it necessary to add a SCLK between the two ADS1299 data?

  Thank you very much.

  • Hello Ming,

    Thanks for your post.

    1. Whenever you use multiple ADC devices, it is recommended to use only one clock source for best synchronization. One way is to use the internal oscillator from one ADS1299 device and configure it as an output to the other ADS1299 devices on your board, just like you described. I understand your concern with routing the CLK traces over some distance, but hopefully this distance is kept as short as possible and all 5 ADS1299 devices are near each other. The first device will need to set the CLKSEL pin and the CONFIG1.CLK_EN bit to high in order to output the internal oscillator (see Table 6). The remaining devices will set the CLKSEL pin to low.
    2. In Daisy-Chain mode, all devices will share the same SPI bus signals, so all devices will receive the same register settings at the same time. Unfortunately, you can only read the register contents of the first device in the chain.
    3. The extra SCLK was likely mentioned in a discussion about other devices in this product family, such as the ADS1298. This was a known bug in the digital core that required one extra SCLK or "dead bit" in between the data from multiple devices. We were able to fix this bug in the ADS1299, so it is no longer an issue.

    Best Regards,

  • OK, Thank you very much. I am making my 40-ch EEG system and I hope to get your help.

    Another question is that in daisy-chain mode, can I assign 5 ADS1299 different CS signal?

    Best Regards.

  • You can use separate /CS signals if you wish to be able to write different register settings to different devices. In this case, you would not need to use the daisy-chain configuration shown in Figure 70b. You could share the SPI bus amongst all ADS1299 devices and use the individual /CS pins to enable the interface when reading from/writing to each device, as shown in Figure 70a.

    Best Regards,

  • Thank you very much, Ryan.