TOP Contributors

  1. MIKROE (2751 codes)
  2. Alcides Ramos (372 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (118 codes)
  5. Bugz Bensce (90 codes)
  6. S P (73 codes)
  7. dany (71 codes)
  8. MikroBUS.NET Team (35 codes)
  9. NART SCHINACKOW (34 codes)
  10. Armstrong Subero (27 codes)

Most Downloaded

  1. Timer Calculator (139059 times)
  2. FAT32 Library (71589 times)
  3. Network Ethernet Library (56988 times)
  4. USB Device Library (47330 times)
  5. Network WiFi Library (43006 times)
  6. FT800 Library (42297 times)
  7. GSM click (29774 times)
  8. mikroSDK (27874 times)
  9. PID Library (26858 times)
  10. microSD click (26129 times)
Libstock prefers package manager

Package Manager

We strongly encourage users to use Package manager for sharing their code on Libstock website, because it boosts your efficiency and leaves the end user with no room for error. [more info]

< Back
mikroSDK Library

WiFi 9 click

Rating:

5

Author: MIKROE

Last Updated: 2019-07-15

Package Version: 1.0.0.0

mikroSDK Library: 1.0.0.0

Category: WIFI

Downloaded: 3958 times

Not followed.

License: MIT license  

WiFi 9 Click is fully embedded stand-alone Wi-Fi module, equipped with the PAN9420 a 2.4 GHz ISM band Wi-Fi-embedded module which includes a wireless radio and an MCU for easy integration of Wi-Fi connectivity into various electronic devices.

No Abuse Reported

Do you want to subscribe in order to receive notifications regarding "WiFi 9 click" changes.

Do you want to unsubscribe in order to stop receiving notifications regarding "WiFi 9 click" changes.

Do you want to report abuse regarding "WiFi 9 click".

  • mikroSDK Library 2.0.0.0
  • Comments (0)
DOWNLOAD LINK RELATED COMPILER CONTAINS
mikroBasic PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for AVR
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for dsPIC30/33 & PIC24
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for FT90x
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for PIC
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for PIC32
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for AVR
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for dsPIC30/33 & PIC24
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for FT90x
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for PIC
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for PIC32
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for AVR
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for dsPIC30/33 & PIC24
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for FT90x
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for PIC
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for PIC32
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc

mikroSDK Library Blog

WiFi 9 click

WiFi 9 click

Native view of the WiFi 9 click board.

View full image
WiFi 9 click

WiFi 9 click

Front and back view of the WiFi 9 click board.

View full image

Library Description

Library carries generic command parser adopted for WiFi 9 command based modules.
Generic parser

Key functions:

  • wifi9_cmdSingle - Sends provided command to the module.
  • wifi9_setHandler - Handler assignation to the provied command.
  • wifi9_modulePower - Turn on module.

Examples description

The application is composed of three sections :

  • System Initialization - Initializes all necessary GPIO pins, UART used for the communcation with WIFI module and UART used for infromation logging.
  • Application Initialization - Initializes driver, power on module and a procedure has been created with commands where the module connects to the WIFI router and opens the Netcat server.
  • Application Task - running in parallel core state machine.
void applicationInit()
{
// TIMER INIT
    wifi9_configTimer();

// DRIVER INIT
    wifi9_uartDriverInit((T_WIFI9_P)&_MIKROBUS1_GPIO, (T_WIFI9_P)&_MIKROBUS1_UART);
    wifi9_coreInit( wifi9_default_handler, 1500 );

// MODULE POWER ON
    wifi9_hfcEnable( 0 );
    wifi9_modulePower( 1 );
    
    wifi9_selectUart(_WIFI9_SELECT_CMD_UART);
    Delay_ms( 4000 );
    
    mikrobus_logWrite( "---------------------", _LOG_LINE );
    mikrobus_logWrite( "---- System Info ----", _LOG_LINE );
    mikrobus_logWrite( "---------------------", _LOG_LINE );

    wifi9_cmdSingle(&_WIFI9_CMD_GET_SYSTEM_FIRMWARE[0]);
    Delay_ms( 500 );
    wifi9_cmdSingle(&_WIFI9_CMD_GET_SYSTEM_MAC_ADDR[0]);
    Delay_ms( 500 );
    wifi9_cmdSingle(&_WIFI9_CMD_GET_SYSTEM_SERIAL_NUM[0]);
    Delay_ms( 500 );
    wifi9_cmdSingle(&_WIFI9_CMD_GET_SYSTEM_RADIO_VER[0]);
    Delay_ms( 500 );
    wifi9_cmdSingle(&_WIFI9_CMD_GET_SYSTEM_BOOTL_VER[0]);
    Delay_ms( 500 );
    wifi9_cmdSingle(&_WIFI9_CMD_GET_SYSTEM_HW_REV[0]);
    
    Delay_ms( 5000 );
    
    mikrobus_logWrite( "--------------------------", _LOG_LINE );
    mikrobus_logWrite( "---- Start NETCAT app ----", _LOG_LINE );
    mikrobus_logWrite( "--------------------------", _LOG_LINE );
    
    mikrobus_logWrite( "> Reads the current Station status", _LOG_LINE );
    wifi9_cmdSingle(&_WIFI9_CMD_GET_WLAN_STATE_STA[0]);
    Delay_ms( 2000 );
    
    mikrobus_logWrite( "> Set Station to ON status", _LOG_LINE );
    wifi9_cmdSingle(&_WIFI9_CMD_SET_WLAN_STATE_STA_ON[0]);
    Delay_ms( 2000 );

    mikrobus_logWrite( "> Sets Station SSID and PASSWORD", _LOG_LINE );
    wifi9_cmdSingle(&_WIFI9_CMD_SET_WLAN_CFG_STA[0]);
    Delay_ms( 4000 );
    
    mikrobus_logWrite( "> Turn OFF - Netcat module", _LOG_LINE );
    wifi9_cmdSingle(&_WIFI9_CMD_SET_NETCAT_STATE_OFF[0]);
    Delay_ms( 2000 );
    
    mikrobus_logWrite( "> Turn ON - Netcat module", _LOG_LINE );
    wifi9_cmdSingle(&_WIFI9_CMD_SET_NETCAT_STATE_ON[0]);
    Delay_ms( 2000 );
    
    mikrobus_logWrite( "> Sets the Netcat module as a server with port 1234", _LOG_LINE );
    wifi9_cmdSingle(&_WIFI9_CMD_SET_NETCAT_CFG_SERVER[0]);
    Delay_ms( 2000 );
    
    mikrobus_logWrite( "> Excludes Netcat authentication", _LOG_LINE );
    wifi9_cmdSingle(&_WIFI9_CMD_SET_NETCAT_AUTH_OFF[0]);
    Delay_ms( 2000 );
    
    mikrobus_logWrite( "> Gets the current received IP address", _LOG_LINE );
    wifi9_cmdSingle(&_WIFI9_CMD_GET_NET_CFG_STA[0]);
    Delay_ms( 2000 );
    
    mikrobus_logWrite( "> At the moment, a netcat server at port 1234 has been built", _LOG_LINE );
    mikrobus_logWrite( "> The module is transferred to BIN-UART - for data collection", _LOG_LINE );
    wifi9_selectUart(_WIFI9_SELECT_BIN_UART);
    
    Delay_ms( 5000 );
}

Additional Functions :

All additional functions such as timer initialization and default handler.

Notes :

  • First hold the reset button on the click board for about 5 seconds so that the module would perform a factory reset.
  • When the module turns on and writes "factory reset" on the terminal.
  • it's ready to be configured.
  • In the example we've created a procedure that connects your module to WiFi network and sends commands for creating Netcat server with port (1234).
  • After all commands are finished executing, it is necessary to create a Netcat client on a terminal (we used Cygwin64 terminal).
  • In the example only some of the supported commands were used.
  • the rest you can find in the technical documentation.
  • Keep in mind that the click board uses two UART modules.
  • CMD-UART(for sending commands) and BIN-UART(for sending the data)..

Other mikroE Libraries used in the example:

  • String
  • Conversion
  • UART

Additional notes and informations

Depending on the development board you are using, you may need USB UART clickUSB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.

ALSO FROM THIS AUTHOR

Magnetic linear Click

0

Magnetic linear Click is a very accurate position sensing Click board™ which utilizes the HMC1501, a magnetic field displacement sensor IC.

[Learn More]

STSPIN233 Click

0

STSPIN233 Click is a complete solution for a 3-phase integrated motor driver, based on the STSPIN233, Low voltage 3-phase integrated motor driver.

[Learn More]

RTC 16 Click

0

RTC 16 Click is a compact add-on board that accurately keeps the time of a day. This board features the BU9873, a CMOS real-time clock that has a built-in interrupt generation function from Rohm Semiconductors. The BU9873 provides year, month, day, weekday, hours, minutes, and seconds based on a 32.768kHz quartz crystal. This RTC is connected to the MCU through an I2C interface and configured to serial transmit time and calendar data. It also has an alarm function that outputs an interrupt signal to the MCU when the day of the week, hour, or minute matches with the preset time.

[Learn More]