| 555 | } |
| 556 | |
| 557 | uint8_t WiFiClass::startProvision(const char *ssid, const char *url, uint8_t channel) |
| 558 | { |
| 559 | tstrM2MAPConfig strM2MAPConfig; |
| 560 | |
| 561 | if (!_init) { |
| 562 | init(); |
| 563 | } |
| 564 | |
| 565 | // Enter Provision mode: |
| 566 | memset(&strM2MAPConfig, 0x00, sizeof(tstrM2MAPConfig)); |
| 567 | strcpy((char *)&strM2MAPConfig.au8SSID, ssid); |
| 568 | strM2MAPConfig.u8ListenChannel = channel; |
| 569 | strM2MAPConfig.u8SecType = M2M_WIFI_SEC_OPEN; |
| 570 | strM2MAPConfig.u8SsidHide = SSID_MODE_VISIBLE; |
| 571 | strM2MAPConfig.au8DHCPServerIP[0] = 192; |
| 572 | strM2MAPConfig.au8DHCPServerIP[1] = 168; |
| 573 | strM2MAPConfig.au8DHCPServerIP[2] = 1; |
| 574 | strM2MAPConfig.au8DHCPServerIP[3] = 1; |
| 575 | |
| 576 | if (m2m_wifi_start_provision_mode((tstrM2MAPConfig *)&strM2MAPConfig, (char*)url, 1) < 0) { |
| 577 | _status = WL_PROVISIONING_FAILED; |
| 578 | return _status; |
| 579 | } |
| 580 | _status = WL_PROVISIONING; |
| 581 | _mode = WL_PROV_MODE; |
| 582 | |
| 583 | memset(_ssid, 0, M2M_MAX_SSID_LEN); |
| 584 | memcpy(_ssid, ssid, strlen(ssid)); |
| 585 | m2m_memcpy((uint8 *)&_localip, (uint8 *)&strM2MAPConfig.au8DHCPServerIP[0], 4); |
| 586 | _submask = 0x00FFFFFF; |
| 587 | _gateway = _localip; |
| 588 | |
| 589 | // WiFi led ON (rev A then rev B). |
| 590 | m2m_periph_gpio_set_val(M2M_PERIPH_GPIO15, 0); |
| 591 | m2m_periph_gpio_set_val(M2M_PERIPH_GPIO4, 0); |
| 592 | |
| 593 | return _status; |
| 594 | } |
| 595 | |
| 596 | uint32_t WiFiClass::provisioned() |
| 597 | { |
nothing calls this directly
no test coverage detected