#include <stdio.h>
#include "fanIOCtls.h"

int main( int argc, char **argv ) {

	printf("Fan board test app started\n");

	envOpen();

	char input = 0;
	int output = 0;
	do{
		printf("?");
		if(scanf("%x", &input)) {
			output = envDiagLED(input);
		}
		else {
			printf("input error, exiting.\n");
			break;
		}
	} while(1);


	// Print out the result from everything we can access through evenUtils
	printf("envDiagLED on:\t%i\n", envDiagLED(1));
	printf("envDiagLED off:\t%i\n", envDiagLED(0));
	printf("envReadCfg:\t%X\n", envReadCfg());
	printf("envReadDig:\t%X\n", envReadDig());
	printf("envSetDig to 0:\t%X\n", envSetDig(0));
	printf("envReadAna(0):\t%i\n", envReadAna(0));
	printf("envReadAna(1):\t%i\n", envReadAna(1));
	printf("envFan on:\t%i\n", envFan(1));
	printf("envFan off:\t%i\n", envFan(0));
	printf("envSetEnables to 0:\t%X\n", envSetEnables(0));
	printf("envHumidity:\t%f\n", envHumidity());
	printf("envTemperatre(0):\t%f\n", envTemperature(0));
	printf("envTemperatre(1):\t%f\n", envTemperature(1));

	// Temperature stuff
	int now, high, low, config;
	envReadTemp(&now, &high, &low, &config, 0);
	printf("envReadTemp ch 0:\tnow %i, high %i, low %i, config %i\n", now, high, low, config);
	envReadTemp(&now, &high, &low, &config, 1);
	printf("envReadTemp ch 1:\tnow %i, high %i, low %i, config %i\n", now, high, low, config);
	printf("envWriteTemp 0 and 1...\n");
	envWriteTemp(0, 0, 0);
	envWriteTemp(66, 42, 1);
	envReadTemp(&now, &high, &low, &config, 0);
	printf("envReadTemp ch 0:\tnow %i, high %i, low %i, config %i\n", now, high, low, config);
	envReadTemp(&now, &high, &low, &config, 1);
	printf("envReadTemp ch 1:\tnow %i, high %i, low %i, config %i\n", now, high, low, config);
	
/*	do {
		printf("envHumidity:\t%f\n", envHumidity());
		printf("envTemperatre(0):\t%f\n", envTemperature(0));
		printf("envTemperatre(1):\t%f\n", envTemperature(1));
		//usleep(1000000);
	} while(0);
*/

	envClose();
	
	printf("Fan board test app closing\n");
	return 0;
}
