Changeset - 156fa380821c
[Not reviewed]
default
0 4 0
ethanzonca@CL-ENS241-08.cedarville.edu - 12 years ago 2013-02-26 17:04:14
ethanzonca@CL-ENS241-08.cedarville.edu
Moved APRS comment buffer to caller, minor changes.
4 files changed with 20 insertions and 17 deletions:
0 comments (0 inline, 0 general)
master/master/lib/aprs.c
Show inline comments
 
@@ -76,7 +76,11 @@ void aprs_send()
 
  */
 
  
 
  ax25_send_byte(' ');
 
  ax25_send_string(slavesensors_getAPRScomment());
 
  
 
  #define COMMENTBUFFER_SIZE 128
 
  char commentBuffer[COMMENTBUFFER_SIZE];
 
  ax25_send_string(slavesensors_getAPRScomment(commentBuffer, COMMENTBUFFER_SIZE));
 
  
 
  ax25_send_footer();
 
  ax25_flush_frame();                 // Tell the modem to go
 
}
master/master/lib/sensordata.c
Show inline comments
 
@@ -62,11 +62,10 @@ bool isEven = false;
 
 
// Generate APRS comment
 
// TODO: Can we move this buffer to a local scope of this function?
 
#define COMMENTBUFFER_SIZE 128
 
char commentBuffer[COMMENTBUFFER_SIZE];
 
char* slavesensors_getAPRScomment() 
 
 
char* slavesensors_getAPRScomment(char* commentBuffer, uint16_t bufferSize) 
 
{
 
	snprintf(commentBuffer,COMMENTBUFFER_SIZE, "t9%d~s%s~v%s~h%s~_%s~|%s", sensors_getBoardTemp(), get_sv(), get_speedKnots(), get_hdop(), get_latitudeLSBs(), get_longitudeLSBs());
 
	snprintf(commentBuffer,bufferSize, "t9%d~s%s~v%s~h%s~_%s~|%s", sensors_getBoardTemp(), get_sv(), get_speedKnots(), get_hdop(), get_latitudeLSBs(), get_longitudeLSBs());
 
	
 
	if(isEven) 
 
	{
 
@@ -77,42 +76,42 @@ char* slavesensors_getAPRScomment()
 
			uint32_t val = sensordata_get(i, SENSOR_BOARDTEMP);
 
			if(val != -2111111111) {
 
				uint16_t len = strlen(commentBuffer);
 
				snprintf(commentBuffer + len, COMMENTBUFFER_SIZE-len, "~t%u%li",i,val);
 
				snprintf(commentBuffer + len, bufferSize-len, "~t%u%li",i,val);
 
			}
 
		
 
			// Battery voltages (all slaves)
 
			val = sensordata_get(i, SENSOR_BATTERYLEVEL);
 
			if(val != -2111111111) {
 
				uint16_t len = strlen(commentBuffer);
 
				snprintf(commentBuffer + len, COMMENTBUFFER_SIZE-len, "~l%u%li",i,val);
 
				snprintf(commentBuffer + len, bufferSize-len, "~l%u%li",i,val);
 
			}
 
		
 
			// Pressure
 
			val = sensordata_get(i, SENSOR_PRESSURE);
 
			if(val != -2111111111) {
 
				uint16_t len = strlen(commentBuffer);
 
				snprintf(commentBuffer + len, COMMENTBUFFER_SIZE-len, "~P%li",val);
 
				snprintf(commentBuffer + len, bufferSize-len, "~P%li",val);
 
			}
 
		
 
			// Air Temperature
 
			val = sensordata_get(i, SENSOR_AIRTEMP);
 
			if(val != -2111111111) {
 
				uint16_t len = strlen(commentBuffer);
 
				snprintf(commentBuffer + len, COMMENTBUFFER_SIZE-len, "~C%li",val);
 
				snprintf(commentBuffer + len, bufferSize-len, "~C%li",val);
 
			}
 
		
 
			// Altitude
 
			val = sensordata_get(i, SENSOR_ALTITUDE);
 
			if(val != -2111111111) {
 
				uint16_t len = strlen(commentBuffer);
 
				snprintf(commentBuffer + len, COMMENTBUFFER_SIZE-len, "~A%li",val);
 
				snprintf(commentBuffer + len, bufferSize-len, "~A%li",val);
 
			}
 
		
 
			// Radiation
 
			val = sensordata_get(i, SENSOR_CPM_RADIATION);
 
			if(val != -2111111111) {
 
				uint16_t len = strlen(commentBuffer);
 
				snprintf(commentBuffer + len, COMMENTBUFFER_SIZE-len, "~R%li",val);
 
				snprintf(commentBuffer + len, bufferSize-len, "~R%li",val);
 
			}
 
		
 
		}
 
@@ -126,7 +125,7 @@ char* slavesensors_getAPRScomment()
 
	if(logger_aprsInfoTextAvailable())
 
	{
 
		uint16_t len = strlen(commentBuffer);
 
		snprintf(commentBuffer + len, COMMENTBUFFER_SIZE-len, "~%s",logger_getAprsInfoText());
 
		snprintf(commentBuffer + len, bufferSize-len, "~%s",logger_getAprsInfoText());
 
		logger_aprsInfoTextConsumed();
 
	}
 
	
master/master/lib/sensordata.h
Show inline comments
 
@@ -19,7 +19,7 @@
 
void sensordata_setup();
 
void sensordata_set(uint8_t nodeID, uint8_t type, int32_t value);
 
int32_t sensordata_get(uint8_t nodeID, uint8_t type);
 
char* slavesensors_getAPRScomment();
 
char* slavesensors_getAPRScomment(char* commentBuffer, uint16_t bufferSize);
 
void sensordata_logvalues();
 
bool sensordata_isTouchdown();
 
void sensordata_checkTouchdown();
master/master/lib/slavesensors.c
Show inline comments
 
@@ -424,7 +424,7 @@ void slavesensors_startprocess()
 
	slavesensors_request();		
 
}
 
 
// TODO: inline. static.
 
 
uint32_t beginRequest = 0;
 
void slavesensors_request() 
 
{
 
@@ -531,7 +531,7 @@ void slavesensors_process(uint8_t parseR
 
		{
 
			
 
			#ifdef DEBUG_GETSLAVEDATA
 
			serial0_sendString("Got an awesome count!\r\n");
 
			serial0_sendString("Got count!\r\n");
 
			serial0_sendChar(parsedVal + 0x30);
 
			serial0_sendString("\r\n");
 
			#endif
 
@@ -547,7 +547,7 @@ void slavesensors_process(uint8_t parseR
 
			sensordata_set(currentSlave,type,parsedVal);
 
			
 
			#ifdef DEBUG_GETSLAVEDATA
 
			serial0_sendString("Stored some sexy data!\r\n");
 
			serial0_sendString("Stored data!\r\n");
 
			#endif 
 
			
 
			gotoNextSlaveOrSensor(false);
 
@@ -578,7 +578,7 @@ void slavesensors_process(uint8_t parseR
 
	}
 
	else 
 
	{
 
		error_log_msg(ERROR_FATAL, true, "parseResult is invalid!");
 
		error_log_msg(ERROR_FATAL, true, "parseResult invalid!");
 
		return;
 
	}
 
}		
 
\ No newline at end of file
0 comments (0 inline, 0 general)