# Walter HTTPS example ## Purpose This example demonstrates how Walter can send and receive requests using **HTTP over TLS (HTTPS)**. Walter will make HTTPS GET and POST requests to [httpbin.org](https://httpbin.org), including a GET of a 3.7 KB multi-line HTML page. ## Required Hardware To run this example you will need the following items: * Walter * An LTE antenna * A SIM card with data plan * USB-C cable to flash Walter ## Required software 1. Please follow the instructions in the [documentation](https://www.quickspot.io/documentation.html#/) to: [setup](https://www.quickspot.io/documentation.html#/developer-toolchains/esp-idf) ESP-IDF. ## Configuration Before flashing the example, configure the routes and credentials: * In the example sketch, update the following: ```cpp #define HTTPS_PORT 443 #define HTTPS_HOST "httpbin.org" #define HTTPS_GET_ENDPOINT "/get" #define HTTPS_POST_ENDPOINT "/post" #define HTTPS_LARGE_ENDPOINT "/html" // Using Amazon Root CA 1, which httpbin.org's certificate chains up to static const char ca_cert[] = R"EOF( -----BEGIN CERTIFICATE----- MIIDQTCCAimgAwIBAgITBmyfz5m/jAo54vB4ikPmljZbyjANBgkqhkiG9w0BAQsF ADA5MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6 b24gUm9vdCBDQSAxMB4XDTE1MDUyNjAwMDAwMFoXDTM4MDExNzAwMDAwMFowOTEL MAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJv b3QgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALJ4gHHKeNXj ca9HgFB0fW7Y14h29Jlo91ghYPl0hAEvrAIthtOgQ3pOsqTQNroBvo3bSMgHFzZM 9O6II8c+6zf1tRn4SWiw3te5djgdYZ6k/oI2peVKVuRF4fn9tBb6dNqcmzU5L/qw IFAGbHrQgLKm+a/sRxmPUDgH3KKHOVj4utWp+UhnMJbulHheb4mjUcAwhmahRWa6 VOujw5H5SNz/0egwLX0tdHA114gk957EWW67c4cX8jJGKLhD+rcdqsq08p8kDi1L 93FcXmn/6pUCyziKrlA4b9v7LWIbxcceVOF34GfID5yHI9Y/QCB/IIDEgEw+OyQm jgSubJrIqg0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC AYYwHQYDVR0OBBYEFIQYzIU07LwMlJQuCFmcx7IQTgoIMA0GCSqGSIb3DQEBCwUA A4IBAQCY8jdaQZChGsV2USggNiMOruYou6r4lK5IpDB/G/wkjUu0yKGX9rbxenDI U5PMCCjjmCXPI6T53iHTfIUJrU6adTrCC2qJeHZERxhlbI1Bjjt/msv0tadQ1wUs N+gDS63pYaACbvXy8MWy7Vu33PqUXHeeE6V/Uq2V8viTO96LXFvKWlJbYK8U90vv o/ufQJVtMVT8QtPHRh8jrdkPSHCa2XV4cdFyQzR1bldZwgJcJmApzyMZFo6IQ6XU 5MsI+yMRQ+hDKXJioaldXgjUkK642M4UwtBV8ob2xJNDd2ZhwLnoQdeXeGADbkpy rqXRfboQnoZsG4q5WTP468SQvvG5 -----END CERTIFICATE----- )EOF"; ``` * Responses are received straight into `in_buf`, so make it large enough for the biggest response you expect. `httpReceive()` must be given the size reported by the ring event. ## Running the example 1. Connect the LTE antenna to Walter. **Warning:** Running without the antenna connected may damage the radio frontend. 2. Insert the SIM card. 3. Flash the example sketch to Walter. 4. You should see requests being performed, and the responses being logged.
To create a project from this example, run:
idf.py create-project-from-example "dptechnics/walter-modem=1.6.0:https"