Hi Niraj, the ADS1299 has an interface called SPI. The Arduino is based on the microcontroller ATmega8 which has an SPI as well; please see chapter 23 of the datasheet attached here. On the ATmega8, this interface uses the pins 16 to 19, which are connected to the Arduino pins D10 to D13.
You connect Arduino pin D10 (SS = Slave Select) to ADS1299 pin 39 (CS = Chip Select),
Arduino pin D11 (MOSI = Master Out, Slave In) to ADS1299 pin 34 (DIN = Data In),
Arduino pin D12 (MISO = Master In, Slave Out) to ADS1299 pin 43 (DOUT = Data Out),
Arduino pin D13 (SCK = Serial CLock) to ADS1299 pin 40 (SCLK), and of course
Arduino pin GND to ADS1299 pins 33, 49, 51 (DGND = Digital GND).
That's the hardware. For the software, there are two possibilities:
- Try to find a suitable library, and use the functions it provides. That's dull.
- Read the ADS1299 datasheet and at least chapter 23 of the ATmega datasheet, and write your own software. (You should put the SPI of the ATmega8 into master mode.) That's much more fun, because you can do it exactly your way, and you are exploring something that is useful beyond this application! ;-)
Joerg Fricke , Thank you very much Sir for providing materials. actually i am working on Motor imagery BCI. for that i need two external buttons which will connect with arduino and ADS1299 chip. so when i will press the buttons my information will transfer from arduino to ADS1299 chip. i know the hardware connection between arduino and ADS1299 chip but i dont know where in the library file i will change my code. what code i will write for serial communication between arduino and ADS1299 chip. currently i m using 8 -bit Open BCI (Version-1) for EEG data acquisition.
to transfer signals from ADS1299EEGFE to Arduino Uno board with SPI interface. I connected DRDY, CS, SCLK, Din, Dout and RESET pins to Arduino board. Also, I powered ADS1299 board with Arduino. For transferring data, I used a bi-directional level shifter between ADS1299 and Arduino.
to transfer signals from ADS1299EEGFE to Arduino Uno board with SPI interface. I connected DRDY, CS, SCLK, Din, Dout and RESET pins to Arduino board. Also, I powered ADS1299 board with Arduino. For transferring data, I used a bi-directional level shifter between ADS1299 and Arduino.
Hamed Keshmiri Neghab , I'm currently trying to transfer signals from ADS1299 IC to Arduino UNO as you mentioned above. I'm using a bi-directional level shifter between them as well.
I've just tryied to compile the code you shared, but some errors appeared, and I think it might be related to the ADS1299 library I'm using. Could you please share the ADS1299 Library that you used in your project?
Hi everyone ! I am using an ADS1299 with a Teensy4.1. I am trying to connect the Teensy to the ADS with SPI protocol and I am using this library https://github.com/UO-Bionics-MindMetrics/ADS1299-Arduino-Driver . with small modification
void ADS1299::setup(int _DRDY, int _CS, int RESET_PIN, int mode){