Skip to content

Commit 490c9de

Browse files
committed
GSM: debug() accepts a Stream object
1 parent 6563d05 commit 490c9de

File tree

2 files changed

+22
-16
lines changed

2 files changed

+22
-16
lines changed

libraries/GSM/src/GSM.cpp

+21-15
Original file line numberDiff line numberDiff line change
@@ -47,14 +47,14 @@ int arduino::GSMClass::begin(const char* pin, const char* apn, const char* usern
4747
retryCount++;
4848

4949
if (connect_status == NSAPI_ERROR_AUTH_FAILURE) {
50-
printf("Authentication Failure. Exiting application.\n");
50+
tr_info("Authentication Failure. Exiting application.\n");
5151
} else if (connect_status == NSAPI_ERROR_OK || connect_status == NSAPI_ERROR_IS_CONNECTED) {
5252
connect_status = NSAPI_ERROR_OK;
53-
printf("Connection Established.\n");
53+
tr_info("Connection Established.\n");
5454
} else if (retryCount > 2) {
55-
printf("Fatal connection failure: %d\n", connect_status);
55+
tr_info("Fatal connection failure: %d\n", connect_status);
5656
} else {
57-
printf("Couldn't connect, will retry...\n");
57+
tr_info("Couldn't connect, will retry...\n");
5858
continue;
5959
}
6060

@@ -107,23 +107,29 @@ static char* trace_time(size_t ss)
107107
return time_st;
108108
}
109109

110+
static Stream* trace_stream = nullptr;
111+
static void arduino_print(const char* c) {
112+
if (trace_stream) {
113+
trace_stream->println(c);
114+
}
115+
}
110116

111-
void arduino::GSMClass::debug() {
112-
113-
#ifndef CELLULAR_DEMO_TRACING_H_
114-
#define CELLULAR_DEMO_TRACING_H_
117+
void arduino::GSMClass::debug(Stream& stream) {
115118

116119
#if MBED_CONF_MBED_TRACE_ENABLE
117120

118-
mbed_trace_init();
119-
mbed_trace_prefix_function_set( &trace_time );
121+
mbed_trace_init();
120122

121-
mbed_trace_mutex_wait_function_set(trace_wait);
122-
mbed_trace_mutex_release_function_set(trace_release);
123+
trace_stream = &stream;
124+
mbed_trace_print_function_set(arduino_print);
125+
mbed_trace_prefix_function_set( &trace_time );
126+
127+
mbed_trace_mutex_wait_function_set(trace_wait);
128+
mbed_trace_mutex_release_function_set(trace_release);
129+
130+
mbed_cellular_trace::mutex_wait_function_set(trace_wait);
131+
mbed_cellular_trace::mutex_release_function_set(trace_release);
123132

124-
mbed_cellular_trace::mutex_wait_function_set(trace_wait);
125-
mbed_cellular_trace::mutex_release_function_set(trace_release);
126-
#endif
127133
#endif
128134

129135
}

libraries/GSM/src/GSM.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ class GSMClass : public MbedSocketClass {
7474

7575
bool setTime(unsigned long const epoch, int const timezone = 0);
7676

77-
void debug(void);
77+
void debug(Stream& stream);
7878

7979
int ping(const char* hostname, uint8_t ttl = 128);
8080
int ping(const String& hostname, uint8_t ttl = 128);

0 commit comments

Comments
 (0)