Errors in Coding with KTA259V3

This coding is for a project to collect temperature from solar collectors.
The error is:

Arduino: 1.8.2 (Windows 7), Board: "Arduino/Genuino Uno"

In file included from D:\Arduino\sketch_dec12b\sketch_dec12b.ino:5:0:

\\homefs03\home\ng3\Arduino\libraries\KTA259V3-master\src/KTA259V3.h:27:43: error: expected class-name before '{' token

class KTA259V3 : public Adafruit_Max31855 {


\\homefs03\home\ng3\Arduino\libraries\KTA259V3-master\src/KTA259V3.h:51:3: error: 'Adafruit_Max31855_Info' does not name a type

 Adafruit_Max31855_Info get_info(void);


\\homefs03\home\ng3\Arduino\libraries\KTA259V3-master\src/KTA259V3.h:54:3: error: 'Adafruit_Max31855_Info' does not name a type

 Adafruit_Max31855_Info get_info(uint8_t ch);


D:\Arduino\sketch_dec12b\sketch_dec12b.ino: In function 'void loop()':

sketch_dec12b:112: error: 'class KTA259V3' has no member named 'get_temperature'

       temp_actual = tc.get_temperature();


sketch_dec12b:187: error: 'class KTA259V3' has no member named 'get_cold_junction_temperature'

   Serial.print(tc.get_cold_junction_temperature()); // prints the cold junction temp


sketch_dec12b:189: error: 'class KTA259V3' has no member named 'get_cold_junction_temperature'

   dataFile.print(tc.get_cold_junction_temperature());  // writes the cold junction temp to file


exit status 1
'class KTA259V3' has no member named 'get_temperature'

My code till error is:

// use the following libraries
#include <SPI.h> // serial peripheral interphasing (PIN communications MISO MOSI)
#include<SD.h> // sd function library
#include "MAX31855.h" // cold junction compensator library
#include "KTA259V3.h" // multiplexer channel SPI control library
#include "RTClib.h" // RTC library
#include <Wire.h> // required for RTC

RTC_DS1307 rtc; //RTC command
int CS_pin = 10; // SD pin
char file_today_name[30]; // Create char to hold today's file name by date

const int no_therm = 8 ; //****************** INPUT THE NUMBER OF THERMOCOUPLES IN USE (1-8) ************************************  !! ENTER 0 IF NONE IN USE !!
const int no_V_In = 1; // ****************** INPUT THE NUMBER OF VOLTAGE INPUTS IN USE (1-2) ************************************ !! ENTER 0 IF NONE IN USE !!
const float frequency = 2; // ****************** INPUT THE FREQUENCY OF DATA ACQUISITION IN SECONDS NO LESS THAN 1.6s ************* !! CURRENTLY SET AT 5s    !!
const int T_millis = (frequency * 1000) - (200 * no_therm); // converts frequency to microseconds accounting for the 0.2s delay for each sensor to settle
const int no_sensors = (no_therm + no_V_In); // SUM OF SENSORS IN USE

//int power = 3; // power pin for flow sensors

double temp_before;
double temp_actual;
float DatMat [no_sensors][1]; // Data matrix of dimensions (num of sensors X 1) to store sensor data
int i = 1; // counter which tracks sensor logging and indexes matrix
int sensorValue; // analogue read pin value

#define CHANNELS_ENABLED no_therm // The number of channels enabled
KTA259V3 tc = KTA259V3(9); // Init with chip select on pin 9

// flow sensor
byte sensorInterrupt = 0;  // 0 = digital pin 2
byte sensorPin       = 2;

// The hall-effect flow sensor outputs approximately 2800 pulses per minute per
// litre of flow.
float calibrationFactor = 36.66; //pulses per second per litre flow

volatile byte pulseCount;       //declare variables for flow meter
float flowRate;
unsigned int flowMilliLitres;

unsigned long oldTime;         
void setup()

  Serial.println("Datalogger initialising");
  pinMode(SS, OUTPUT);
  // SD set up and test

  pinMode(CS_pin, OUTPUT); // CS pin is an output
  // initialise flow parameters
  pulseCount        = 0;
  flowRate          = 0.0;
  flowMilliLitres   = 0;
  oldTime           = 0;
  attachInterrupt(sensorInterrupt, pulseCounter, FALLING);

//SD card initialisation 

  if (!SD.begin(CS_pin)) // If CS_pin reads false the program will terminate
    Serial.println("Card Failure");

  // RTC set up and test

#ifdef AVR
  Wire1.begin(); // Shield I2C pins connect to alt I2C bus on Arduino Due

  if (! rtc.isrunning())
    Serial.println("RTC is NOT running!");
  // input labels for all columns
   DateTime now =; // Request time from RTC
    sprintf(file_today_name, "%02d%02d%02d.txt",, now.month(), now.year()); // (C++ function) to convert file_today_name into date.txt format
    File dataFile =, FILE_WRITE); // open the SD file
     dataFile.println("Time!Temp 1!Temp 2!Temp 3!Temp 4!Temp 5!Temp 6!Temp 7!Temp 5!Flowrate(L/min)!Flowrate(ml/s)!Cold Junction Temp"); // Will have to be manually changed depending
     //on the ammount of temperature sensors
     //! so it can be delimited easily in excel
    dataFile.close(); // closes the file
  //digitalWrite (power, HIGH);
  Serial.println("Time Temp 1  Temp 2  Temp 3  Temp 4  Temp 5 Flowrate(L/min) Flowrate(ml/s)  Cold Junction Temp");

void loop() {

  if (i < (no_sensors + 1)) // sensors plus one because i starts at 1, necessary because matrix indexing begins at 0, thus (1-1 = 0)

    if (i < no_therm) // read the thermocouples

      uint8_t channel;
      for (channel = 1; channel <= CHANNELS_ENABLED; channel++)
        delay(200); // channel read every 0.2s (delay for digital medium to settle)
        temp_actual = tc.get_temperature();
        //temp_actual = (-0.003*pow(temp_before,2)) +(1.4939*temp_before)-10.467; // equation to compensate for arduino box recording temperatures wrong
                                                                               // Use DAQ Manual system calibration to find out the individual equation for different arduino boxes

Can someone help me in this.

Please also use code tags (as you did with your code) when posting error messages.

You're missing some closing braces at the end of your loop().

Hi Guys i managed to solve the first line of error but cant figure out the 'does not name a type' error. I have followed a link from this forum however that didn't help as well. Anyone got any idea on solving the issue apart from deleting the extra files and removing sub directories?