@@ -191,8 +191,7 @@ STATIC void wlan_lpds_callback_disable (mp_obj_t self_in);
191191//! \return None
192192//!
193193//*****************************************************************************
194- void SimpleLinkWlanEventHandler (SlWlanEvent_t * pWlanEvent )
195- {
194+ void SimpleLinkWlanEventHandler (SlWlanEvent_t * pWlanEvent ) {
196195 if (!pWlanEvent ) {
197196 return ;
198197 }
@@ -249,8 +248,7 @@ void SimpleLinkWlanEventHandler(SlWlanEvent_t *pWlanEvent)
249248//! \return None
250249//!
251250//*****************************************************************************
252- void SimpleLinkNetAppEventHandler (SlNetAppEvent_t * pNetAppEvent )
253- {
251+ void SimpleLinkNetAppEventHandler (SlNetAppEvent_t * pNetAppEvent ) {
254252 if (!pNetAppEvent ) {
255253 return ;
256254 }
@@ -295,8 +293,7 @@ void SimpleLinkNetAppEventHandler(SlNetAppEvent_t *pNetAppEvent)
295293//! \return None
296294//!
297295//****************************************************************************
298- void SimpleLinkHttpServerCallback (SlHttpServerEvent_t * pHttpEvent , SlHttpServerResponse_t * pHttpResponse )
299- {
296+ void SimpleLinkHttpServerCallback (SlHttpServerEvent_t * pHttpEvent , SlHttpServerResponse_t * pHttpResponse ) {
300297 if (!pHttpEvent ) {
301298 return ;
302299 }
@@ -320,8 +317,7 @@ void SimpleLinkHttpServerCallback(SlHttpServerEvent_t *pHttpEvent, SlHttpServerR
320317//! \return None
321318//!
322319//*****************************************************************************
323- void SimpleLinkGeneralEventHandler (SlDeviceEvent_t * pDevEvent )
324- {
320+ void SimpleLinkGeneralEventHandler (SlDeviceEvent_t * pDevEvent ) {
325321 if (!pDevEvent ) {
326322 return ;
327323 }
@@ -339,8 +335,7 @@ void SimpleLinkGeneralEventHandler(SlDeviceEvent_t *pDevEvent)
339335//! \return None
340336//!
341337//*****************************************************************************
342- void SimpleLinkSockEventHandler (SlSockEvent_t * pSock )
343- {
338+ void SimpleLinkSockEventHandler (SlSockEvent_t * pSock ) {
344339 if (!pSock ) {
345340 return ;
346341 }
@@ -357,11 +352,11 @@ void SimpleLinkSockEventHandler(SlSockEvent_t *pSock)
357352 case SL_SOCKET_ASYNC_EVENT :
358353 switch (pSock -> socketAsyncEvent .SockAsyncData .type ) {
359354 case SSL_ACCEPT :
360- //accept failed due to ssl issue ( tcp pass)
361355 break ;
362356 case RX_FRAGMENTATION_TOO_BIG :
363357 break ;
364358 case OTHER_SIDE_CLOSE_SSL_DATA_NOT_ENCRYPTED :
359+ break ;
365360 default :
366361 break ;
367362 }
@@ -512,19 +507,27 @@ void wlan_update(void) {
512507#endif
513508}
514509
515- // call this function to disable the complete WLAN subsystem before a system reset
516510void wlan_stop (uint32_t timeout ) {
517- if (wlan_obj .mode >= 0 ) {
518511#if (MICROPY_PORT_HAS_TELNET || MICROPY_PORT_HAS_FTP )
519- // Stop all other processes using the wlan engine
520- if ((wlan_obj .servers_enabled = servers_are_enabled ())) {
521- servers_stop ();
522- }
512+ // Stop all other processes using the wlan engine
513+ if ((wlan_obj .servers_enabled = servers_are_enabled ())) {
514+ servers_stop ();
515+ }
523516#endif
524- sl_LockObjLock (& wlan_LockObj , SL_OS_WAIT_FOREVER );
525- wlan_obj .mode = -1 ;
526- sl_Stop (MAX (timeout , SL_STOP_TIMEOUT ));
517+ sl_LockObjLock (& wlan_LockObj , SL_OS_WAIT_FOREVER );
518+ sl_Stop (timeout );
519+ wlan_obj .mode = -1 ;
520+ }
521+
522+ void wlan_start (void ) {
523+ wlan_obj .mode = sl_Start (0 , 0 , 0 );
524+ sl_LockObjUnlock (& wlan_LockObj );
525+ #if (MICROPY_PORT_HAS_TELNET || MICROPY_PORT_HAS_FTP )
526+ // start the servers if they were enabled before
527+ if (wlan_obj .servers_enabled ) {
528+ servers_start ();
527529 }
530+ #endif
528531}
529532
530533void wlan_get_mac (uint8_t * macAddress ) {
@@ -554,8 +557,7 @@ STATIC void wlan_initialize_data (void) {
554557}
555558
556559STATIC void wlan_reenable (SlWlanMode_t mode ) {
557- // Stop and start again
558- wlan_obj .mode = -1 ;
560+ // stop and start again
559561 sl_LockObjLock (& wlan_LockObj , SL_OS_WAIT_FOREVER );
560562 sl_Stop (SL_STOP_TIMEOUT );
561563 wlan_obj .mode = sl_Start (0 , 0 , 0 );
@@ -566,13 +568,11 @@ STATIC void wlan_reenable (SlWlanMode_t mode) {
566568STATIC modwlan_Status_t wlan_do_connect (const char * ssid , uint32_t ssid_len , const char * bssid , uint8_t sec ,
567569 const char * key , uint32_t key_len ) {
568570 SlSecParams_t secParams ;
569-
570571 secParams .Key = (_i8 * )key ;
571572 secParams .KeyLen = ((key != NULL ) ? key_len : 0 );
572573 secParams .Type = sec ;
573574
574575 if (0 == sl_WlanConnect ((_i8 * )ssid , ssid_len , (_u8 * )bssid , & secParams , NULL )) {
575-
576576 // Wait for the WLAN Event
577577 uint32_t waitForConnectionMs = 0 ;
578578 while (!IS_CONNECTED (wlan_obj .status )) {
@@ -584,10 +584,8 @@ STATIC modwlan_Status_t wlan_do_connect (const char* ssid, uint32_t ssid_len, co
584584 return MODWLAN_ERROR_TIMEOUT ;
585585 }
586586 }
587-
588587 return MODWLAN_OK ;
589588 }
590-
591589 return MODWLAN_ERROR_INVALID_PARAMS ;
592590}
593591
@@ -782,17 +780,15 @@ STATIC mp_obj_t wlan_connect(mp_uint_t n_args, const mp_obj_t *pos_args, mp_map_
782780STATIC MP_DEFINE_CONST_FUN_OBJ_KW (wlan_connect_obj , 1 , wlan_connect );
783781
784782/// \method wlan_disconnect()
785- /// Closes the current WLAN connection
786- ///
783+ /// Close the current WLAN connection
787784STATIC mp_obj_t wlan_disconnect (mp_obj_t self_in ) {
788785 sl_WlanDisconnect ();
789786 return mp_const_none ;
790787}
791788STATIC MP_DEFINE_CONST_FUN_OBJ_1 (wlan_disconnect_obj , wlan_disconnect );
792789
793790/// \method is_connected()
794- /// Returns true if connected to the AP and an IP address has been assigned. False otherwise.
795- ///
791+ /// Return true if connected to the AP and an IP address has been assigned. False otherwise.
796792STATIC mp_obj_t wlan_isconnected (mp_obj_t self_in ) {
797793 if (GET_STATUS_BIT (wlan_obj .status , STATUS_BIT_CONNECTION ) &&
798794 GET_STATUS_BIT (wlan_obj .status , STATUS_BIT_IP_ACQUIRED )) {
@@ -803,7 +799,6 @@ STATIC mp_obj_t wlan_isconnected(mp_obj_t self_in) {
803799STATIC MP_DEFINE_CONST_FUN_OBJ_1 (wlan_isconnected_obj , wlan_isconnected );
804800
805801STATIC mp_obj_t wlan_ifconfig (mp_obj_t self_in ) {
806-
807802 unsigned char len = sizeof (SlNetCfgIpV4Args_t );
808803 unsigned char dhcpIsOn ;
809804 SlNetCfgIpV4Args_t ipV4 ;
@@ -870,7 +865,7 @@ STATIC mp_obj_t wlan_urn (uint n_args, const mp_obj_t *args) {
870865STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN (wlan_urn_obj , 1 , 2 , wlan_urn );
871866
872867/// \method wlan_netlist()
873- /// Returns a list of tuples with all the acces points within range
868+ /// Return a list of tuples with all the acces points within range
874869STATIC mp_obj_t wlan_scan (mp_obj_t self_in ) {
875870 Sl_WlanNetworkEntry_t wlanEntry ;
876871 uint8_t _index = 0 ;
@@ -912,7 +907,7 @@ STATIC mp_obj_t wlan_scan(mp_obj_t self_in) {
912907STATIC MP_DEFINE_CONST_FUN_OBJ_1 (wlan_scan_obj , wlan_scan );
913908
914909/// \method callback(handler, pwrmode)
915- /// Creates a callback object associated with WLAN
910+ /// Create a callback object associated with WLAN
916911/// min num of arguments is 1 (pwrmode)
917912STATIC mp_obj_t wlan_callback (mp_uint_t n_args , const mp_obj_t * pos_args , mp_map_t * kw_args ) {
918913 mp_arg_val_t args [mpcallback_INIT_NUM_ARGS ];
0 commit comments