Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: WizFi310Interface_Legacy mbed
Prerequisite
This example shows that WIZwiki-W7500 and WizFi310 connects to AP.
To implement this function, you need a Platform board and Wi-Fi board. Below are what we used.
- WIZwiki-W7500 from WIZnet (Platform board)
- WizFi310 from WIZnet (Wi-Fi board)
Hardware Configuration
WIZwiki-W7500 Pin map

- D0 is for RXD, D1 is for TXD
- D6 is for CTS, D7 is for RTS
- D9 is for RESET
WizFi310 Pin map
- J1 is for RXD, J3 is for TXD
- SW6-1 is connected to D6 for RTS, SW6-2 is connected to D7 for CTS
- SW5-3 is connected to D9 for RESET
Software
Connect to Wi-Fi
main.cpp
if ( wizfi310.connect(SECURE, SSID, PASS)) return -1;
Caution
Input a SSID/PW to connect to an AP.
WizFi310Interface/Socket/Endpoint.cpp@0:851ac97c4b05, 2017-04-19 (annotated)
- Committer:
- kaizen
- Date:
- Wed Apr 19 00:30:02 2017 +0000
- Revision:
- 0:851ac97c4b05
WizFi310_HelloWorld using Legacy Library
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| kaizen | 0:851ac97c4b05 | 1 | /* |
| kaizen | 0:851ac97c4b05 | 2 | * Copyright (C) 2013 gsfan, MIT License |
| kaizen | 0:851ac97c4b05 | 3 | * |
| kaizen | 0:851ac97c4b05 | 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this software |
| kaizen | 0:851ac97c4b05 | 5 | * and associated documentation files (the "Software"), to deal in the Software without restriction, |
| kaizen | 0:851ac97c4b05 | 6 | * including without limitation the rights to use, copy, modify, merge, publish, distribute, |
| kaizen | 0:851ac97c4b05 | 7 | * sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is |
| kaizen | 0:851ac97c4b05 | 8 | * furnished to do so, subject to the following conditions: |
| kaizen | 0:851ac97c4b05 | 9 | * |
| kaizen | 0:851ac97c4b05 | 10 | * The above copyright notice and this permission notice shall be included in all copies or |
| kaizen | 0:851ac97c4b05 | 11 | * substantial portions of the Software. |
| kaizen | 0:851ac97c4b05 | 12 | * |
| kaizen | 0:851ac97c4b05 | 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING |
| kaizen | 0:851ac97c4b05 | 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND |
| kaizen | 0:851ac97c4b05 | 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, |
| kaizen | 0:851ac97c4b05 | 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
| kaizen | 0:851ac97c4b05 | 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
| kaizen | 0:851ac97c4b05 | 18 | */ |
| kaizen | 0:851ac97c4b05 | 19 | /* Copyright (C) 2014 Wiznet, MIT License |
| kaizen | 0:851ac97c4b05 | 20 | * port to the Wiznet Module WizFi250 |
| kaizen | 0:851ac97c4b05 | 21 | */ |
| kaizen | 0:851ac97c4b05 | 22 | /* Copyright (C) 2017 Wiznet, MIT License |
| kaizen | 0:851ac97c4b05 | 23 | * port to the Wiznet Module WizFi310 |
| kaizen | 0:851ac97c4b05 | 24 | */ |
| kaizen | 0:851ac97c4b05 | 25 | |
| kaizen | 0:851ac97c4b05 | 26 | #include "Socket/Socket.h" |
| kaizen | 0:851ac97c4b05 | 27 | #include "Socket/Endpoint.h" |
| kaizen | 0:851ac97c4b05 | 28 | #include <cstring> |
| kaizen | 0:851ac97c4b05 | 29 | |
| kaizen | 0:851ac97c4b05 | 30 | using std::memset; |
| kaizen | 0:851ac97c4b05 | 31 | |
| kaizen | 0:851ac97c4b05 | 32 | Endpoint::Endpoint() { |
| kaizen | 0:851ac97c4b05 | 33 | _ewizfi310 = WizFi310::getInstance(); |
| kaizen | 0:851ac97c4b05 | 34 | if (_ewizfi310 == NULL) |
| kaizen | 0:851ac97c4b05 | 35 | error("Endpoint constructor error: no WizFi250 instance available!\r\n"); |
| kaizen | 0:851ac97c4b05 | 36 | reset_address(); |
| kaizen | 0:851ac97c4b05 | 37 | } |
| kaizen | 0:851ac97c4b05 | 38 | Endpoint::~Endpoint() {} |
| kaizen | 0:851ac97c4b05 | 39 | |
| kaizen | 0:851ac97c4b05 | 40 | void Endpoint::reset_address(void) { |
| kaizen | 0:851ac97c4b05 | 41 | _ipAddress[0] = '\0'; |
| kaizen | 0:851ac97c4b05 | 42 | _port = 0; |
| kaizen | 0:851ac97c4b05 | 43 | } |
| kaizen | 0:851ac97c4b05 | 44 | |
| kaizen | 0:851ac97c4b05 | 45 | int Endpoint::set_address(const char* host, const int port) { |
| kaizen | 0:851ac97c4b05 | 46 | //Resolve DNS address or populate hard-coded IP address |
| kaizen | 0:851ac97c4b05 | 47 | _port = port; |
| kaizen | 0:851ac97c4b05 | 48 | return _ewizfi310->getHostByName(host, _ipAddress); |
| kaizen | 0:851ac97c4b05 | 49 | } |
| kaizen | 0:851ac97c4b05 | 50 | |
| kaizen | 0:851ac97c4b05 | 51 | char* Endpoint::get_address() { |
| kaizen | 0:851ac97c4b05 | 52 | return _ipAddress; |
| kaizen | 0:851ac97c4b05 | 53 | } |
| kaizen | 0:851ac97c4b05 | 54 | |
| kaizen | 0:851ac97c4b05 | 55 | int Endpoint::get_port() { |
| kaizen | 0:851ac97c4b05 | 56 | return _port; |
| kaizen | 0:851ac97c4b05 | 57 | } |