Skip to content

Commit d8c813d

Browse files
committed
wifi/espat, rtl8720dn, wifinina: move towards standard common interface for wifi adaptors
Signed-off-by: deadprogram <[email protected]>
1 parent 905fc6f commit d8c813d

File tree

28 files changed

+187
-102
lines changed

28 files changed

+187
-102
lines changed

espat/wifidriver.go

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package espat
2+
3+
import (
4+
"time"
5+
6+
"tinygo.org/x/drivers"
7+
)
8+
9+
func (d *Device) ConnectToAccessPoint(ssid, pass string, timeout time.Duration) error {
10+
if len(ssid) == 0 {
11+
return drivers.ErrWiFiMissingSSID
12+
}
13+
14+
return d.ConnectToAP(ssid, pass, 10)
15+
}
16+
17+
func (d *Device) Disconnect() error {
18+
return d.DisconnectFromAP()
19+
}

examples/espat/espconsole/main.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,9 @@ func connectToAP() {
114114
println("Connecting to wifi network '" + ssid + "'")
115115

116116
adaptor.SetWifiMode(espat.WifiModeClient)
117-
adaptor.ConnectToAP(ssid, pass, 10)
117+
if err := adaptor.ConnectToAccessPoint(ssid, pass, 10*time.Second); err != nil {
118+
failMessage(err.Error())
119+
}
118120

119121
println("Connected.")
120122
ip, err := adaptor.GetClientIP()

examples/espat/esphub/main.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,9 @@ func connectToAP() {
100100
println("Connecting to wifi network '" + ssid + "'")
101101

102102
adaptor.SetWifiMode(espat.WifiModeClient)
103-
adaptor.ConnectToAP(ssid, pass, 10)
103+
if err := adaptor.ConnectToAccessPoint(ssid, pass, 10*time.Second); err != nil {
104+
failMessage(err.Error())
105+
}
104106

105107
println("Connected.")
106108
ip, err := adaptor.GetClientIP()

examples/espat/espstation/main.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,9 @@ func connectToAP() {
8989
println("Connecting to wifi network '" + ssid + "'")
9090

9191
adaptor.SetWifiMode(espat.WifiModeClient)
92-
adaptor.ConnectToAP(ssid, pass, 10)
92+
if err := adaptor.ConnectToAccessPoint(ssid, pass, 10*time.Second); err != nil {
93+
failMessage(err.Error())
94+
}
9395

9496
println("Connected.")
9597
ip, err := adaptor.GetClientIP()

examples/espat/mqttclient/main.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,9 @@ func connectToAP() {
109109
println("Connecting to wifi network '" + ssid + "'")
110110

111111
adaptor.SetWifiMode(espat.WifiModeClient)
112-
adaptor.ConnectToAP(ssid, pass, 10)
112+
if err := adaptor.ConnectToAccessPoint(ssid, pass, 10*time.Second); err != nil {
113+
failMessage(err.Error())
114+
}
113115

114116
println("Connected.")
115117
ip, err := adaptor.GetClientIP()

examples/espat/mqttsub/main.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,9 @@ func connectToAP() {
130130
println("Connecting to wifi network '" + ssid + "'")
131131

132132
adaptor.SetWifiMode(espat.WifiModeClient)
133-
adaptor.ConnectToAP(ssid, pass, 10)
133+
if err := adaptor.ConnectToAccessPoint(ssid, pass, 10*time.Second); err != nil {
134+
failMessage(err.Error())
135+
}
134136

135137
println("Connected.")
136138
ip, err := adaptor.GetClientIP()

examples/espat/tcpclient/main.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,9 @@ func connectToAP() {
9292
println("Connecting to wifi network '" + ssid + "'")
9393

9494
adaptor.SetWifiMode(espat.WifiModeClient)
95-
adaptor.ConnectToAP(ssid, pass, 10)
95+
if err := adaptor.ConnectToAccessPoint(ssid, pass, 10*time.Second); err != nil {
96+
failMessage(err.Error())
97+
}
9698

9799
println("Connected.")
98100
ip, err := adaptor.GetClientIP()

examples/rtl8720dn/mqttclient/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ func run() error {
6565
}
6666
net.UseDriver(rtl)
6767

68-
err = rtl.ConnectToAP(ssid, password)
68+
err = rtl.ConnectToAccessPoint(ssid, password, 10*time.Second)
6969
if err != nil {
7070
return err
7171
}

examples/rtl8720dn/mqttsub/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ func run() error {
7474
}
7575
net.UseDriver(rtl)
7676

77-
err = rtl.ConnectToAP(ssid, password)
77+
err = rtl.ConnectToAccessPoint(ssid, password, 10*time.Second)
7878
if err != nil {
7979
return err
8080
}

examples/rtl8720dn/ntpclient/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ func run() error {
4747
}
4848
net.UseDriver(rtl)
4949

50-
err = rtl.ConnectToAP(ssid, password)
50+
err = rtl.ConnectToAccessPoint(ssid, password, 10*time.Second)
5151
if err != nil {
5252
return err
5353
}

examples/rtl8720dn/tcpclient/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ func run() error {
4747
}
4848
net.UseDriver(rtl)
4949

50-
err = rtl.ConnectToAP(ssid, password)
50+
err = rtl.ConnectToAccessPoint(ssid, password, 10*time.Second)
5151
if err != nil {
5252
return err
5353
}

examples/rtl8720dn/tlsclient/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ func run() error {
7676
net.UseDriver(rtl)
7777
http.SetBuf(buf[:])
7878

79-
err = rtl.ConnectToAP(ssid, password)
79+
err = rtl.ConnectToAccessPoint(ssid, password, 10*time.Second)
8080
if err != nil {
8181
return err
8282
}

examples/rtl8720dn/udpstation/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ func run() error {
4343
net.UseDriver(rtl)
4444
http.SetBuf(buf[:])
4545

46-
err = rtl.ConnectToAP(ssid, password)
46+
err = rtl.ConnectToAccessPoint(ssid, password, 10*time.Second)
4747
if err != nil {
4848
return err
4949
}

examples/rtl8720dn/webclient-tinyterm/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ func run() error {
7474
http.SetBuf(buf[:])
7575

7676
fmt.Fprintf(terminal, "ConnectToAP()\r\n")
77-
err = rtl.ConnectToAP(ssid, password)
77+
err = rtl.ConnectToAccessPoint(ssid, password, 10*time.Second)
7878
if err != nil {
7979
return err
8080
}

examples/rtl8720dn/webclient/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ func run() error {
4343
net.UseDriver(rtl)
4444
http.SetBuf(buf[:])
4545

46-
err = rtl.ConnectToAP(ssid, password)
46+
err = rtl.ConnectToAccessPoint(ssid, password, 10*time.Second)
4747
if err != nil {
4848
return err
4949
}

examples/rtl8720dn/webserver/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ func run() error {
4343
}
4444
http.UseDriver(rtl)
4545

46-
err = rtl.ConnectToAP(ssid, password)
46+
err = rtl.ConnectToAccessPoint(ssid, password, 10*time.Second)
4747
if err != nil {
4848
return err
4949
}

examples/wifinina/connect/main.go

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -128,19 +128,15 @@ func waitSerial() {
128128

129129
// connect to access point
130130
func connectToAP() {
131-
if len(ssid) == 0 || len(pass) == 0 {
132-
for {
133-
println("Connection failed: Either ssid or password not set")
134-
time.Sleep(10 * time.Second)
135-
}
136-
}
137131
time.Sleep(2 * time.Second)
138132
println("Connecting to " + ssid)
139-
adaptor.SetPassphrase(ssid, pass)
140-
for st, _ := adaptor.GetConnectionStatus(); st != wifinina.StatusConnected; {
141-
println("Connection status: " + st.String())
142-
time.Sleep(1 * time.Second)
143-
st, _ = adaptor.GetConnectionStatus()
133+
err := adaptor.ConnectToAccessPoint(ssid, pass, 10*time.Second)
134+
if err != nil { // error connecting to AP
135+
for {
136+
println(err)
137+
time.Sleep(1 * time.Second)
138+
}
144139
}
140+
145141
println("Connected.")
146142
}

examples/wifinina/http-get/main.go

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -132,22 +132,18 @@ func waitSerial() {
132132

133133
// connect to access point
134134
func connectToAP() {
135-
if len(ssid) == 0 || len(pass) == 0 {
135+
time.Sleep(2 * time.Second)
136+
println("Connecting to " + ssid)
137+
err := adaptor.ConnectToAccessPoint(ssid, pass, 10*time.Second)
138+
if err != nil { // error connecting to AP
136139
for {
137-
println("Connection failed: Either ssid or password not set")
138-
time.Sleep(10 * time.Second)
140+
println(err)
141+
time.Sleep(1 * time.Second)
139142
}
140143
}
141-
time.Sleep(2 * time.Second)
142-
message("Connecting to " + ssid)
143-
adaptor.SetPassphrase(ssid, pass)
144-
for st, _ := adaptor.GetConnectionStatus(); st != wifinina.StatusConnected; {
145-
message("Connection status: " + st.String())
146-
time.Sleep(1 * time.Second)
147-
st, _ = adaptor.GetConnectionStatus()
148-
}
149-
message("Connected.")
150-
time.Sleep(2 * time.Second)
144+
145+
println("Connected.")
146+
151147
ip, _, _, err := adaptor.GetIP()
152148
for ; err != nil; ip, _, _, err = adaptor.GetIP() {
153149
message(err.Error())

examples/wifinina/mqttclient/main.go

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -104,14 +104,16 @@ func main() {
104104
func connectToAP() {
105105
time.Sleep(2 * time.Second)
106106
println("Connecting to " + ssid)
107-
adaptor.SetPassphrase(ssid, pass)
108-
for st, _ := adaptor.GetConnectionStatus(); st != wifinina.StatusConnected; {
109-
println("Connection status: " + st.String())
110-
time.Sleep(1 * time.Second)
111-
st, _ = adaptor.GetConnectionStatus()
107+
err := adaptor.ConnectToAccessPoint(ssid, pass, 10*time.Second)
108+
if err != nil { // error connecting to AP
109+
for {
110+
println(err)
111+
time.Sleep(1 * time.Second)
112+
}
112113
}
114+
113115
println("Connected.")
114-
time.Sleep(2 * time.Second)
116+
115117
ip, _, _, err := adaptor.GetIP()
116118
for ; err != nil; ip, _, _, err = adaptor.GetIP() {
117119
println(err.Error())

examples/wifinina/mqttsub/main.go

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -116,13 +116,16 @@ func publishing() {
116116
func connectToAP() {
117117
time.Sleep(2 * time.Second)
118118
println("Connecting to " + ssid)
119-
adaptor.SetPassphrase(ssid, pass)
120-
for st, _ := adaptor.GetConnectionStatus(); st != wifinina.StatusConnected; {
121-
println("Connection status: " + st.String())
122-
time.Sleep(1 * time.Second)
123-
st, _ = adaptor.GetConnectionStatus()
119+
err := adaptor.ConnectToAccessPoint(ssid, pass, 10*time.Second)
120+
if err != nil { // error connecting to AP
121+
for {
122+
println(err)
123+
time.Sleep(1 * time.Second)
124+
}
124125
}
126+
125127
println("Connected.")
128+
126129
time.Sleep(2 * time.Second)
127130
ip, _, _, err := adaptor.GetIP()
128131
for ; err != nil; ip, _, _, err = adaptor.GetIP() {

examples/wifinina/ntpclient/main.go

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -151,21 +151,18 @@ func clearBuffer() {
151151

152152
// connect to access point
153153
func connectToAP() {
154-
if len(ssid) == 0 || len(pass) == 0 {
154+
time.Sleep(2 * time.Second)
155+
println("Connecting to " + ssid)
156+
err := adaptor.ConnectToAccessPoint(ssid, pass, 10*time.Second)
157+
if err != nil { // error connecting to AP
155158
for {
156-
println("Connection failed: Either ssid or password not set")
157-
time.Sleep(10 * time.Second)
159+
println(err)
160+
time.Sleep(1 * time.Second)
158161
}
159162
}
160-
time.Sleep(2 * time.Second)
161-
message("Connecting to " + ssid)
162-
adaptor.SetPassphrase(ssid, pass)
163-
for st, _ := adaptor.GetConnectionStatus(); st != wifinina.StatusConnected; {
164-
message("Connection status: " + st.String())
165-
time.Sleep(1 * time.Second)
166-
st, _ = adaptor.GetConnectionStatus()
167-
}
168-
message("Connected.")
163+
164+
println("Connected.")
165+
169166
time.Sleep(2 * time.Second)
170167
ip, _, _, err := adaptor.GetIP()
171168
for ; err != nil; ip, _, _, err = adaptor.GetIP() {

examples/wifinina/tcpclient/main.go

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -113,14 +113,17 @@ func sendBatch() {
113113
// connect to access point
114114
func connectToAP() {
115115
time.Sleep(2 * time.Second)
116-
message("Connecting to " + ssid)
117-
adaptor.SetPassphrase(ssid, pass)
118-
for st, _ := adaptor.GetConnectionStatus(); st != wifinina.StatusConnected; {
119-
message("Connection status: " + st.String())
120-
time.Sleep(1 * time.Second)
121-
st, _ = adaptor.GetConnectionStatus()
116+
println("Connecting to " + ssid)
117+
err := adaptor.ConnectToAccessPoint(ssid, pass, 10*time.Second)
118+
if err != nil { // error connecting to AP
119+
for {
120+
println(err)
121+
time.Sleep(1 * time.Second)
122+
}
122123
}
123-
message("Connected.")
124+
125+
println("Connected.")
126+
124127
time.Sleep(2 * time.Second)
125128
ip, _, _, err := adaptor.GetIP()
126129
for ; err != nil; ip, _, _, err = adaptor.GetIP() {

examples/wifinina/tlsclient/main.go

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -122,21 +122,18 @@ func makeHTTPSRequest() {
122122

123123
// connect to access point
124124
func connectToAP() {
125-
if len(ssid) == 0 || len(pass) == 0 {
125+
time.Sleep(2 * time.Second)
126+
println("Connecting to " + ssid)
127+
err := adaptor.ConnectToAccessPoint(ssid, pass, 10*time.Second)
128+
if err != nil { // error connecting to AP
126129
for {
127-
println("Connection failed: Either ssid or password not set")
128-
time.Sleep(10 * time.Second)
130+
println(err)
131+
time.Sleep(1 * time.Second)
129132
}
130133
}
131-
time.Sleep(2 * time.Second)
132-
message("Connecting to " + ssid)
133-
adaptor.SetPassphrase(ssid, pass)
134-
for st, _ := adaptor.GetConnectionStatus(); st != wifinina.StatusConnected; {
135-
message("Connection status: " + st.String())
136-
time.Sleep(1 * time.Second)
137-
st, _ = adaptor.GetConnectionStatus()
138-
}
139-
message("Connected.")
134+
135+
println("Connected.")
136+
140137
time.Sleep(2 * time.Second)
141138
ip, _, _, err := adaptor.GetIP()
142139
for ; err != nil; ip, _, _, err = adaptor.GetIP() {

examples/wifinina/udpstation/main.go

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -76,15 +76,17 @@ func main() {
7676
// connect to access point
7777
func connectToAP() {
7878
time.Sleep(2 * time.Second)
79-
message("Connecting to " + ssid)
80-
adaptor.SetPassphrase(ssid, pass)
81-
for st, _ := adaptor.GetConnectionStatus(); st != wifinina.StatusConnected; {
82-
message("Connection status: " + st.String())
83-
time.Sleep(1 * time.Second)
84-
st, _ = adaptor.GetConnectionStatus()
79+
println("Connecting to " + ssid)
80+
err := adaptor.ConnectToAccessPoint(ssid, pass, 10*time.Second)
81+
if err != nil { // error connecting to AP
82+
for {
83+
println(err)
84+
time.Sleep(1 * time.Second)
85+
}
8586
}
86-
message("Connected.")
87-
time.Sleep(2 * time.Second)
87+
88+
println("Connected.")
89+
8890
ip, _, _, err := adaptor.GetIP()
8991
for ; err != nil; ip, _, _, err = adaptor.GetIP() {
9092
message(err.Error())

0 commit comments

Comments
 (0)