Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
odroid_go_advance:application_note:sdio_wifi [2020/05/21 11:56]
joy.cho [Configuring WIFI station mode (2) - using command line]
odroid_go_advance:application_note:sdio_wifi [2020/09/03 17:09] (current)
joy.cho [Configuring WIFI AP mode]
Line 1: Line 1:
 ====== How to configure built-in WIFI module ====== ====== How to configure built-in WIFI module ======
-<WRAP info round> 
-**This wiki page will be updated soon!!!** (2020.05.21) 
-</​WRAP>​ 
  
 <WRAP info round> <WRAP info round>
Line 8: Line 5:
 </​WRAP>​ </​WRAP>​
  
-  - WIFI KEY Features+  - Module Key Features
   - Configuring WIFI station mode (1) - using [Configuration] Menu   - Configuring WIFI station mode (1) - using [Configuration] Menu
   - Configuring WIFI station mode (2) - using command line   - Configuring WIFI station mode (2) - using command line
   - Configuring WIFI AP mode   - Configuring WIFI AP mode
-  - Checking basic connection +  - Checking basic connection ​of wlan0 
-  - Configuring ​Suspend/​Resume +  - Workaround to support ​Suspend/​Resume ​with esp8089 module 
-===== WIFI Key Features ===== +===== Module ​Key Features ===== 
-  ​* ​ESP-WROOM-S2 ​that integrates ​ESP8266EX + 
-  ​* ​WIFI Protocol ​802.11 b/g/n +^ Items            ^ Specifications ​                             ^ 
-  Frequency Range 2.4 GHz ~ 2.5 GHz (2400 MHz ~ 2483.5 MHz) +| Module ​          ​| ​ESP-WROOM-S2 ​                               | 
-  ​* ​SDIO interface up to 50 MHz, SDIO v2.0+| MCU              | ESP8266EX ​                                  | 
 +WIFI Protocol ​   ​| ​802.11 b/g/n, up to 72.2 Mbps of data rate  
 +Frequency Range  ​| ​2.4 GHz ~ 2.5 GHz (2400 MHz ~ 2483.5 MHz)   | 
 +| Interface ​       | SDIO interface up to 50MHz, SDIO v2.0       |
  
  
Line 27: Line 27:
  
 ===== Configuring WIFI station mode (2) - using command line ===== ===== Configuring WIFI station mode (2) - using command line =====
-Check **esp8089** module is loaded normally.+Or you can establish WIFI network using the following instuctions.\\ 
 +\\ 
 +First, check **esp8089** module is loaded normally.
 <code bash target> <code bash target>
 $ lsmod $ lsmod
Line 75: Line 77:
  
 ===== Configuring WIFI AP mode ===== ===== Configuring WIFI AP mode =====
 +There is no GUI menu to configure WIFI AP mode for now.\\ 
 +Please use the following instruction via command line.
 === 1. Update & Upgrade === === 1. Update & Upgrade ===
 <code bash target> <code bash target>
Line 91: Line 94:
 $ sudo systemctl disable dnsmasq $ sudo systemctl disable dnsmasq
 </​code>​ </​code>​
-=== 3. Setup (1) - Configuration ​a static IP ===+=== 3. Setup (1) - Configuring ​a static IP ===
 To configure the static IP address, please edit a dhcpcd configuration file, /​etc/​dhcpcd.conf.\\ To configure the static IP address, please edit a dhcpcd configuration file, /​etc/​dhcpcd.conf.\\
 Go to the end fo this file and add the following lines.\\ Go to the end fo this file and add the following lines.\\
Line 104: Line 107:
 </​code>​ </​code>​
  
-=== 4. Setup (2) Configuring the access point host software - '​hostapd'​ ===+=== 4. Setup (2) Configuring the access point host software - '​hostapd'​ ===
 (1) You need to edit the hostapd configuration file in /​etc/​hostapd.\\ (1) You need to edit the hostapd configuration file in /​etc/​hostapd.\\
 <code bash target> <code bash target>
Line 136: Line 139:
 </​code>​ </​code>​
 <code bash target> <code bash target>
-# DAEMON_CONF=""​ 
 DAEMON_CONF="/​etc/​hostapd/​hostapd.conf"​ DAEMON_CONF="/​etc/​hostapd/​hostapd.conf"​
 </​code>​ </​code>​
  
-=== 5. Setup (3) Configuring DHCP server - '​dnsmasq'​ ===+=== 5. Setup (3) Configuring DHCP server - '​dnsmasq'​ ===
 Add the following information in the dnsmasq configuration file, /​etc/​dnsmasq.conf.\\ Add the following information in the dnsmasq configuration file, /​etc/​dnsmasq.conf.\\
 <code bash target> <code bash target>
-#stop DNSmasq from using resolv.conf+$ vi /​etc/​dnsmasq.conf 
 +</​code>​ 
 +<code bash target>​ 
 +If you don't want dnsmasq to read /etc/resolv.conf ​or any other 
 +# file, getting its servers from this file instead (see below), then 
 +# uncomment this.
 no-resolv no-resolv
-#Interface ​to use+ 
 +If you want dnsmasq ​to listen for DHCP and DNS requests only on 
 +# specified interfaces (and the loopback) give the name of the 
 +# interface (eg eth0) here. 
 +# Repeat the line for more than one interface.
 interface=wlan0 interface=wlan0
 +
 +# On systems which support it, dnsmasq binds the wildcard address,
 +# even when it is listening on only some interfaces. It then discards
 +# requests that it shouldn'​t reply to. This has the advantage of
 +# working even when interfaces come and go and change address. If you
 +# want dnsmasq to really bind only the interfaces it is listening on,
 +# uncomment this option. About the only time you may need this is when
 +# running another nameserver on the same machine.
 bind-interfaces bind-interfaces
 +
 +# Uncomment this to enable the integrated DHCP server, you need
 +# to supply the range of addresses available for lease and optionally
 +# a lease time. If you have more than one network, you will need to
 +# repeat this for each network on which you want to supply DHCP
 +# service.
 dhcp-range=192.168.4.3,​192.168.4.20,​12h dhcp-range=192.168.4.3,​192.168.4.20,​12h
 </​code>​ </​code>​
  
-=== 6. Setup (4) Configuring ​network ​===+=== 6. Setup (4) Configuring ​Network ​===
 Create /​etc/​network/​interfaces. \\ Create /​etc/​network/​interfaces. \\
 Make sure that 3rd line is blocked using "#"​.\\ Make sure that 3rd line is blocked using "#"​.\\
Line 162: Line 187:
 === 7. Start services === === 7. Start services ===
 <code bash target> <code bash target>
-service ​dnsmasq ​start +sudo systemctl enable ​dnsmasq 
-service hostapd ​start +sudo systemctl ​start dnsmasq
-</​code>​+
  
 +$ sudo systemctl enable hostapd
 +$ sudo systemctl start hostapd
 +</​code>​
 +<code bash target>
 +$ ip addr
 +1: lo: <​LOOPBACK,​UP,​LOWER_UP>​ mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
 +    link/​loopback 00:​00:​00:​00:​00:​00 brd 00:​00:​00:​00:​00:​00
 +    inet 127.0.0.1/8 scope host lo
 +       ​valid_lft forever preferred_lft forever
 +    inet6 ::1/128 scope host 
 +       ​valid_lft forever preferred_lft forever
 +2: wlan0: <​BROADCAST,​MULTICAST,​UP,​LOWER_UP>​ mtu 1500 qdisc mq state UP group default qlen 1000
 +    link/ether ab:​cd:​ef:​12:​34:​56 brd ff:​ff:​ff:​ff:​ff:​ff
 +    inet 192.168.4.1/​24 brd 192.168.4.255 scope global noprefixroute wlan0
 +       ​valid_lft forever preferred_lft forever
 +    inet6 fe80::​1234:​1234:​1234:​1234/​64 scope link 
 +       ​valid_lft forever preferred_lft forever
 +</​code>​
 ===== Checking basic connection ===== ===== Checking basic connection =====
 +If you get fails during network setup, please check the followings using ssh with a USB-to-Ethernet adapter or UART console.
 +
 === mmc1 node === === mmc1 node ===
 <code bash target> <code bash target>
Line 196: Line 240:
 </​code>​ </​code>​
  
-===== Configuring ​Suspend/​Resume =====+===== Workaround to support ​Suspend/​Resume ​with esp8089 module ​=====
  
 **/​lib/​systemd/​system-sleep/​sleep**\\ **/​lib/​systemd/​system-sleep/​sleep**\\