WLN Library
This section is currently being reworked. We apologize for the inconvenience. If you need immediate assistance, please contact Tibbo Support.
The WLN library works with the GA1000 add-on Wi-Fi module. The library complements the Wi-Fi (wln.) object by providing the following:
Persistent association with an access point of choice;
- Implementation of WPA1-PSK and WPA2-PSK security protocols (the wln. object doesn't fully support them per se);
- Support for access point switchover (roaming);
- Generation of keepalive messages to prevent disassociation.
The library is event-based and non-blocking — it quietly runs in the background and takes a minimal amount of CPU time.
Library Info
Supported platforms: |
Any platform with Wi-Fi (wln.) interface. Special case: WPA/WPA2 functionality is not supported on the EM500W platform. |
Files to include: |
Wln.tbs, wln.tbh (from current_library_set\wln\trunk\). |
Dependencies: |
SOCK library (only if you have #define WLN_WPA 1 or #define WLN_KEEP_ALIVE 1); You may also need STG library (for storing WPA/WPA2 parameters as described in Trying WPA code example). |
API procedures: Use API procedures to interact with the library. |
wln_start() — commences attempts to bring up (boot) the Wi-Fi interface, find and associate with the specified wireless network, and then keep associated at all times. wln_stop() — shuts down the Wi-Fi interface. wln_change() — sets a different target wireless network for the WLN library. wln_rescan() — starts the search for the specified access point in order to obtain its signal strength. wln_wpa_mkey_get() — calculates the pre-shared master key for WPA1 and WPA2 security modes. wln_check_association() — informs whether your device is currently associated with an access point. |
Event procedures: Call event procedures from corresponding event handlers, as described here. |
wln_proc_timer() — call it from the on_sys_timer() event handler. wln_proc_data() — call it from the on_sock_data_arrival() event handler. wln_proc_task_complete() — call it from the on_wln_task_complete() event handler. wln_proc_event() — call it from the on_wln_event() event handler. |
Callback procedures: Implement the bodies of callback procedures elsewhere in your project. |
callback_wln_ok() — informs of the successful association with the target wireless network. callback_wln_failure() — informs of the failure to find the target wireless network, associate with it, or maintain association. callback_wln_pre_buffrq() — informs of the insufficient number of free buffer pages available for use by the library. callback_wln_mkey_progress_update() — periodically called from wln_wpa_mkey_get() to inform about the progress of pre-shared key calculation. callback_wln_rescan_result() — informs of the completion of the re-scanning initiated by wln_rescan(). |
Required buffer space: |
5 buffer pages minimum; +1 additional buffer page if keepalive packets are enabled; +2 additional buffer pages if WPA/WPA2 support is enabled. |