u-blox
/
example-ODINW2-mbed-Cloud-connect
mbedCloud example for ODIN W2 boards.
Diff: main.cpp
- Revision:
- 7:970a69dc8610
- Parent:
- 2:8cdc2cc26bfb
--- a/main.cpp Sun Oct 14 18:08:15 2018 +0000 +++ b/main.cpp Sun Oct 14 19:41:29 2018 +0100 @@ -15,20 +15,21 @@ // See the License for the specific language governing permissions and // limitations under the License. // ---------------------------------------------------------------------------- - +#ifndef MBED_TEST_MODE #include "mbed.h" #include "simple-mbed-cloud-client.h" -#include "SDBlockDevice.h" #include "FATFileSystem.h" -#include "OdinWiFiInterface.h" // An event queue is a very useful structure to debounce information between contexts (e.g. ISR and normal threads) // This is great because things such as network operations are illegal in ISR, so updating a resource in a button's fall() function is not allowed EventQueue eventQueue; -// Storage implementation definition, currently using SDBlockDevice (SPI flash, DataFlash, and internal flash are also available) -SDBlockDevice sd(D11, D12, D13, D9); -FATFileSystem fs("sd", &sd); +// Default block device +BlockDevice* bd = BlockDevice::get_default_instance(); +FATFileSystem fs("sd", bd); + +// Default network interface object +NetworkInterface *net; // Declaring pointers for access to Mbed Cloud Client resources outside of main() MbedCloudClientResource *button_res; @@ -96,29 +97,30 @@ * @param endpoint Information about the registered endpoint such as the name (so you can find it back in portal) */ void registered(const ConnectorClientEndpointInfo *endpoint) { - printf("Connected to Mbed Cloud. Endpoint Name: %s\n", endpoint->internal_endpoint_name.c_str()); + printf("Connected to Pelion Device Management. Endpoint Name: %s\n", endpoint->internal_endpoint_name.c_str()); } int main(void) { - printf("Starting Simple Mbed Cloud Client example\n"); - printf("Connecting to the network using Odin WiFi...\n"); + printf("Starting Simple Pelion Device Management Client example\n"); + printf("Connecting to the network...\n"); // Connect to the internet (DHCP is expected to be on) - OdinWiFiInterface net; - nsapi_error_t status = net.connect(MBED_CONF_APP_WIFI_SSID, MBED_CONF_APP_WIFI_PASSWORD, NSAPI_SECURITY_WPA_WPA2); + net = NetworkInterface::get_default_instance(); - if (status != 0) { + nsapi_error_t status = net->connect(); + + if (status != NSAPI_ERROR_OK) { printf("Connecting to the network failed %d!\n", status); return -1; } - printf("Connected to the network successfully. IP address: %s\n", net.get_ip_address()); + printf("Connected to the network successfully. IP address: %s\n", net->get_ip_address()); // SimpleMbedCloudClient handles registering over LwM2M to Mbed Cloud - SimpleMbedCloudClient client(&net, &sd, &fs); + SimpleMbedCloudClient client(net, bd, &fs); int client_status = client.init(); if (client_status != 0) { - printf("Initializing Mbed Cloud Client failed (%d)\n", client_status); + printf("Pelion Client initialization failed (%d)\n", client_status); return -1; } @@ -138,7 +140,7 @@ blink_res->methods(M2MMethod::POST); blink_res->attach_post_callback(blink_callback); - printf("Initialized Mbed Cloud Client. Registering...\n"); + printf("Initialized Pelion Client. Registering...\n"); // Callback that fires when registering is complete client.on_registered(®istered); @@ -154,5 +156,4 @@ // You can easily run the eventQueue in a separate thread if required eventQueue.dispatch_forever(); } - - +#endif