#ifndef LOGGER_h #define LOGGER_h #include #define versionString "1.3" #define BLUELED 2 class LOGGER { private: unsigned long StartTime = millis(); int counter = 0; int loglevel = 0; public: LOGGER () {} // CONSTRUCTOR bool serialBridge = false; void writeTelnet() { } void setup (){ pinMode(BLUELED, OUTPUT); digitalWrite(BLUELED, LOW); TelnetStream.begin(); } void loop (){ if ( serialBridge ){ while (Serial2.available()) { TelnetStream.print ( Serial2.read() ); } Serial2.print( TelnetStream.read() ); } else { switch (TelnetStream.read()) { case 'h': TelnetStream.println("HELP"); TelnetStream.println("i: info"); TelnetStream.println("l: toggle LED - not working"); TelnetStream.println("r: revisions"); TelnetStream.println("s: turn on serial bridge"); TelnetStream.println(""); TelnetStream.println("0-5: set Log Level"); TelnetStream.println("0: system"); TelnetStream.println("3: debug"); TelnetStream.println("5: verbose"); break; case 's': TelnetStream.println( "Turning on serialBridge" ); serialBridge = true; break; case 'i': TelnetStream.print( "Version: " ); TelnetStream.println( versionString ); TelnetStream.print( "Loglevel: " ); TelnetStream.println( loglevel ); break; case 'r': TelnetStream.println( "Revisions: " ); TelnetStream.println( "1.1 - BLE, no Diag " ); TelnetStream.println( "1.0 - Initial Release " ); break; case 'l': digitalWrite(BLUELED, !digitalRead(BLUELED)); break; case '0': loglevel = 0; break; case '3': loglevel = 3; break; case '5': loglevel = 5; break; } } } void log(int ll, String buffer ) { if ( ll<= loglevel) { TelnetStream.println( buffer ); Serial.println (buffer); } } }; LOGGER logger; #endif