Re: [PATCH v2] uqmi: fix network registration loop

2021-05-11 Thread Baptiste Jonglez
On 10-05-21, Florian Eckert wrote:
> 
> 
> On 2021-05-08 12:33, Baptiste Jonglez wrote:
> > Applied, thanks.
> > 
> > Does this need to be backported to 21.02 or even 19.07?
> 
> yes that would not be bad at least for openwrt-21.02
> On openwrt-19.07 there are additional commits needed.

Ok, then I won't touch 19.07, unless uqmi support is really broken.

I've backported this patch to 21.02.

> Thanks for take care
> 
> > 
> > Baptiste
> > 
> > On 20-04-21, thomas.rich...@kontron.com wrote:
> > > From: Thomas Richard 
> > > 
> > > With some debug in qmi.sh using following patch, some errors are
> > > visible
> > > in the registration step
> > > @@ -29,6 +29,7 @@ proto_qmi_init_config() {
> > >  }
> > > 
> > >  proto_qmi_setup() {
> > > +   set -x
> > > local interface="$1"
> > > local dataformat connstat plmn_mode mcc mnc
> > > local device apn auth username password pincode delay modes
> > > pdptype
> > > @@ -224,6 +225,8 @@ proto_qmi_setup() {
> > > fi
> > > done
> > > 
> > > +   registration=$(uqmi -s -d "$device" --get-serving-system)
> > > +
> > > [ -n "$modes" ] && uqmi -s -d "$device" --set-network-modes
> > > "$modes" > /dev/null 2>&1
> > > 
> > > echo "Starting network $interface"
> > > 
> > > During the boot of the system, modem could not start automatically its
> > > network registration.
> > > netifd: wan (9235): + echo 'Waiting for network registration'
> > > netifd: wan (9235): Waiting for network registration
> > > netifd: wan (9235): + local 'registration_timeout=0'
> > > netifd: wan (9235): + uqmi -s -d /dev/cdc-wdm1 --get-serving-system
> > > netifd: wan (9235): + grep '"searching"'
> > > netifd: wan (9235): + uqmi -s -d /dev/cdc-wdm1 --get-serving-system
> > > netifd: wan (9235): + 
> > > registration='{"registration":"not_registered","plmn_mcc":208,"plmn_mnc":20,"plmn_description":"","roaming":true}'
> > > netifd: wan (9235): + '[' -n  ]
> > > netifd: wan (9235): + echo 'Starting network wan'
> > > 
> > > As the while loop checks only "searching" pattern, uqmi.sh script
> > > quits
> > > searching loop and continues whereas the modem is not registered
> > > 
> > > Other issue, after X seconds modem stops searching.
> > > netifd: wan (9213): + uqmi -s -d /dev/cdc-wdm0 --get-serving-system
> > > netifd: wan (9213): + grep '"searching"'
> > > netifd: wan (9213): + '[' -e /dev/cdc-wdm0 ]
> > > netifd: wan (9213): + '[' 3 -lt 0 -o 0 '=' 0 ]
> > > netifd: wan (9213): + let registration_timeout++
> > > netifd: wan (9213): + sleep 1
> > > netifd: wan (9213): + uqmi -s -d /dev/cdc-wdm0 --get-serving-system
> > > netifd: wan (9213): + grep '"searching"'
> > > netifd: wan (9213): + uqmi -s -d /dev/cdc-wdm0 --get-serving-system
> > > netifd: wan (9213): + registration='{"registration":"not_registered"}'
> > > netifd: wan (9213): + '[' -n  ]
> > > netifd: wan (9213): + echo 'Starting network wan'
> > > netifd: wan (9213): Starting network wan
> > > 
> > > If registration_timeout is not expired, registration can be restarted
> > > 
> > > Signed-off-by: Thomas Richard 
> > > ---
> > >  package/network/utils/uqmi/Makefile|  2 +-
> > >  .../utils/uqmi/files/lib/netifd/proto/qmi.sh   | 35
> > > --
> > >  2 files changed, 27 insertions(+), 10 deletions(-)
> > > 
> > > diff --git a/package/network/utils/uqmi/Makefile
> > > b/package/network/utils/uqmi/Makefile
> > > index 68958a3729..da54ba0f46 100644
> > > --- a/package/network/utils/uqmi/Makefile
> > > +++ b/package/network/utils/uqmi/Makefile
> > > @@ -1,7 +1,7 @@
> > >  include $(TOPDIR)/rules.mk
> > > 
> > >  PKG_NAME:=uqmi
> > > -PKG_RELEASE:=2
> > > +PKG_RELEASE:=3
> > > 
> > >  PKG_SOURCE_PROTO:=git
> > >  PKG_SOURCE_URL=$(PROJECT_GIT)/project/uqmi.git
> > > diff --git
> > > a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
> > > b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
> > > index a6c785eb56..c0134f44dd 100755
> > > --- a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
> > > +++ b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
> > > @@ -209,19 +209,36 @@ proto_qmi_setup() {
> > > 
> > >   uqmi -s -d "$device" --sync > /dev/null 2>&1
> > > 
> > > + uqmi -s -d "$device" --network-register > /dev/null 2>&1
> > > +
> > >   echo "Waiting for network registration"
> > > + sleep 1
> > >   local registration_timeout=0
> > > - while uqmi -s -d "$device" --get-serving-system | grep
> > > '"searching"' > /dev/null; do
> > > - [ -e "$device" ] || return 1
> > > - if [ "$registration_timeout" -lt "$timeout" -o "$timeout" = "0"
> > > ]; then
> > > - let registration_timeout++
> > > - sleep 1;
> > > + local registration_state=""
> > > + while true; do
> > > + registration_state=$(uqmi -s -d "$device" --get-serving-system
> > > 2>/dev/null | jsonfilter -e "@.registration" 2>/dev/null)
> > > +
> > > + [ "$registration_state" = "registered" ] && b

Re: [PATCH v2] uqmi: fix network registration loop

2021-05-09 Thread Florian Eckert




On 2021-05-08 12:33, Baptiste Jonglez wrote:

Applied, thanks.

Does this need to be backported to 21.02 or even 19.07?


yes that would not be bad at least for openwrt-21.02
On openwrt-19.07 there are additional commits needed.

Thanks for take care



Baptiste

On 20-04-21, thomas.rich...@kontron.com wrote:

From: Thomas Richard 

With some debug in qmi.sh using following patch, some errors are 
visible

in the registration step
@@ -29,6 +29,7 @@ proto_qmi_init_config() {
 }

 proto_qmi_setup() {
+   set -x
local interface="$1"
local dataformat connstat plmn_mode mcc mnc
local device apn auth username password pincode delay modes 
pdptype

@@ -224,6 +225,8 @@ proto_qmi_setup() {
fi
done

+   registration=$(uqmi -s -d "$device" --get-serving-system)
+
[ -n "$modes" ] && uqmi -s -d "$device" --set-network-modes 
"$modes" > /dev/null 2>&1


echo "Starting network $interface"

During the boot of the system, modem could not start automatically its
network registration.
netifd: wan (9235): + echo 'Waiting for network registration'
netifd: wan (9235): Waiting for network registration
netifd: wan (9235): + local 'registration_timeout=0'
netifd: wan (9235): + uqmi -s -d /dev/cdc-wdm1 --get-serving-system
netifd: wan (9235): + grep '"searching"'
netifd: wan (9235): + uqmi -s -d /dev/cdc-wdm1 --get-serving-system
netifd: wan (9235): + 
registration='{"registration":"not_registered","plmn_mcc":208,"plmn_mnc":20,"plmn_description":"","roaming":true}'

netifd: wan (9235): + '[' -n  ]
netifd: wan (9235): + echo 'Starting network wan'

As the while loop checks only "searching" pattern, uqmi.sh script 
quits

searching loop and continues whereas the modem is not registered

Other issue, after X seconds modem stops searching.
netifd: wan (9213): + uqmi -s -d /dev/cdc-wdm0 --get-serving-system
netifd: wan (9213): + grep '"searching"'
netifd: wan (9213): + '[' -e /dev/cdc-wdm0 ]
netifd: wan (9213): + '[' 3 -lt 0 -o 0 '=' 0 ]
netifd: wan (9213): + let registration_timeout++
netifd: wan (9213): + sleep 1
netifd: wan (9213): + uqmi -s -d /dev/cdc-wdm0 --get-serving-system
netifd: wan (9213): + grep '"searching"'
netifd: wan (9213): + uqmi -s -d /dev/cdc-wdm0 --get-serving-system
netifd: wan (9213): + registration='{"registration":"not_registered"}'
netifd: wan (9213): + '[' -n  ]
netifd: wan (9213): + echo 'Starting network wan'
netifd: wan (9213): Starting network wan

If registration_timeout is not expired, registration can be restarted

Signed-off-by: Thomas Richard 
---
 package/network/utils/uqmi/Makefile|  2 +-
 .../utils/uqmi/files/lib/netifd/proto/qmi.sh   | 35 
--

 2 files changed, 27 insertions(+), 10 deletions(-)

diff --git a/package/network/utils/uqmi/Makefile 
b/package/network/utils/uqmi/Makefile

index 68958a3729..da54ba0f46 100644
--- a/package/network/utils/uqmi/Makefile
+++ b/package/network/utils/uqmi/Makefile
@@ -1,7 +1,7 @@
 include $(TOPDIR)/rules.mk

 PKG_NAME:=uqmi
-PKG_RELEASE:=2
+PKG_RELEASE:=3

 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL=$(PROJECT_GIT)/project/uqmi.git
diff --git a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh 
b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh

index a6c785eb56..c0134f44dd 100755
--- a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
+++ b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
@@ -209,19 +209,36 @@ proto_qmi_setup() {

uqmi -s -d "$device" --sync > /dev/null 2>&1

+   uqmi -s -d "$device" --network-register > /dev/null 2>&1
+
echo "Waiting for network registration"
+   sleep 1
local registration_timeout=0
-	while uqmi -s -d "$device" --get-serving-system | grep '"searching"' 
> /dev/null; do

-   [ -e "$device" ] || return 1
-		if [ "$registration_timeout" -lt "$timeout" -o "$timeout" = "0" ]; 
then

-   let registration_timeout++
-   sleep 1;
+   local registration_state=""
+   while true; do
+		registration_state=$(uqmi -s -d "$device" --get-serving-system 
2>/dev/null | jsonfilter -e "@.registration" 2>/dev/null)

+
+   [ "$registration_state" = "registered" ] && break
+
+		if [ "$registration_state" = "searching" ] || [ 
"$registration_state" = "not_registered" ]; then
+			if [ "$registration_timeout" -lt "$timeout" ] || [ "$timeout" = 
"0" ]; then

+   [ "$registration_state" = "searching" ] || {
+	echo "Device stopped network registration. Restart network 
registration"

+   uqmi -s -d "$device" --network-register > 
/dev/null 2>&1
+   }
+   let registration_timeout++
+   sleep 1
+   continue
+   fi
+   echo "Network registration failed, registration timeout 
reached"
el

Re: [PATCH v2] uqmi: fix network registration loop

2021-05-08 Thread Baptiste Jonglez
Applied, thanks.

Does this need to be backported to 21.02 or even 19.07?

Baptiste

On 20-04-21, thomas.rich...@kontron.com wrote:
> From: Thomas Richard 
> 
> With some debug in qmi.sh using following patch, some errors are visible
> in the registration step
> @@ -29,6 +29,7 @@ proto_qmi_init_config() {
>  }
> 
>  proto_qmi_setup() {
> +   set -x
> local interface="$1"
> local dataformat connstat plmn_mode mcc mnc
> local device apn auth username password pincode delay modes pdptype
> @@ -224,6 +225,8 @@ proto_qmi_setup() {
> fi
> done
> 
> +   registration=$(uqmi -s -d "$device" --get-serving-system)
> +
> [ -n "$modes" ] && uqmi -s -d "$device" --set-network-modes "$modes" 
> > /dev/null 2>&1
> 
> echo "Starting network $interface"
> 
> During the boot of the system, modem could not start automatically its
> network registration.
> netifd: wan (9235): + echo 'Waiting for network registration'
> netifd: wan (9235): Waiting for network registration
> netifd: wan (9235): + local 'registration_timeout=0'
> netifd: wan (9235): + uqmi -s -d /dev/cdc-wdm1 --get-serving-system
> netifd: wan (9235): + grep '"searching"'
> netifd: wan (9235): + uqmi -s -d /dev/cdc-wdm1 --get-serving-system
> netifd: wan (9235): + 
> registration='{"registration":"not_registered","plmn_mcc":208,"plmn_mnc":20,"plmn_description":"","roaming":true}'
> netifd: wan (9235): + '[' -n  ]
> netifd: wan (9235): + echo 'Starting network wan'
> 
> As the while loop checks only "searching" pattern, uqmi.sh script quits
> searching loop and continues whereas the modem is not registered
> 
> Other issue, after X seconds modem stops searching.
> netifd: wan (9213): + uqmi -s -d /dev/cdc-wdm0 --get-serving-system
> netifd: wan (9213): + grep '"searching"'
> netifd: wan (9213): + '[' -e /dev/cdc-wdm0 ]
> netifd: wan (9213): + '[' 3 -lt 0 -o 0 '=' 0 ]
> netifd: wan (9213): + let registration_timeout++
> netifd: wan (9213): + sleep 1
> netifd: wan (9213): + uqmi -s -d /dev/cdc-wdm0 --get-serving-system
> netifd: wan (9213): + grep '"searching"'
> netifd: wan (9213): + uqmi -s -d /dev/cdc-wdm0 --get-serving-system
> netifd: wan (9213): + registration='{"registration":"not_registered"}'
> netifd: wan (9213): + '[' -n  ]
> netifd: wan (9213): + echo 'Starting network wan'
> netifd: wan (9213): Starting network wan
> 
> If registration_timeout is not expired, registration can be restarted
> 
> Signed-off-by: Thomas Richard 
> ---
>  package/network/utils/uqmi/Makefile|  2 +-
>  .../utils/uqmi/files/lib/netifd/proto/qmi.sh   | 35 
> --
>  2 files changed, 27 insertions(+), 10 deletions(-)
> 
> diff --git a/package/network/utils/uqmi/Makefile 
> b/package/network/utils/uqmi/Makefile
> index 68958a3729..da54ba0f46 100644
> --- a/package/network/utils/uqmi/Makefile
> +++ b/package/network/utils/uqmi/Makefile
> @@ -1,7 +1,7 @@
>  include $(TOPDIR)/rules.mk
>  
>  PKG_NAME:=uqmi
> -PKG_RELEASE:=2
> +PKG_RELEASE:=3
>  
>  PKG_SOURCE_PROTO:=git
>  PKG_SOURCE_URL=$(PROJECT_GIT)/project/uqmi.git
> diff --git a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh 
> b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
> index a6c785eb56..c0134f44dd 100755
> --- a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
> +++ b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
> @@ -209,19 +209,36 @@ proto_qmi_setup() {
>  
>   uqmi -s -d "$device" --sync > /dev/null 2>&1
>  
> + uqmi -s -d "$device" --network-register > /dev/null 2>&1
> +
>   echo "Waiting for network registration"
> + sleep 1
>   local registration_timeout=0
> - while uqmi -s -d "$device" --get-serving-system | grep '"searching"' > 
> /dev/null; do
> - [ -e "$device" ] || return 1
> - if [ "$registration_timeout" -lt "$timeout" -o "$timeout" = "0" 
> ]; then
> - let registration_timeout++
> - sleep 1;
> + local registration_state=""
> + while true; do
> + registration_state=$(uqmi -s -d "$device" --get-serving-system 
> 2>/dev/null | jsonfilter -e "@.registration" 2>/dev/null)
> +
> + [ "$registration_state" = "registered" ] && break
> +
> + if [ "$registration_state" = "searching" ] || [ 
> "$registration_state" = "not_registered" ]; then
> + if [ "$registration_timeout" -lt "$timeout" ] || [ 
> "$timeout" = "0" ]; then
> + [ "$registration_state" = "searching" ] || {
> + echo "Device stopped network 
> registration. Restart network registration"
> + uqmi -s -d "$device" --network-register 
> > /dev/null 2>&1
> + }
> + let registration_timeout++
> + sleep 1
> + continue
> + fi
> +

Re: [PATCH v2] uqmi: fix network registration loop

2021-04-21 Thread Florian Eckert




On 2021-04-20 16:49, thomas.rich...@kontron.com wrote:

From: Thomas Richard 

With some debug in qmi.sh using following patch, some errors are 
visible

in the registration step
@@ -29,6 +29,7 @@ proto_qmi_init_config() {
 }

 proto_qmi_setup() {
+   set -x
local interface="$1"
local dataformat connstat plmn_mode mcc mnc
local device apn auth username password pincode delay modes 
pdptype

@@ -224,6 +225,8 @@ proto_qmi_setup() {
fi
done

+   registration=$(uqmi -s -d "$device" --get-serving-system)
+
[ -n "$modes" ] && uqmi -s -d "$device" --set-network-modes
"$modes" > /dev/null 2>&1

echo "Starting network $interface"

During the boot of the system, modem could not start automatically its
network registration.
netifd: wan (9235): + echo 'Waiting for network registration'
netifd: wan (9235): Waiting for network registration
netifd: wan (9235): + local 'registration_timeout=0'
netifd: wan (9235): + uqmi -s -d /dev/cdc-wdm1 --get-serving-system
netifd: wan (9235): + grep '"searching"'
netifd: wan (9235): + uqmi -s -d /dev/cdc-wdm1 --get-serving-system
netifd: wan (9235): +
registration='{"registration":"not_registered","plmn_mcc":208,"plmn_mnc":20,"plmn_description":"","roaming":true}'
netifd: wan (9235): + '[' -n  ]
netifd: wan (9235): + echo 'Starting network wan'

As the while loop checks only "searching" pattern, uqmi.sh script quits
searching loop and continues whereas the modem is not registered

Other issue, after X seconds modem stops searching.
netifd: wan (9213): + uqmi -s -d /dev/cdc-wdm0 --get-serving-system
netifd: wan (9213): + grep '"searching"'
netifd: wan (9213): + '[' -e /dev/cdc-wdm0 ]
netifd: wan (9213): + '[' 3 -lt 0 -o 0 '=' 0 ]
netifd: wan (9213): + let registration_timeout++
netifd: wan (9213): + sleep 1
netifd: wan (9213): + uqmi -s -d /dev/cdc-wdm0 --get-serving-system
netifd: wan (9213): + grep '"searching"'
netifd: wan (9213): + uqmi -s -d /dev/cdc-wdm0 --get-serving-system
netifd: wan (9213): + registration='{"registration":"not_registered"}'
netifd: wan (9213): + '[' -n  ]
netifd: wan (9213): + echo 'Starting network wan'
netifd: wan (9213): Starting network wan

If registration_timeout is not expired, registration can be restarted

Signed-off-by: Thomas Richard 


Tested-by: Florian Eckert 

Works as expected.
Thanks!

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH v2] uqmi: fix network registration loop

2021-04-20 Thread thomas . richard
From: Thomas Richard 

With some debug in qmi.sh using following patch, some errors are visible
in the registration step
@@ -29,6 +29,7 @@ proto_qmi_init_config() {
 }

 proto_qmi_setup() {
+   set -x
local interface="$1"
local dataformat connstat plmn_mode mcc mnc
local device apn auth username password pincode delay modes pdptype
@@ -224,6 +225,8 @@ proto_qmi_setup() {
fi
done

+   registration=$(uqmi -s -d "$device" --get-serving-system)
+
[ -n "$modes" ] && uqmi -s -d "$device" --set-network-modes "$modes" > 
/dev/null 2>&1

echo "Starting network $interface"

During the boot of the system, modem could not start automatically its
network registration.
netifd: wan (9235): + echo 'Waiting for network registration'
netifd: wan (9235): Waiting for network registration
netifd: wan (9235): + local 'registration_timeout=0'
netifd: wan (9235): + uqmi -s -d /dev/cdc-wdm1 --get-serving-system
netifd: wan (9235): + grep '"searching"'
netifd: wan (9235): + uqmi -s -d /dev/cdc-wdm1 --get-serving-system
netifd: wan (9235): + 
registration='{"registration":"not_registered","plmn_mcc":208,"plmn_mnc":20,"plmn_description":"","roaming":true}'
netifd: wan (9235): + '[' -n  ]
netifd: wan (9235): + echo 'Starting network wan'

As the while loop checks only "searching" pattern, uqmi.sh script quits
searching loop and continues whereas the modem is not registered

Other issue, after X seconds modem stops searching.
netifd: wan (9213): + uqmi -s -d /dev/cdc-wdm0 --get-serving-system
netifd: wan (9213): + grep '"searching"'
netifd: wan (9213): + '[' -e /dev/cdc-wdm0 ]
netifd: wan (9213): + '[' 3 -lt 0 -o 0 '=' 0 ]
netifd: wan (9213): + let registration_timeout++
netifd: wan (9213): + sleep 1
netifd: wan (9213): + uqmi -s -d /dev/cdc-wdm0 --get-serving-system
netifd: wan (9213): + grep '"searching"'
netifd: wan (9213): + uqmi -s -d /dev/cdc-wdm0 --get-serving-system
netifd: wan (9213): + registration='{"registration":"not_registered"}'
netifd: wan (9213): + '[' -n  ]
netifd: wan (9213): + echo 'Starting network wan'
netifd: wan (9213): Starting network wan

If registration_timeout is not expired, registration can be restarted

Signed-off-by: Thomas Richard 
---
 package/network/utils/uqmi/Makefile|  2 +-
 .../utils/uqmi/files/lib/netifd/proto/qmi.sh   | 35 --
 2 files changed, 27 insertions(+), 10 deletions(-)

diff --git a/package/network/utils/uqmi/Makefile 
b/package/network/utils/uqmi/Makefile
index 68958a3729..da54ba0f46 100644
--- a/package/network/utils/uqmi/Makefile
+++ b/package/network/utils/uqmi/Makefile
@@ -1,7 +1,7 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=uqmi
-PKG_RELEASE:=2
+PKG_RELEASE:=3
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL=$(PROJECT_GIT)/project/uqmi.git
diff --git a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh 
b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
index a6c785eb56..c0134f44dd 100755
--- a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
+++ b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
@@ -209,19 +209,36 @@ proto_qmi_setup() {
 
uqmi -s -d "$device" --sync > /dev/null 2>&1
 
+   uqmi -s -d "$device" --network-register > /dev/null 2>&1
+
echo "Waiting for network registration"
+   sleep 1
local registration_timeout=0
-   while uqmi -s -d "$device" --get-serving-system | grep '"searching"' > 
/dev/null; do
-   [ -e "$device" ] || return 1
-   if [ "$registration_timeout" -lt "$timeout" -o "$timeout" = "0" 
]; then
-   let registration_timeout++
-   sleep 1;
+   local registration_state=""
+   while true; do
+   registration_state=$(uqmi -s -d "$device" --get-serving-system 
2>/dev/null | jsonfilter -e "@.registration" 2>/dev/null)
+
+   [ "$registration_state" = "registered" ] && break
+
+   if [ "$registration_state" = "searching" ] || [ 
"$registration_state" = "not_registered" ]; then
+   if [ "$registration_timeout" -lt "$timeout" ] || [ 
"$timeout" = "0" ]; then
+   [ "$registration_state" = "searching" ] || {
+   echo "Device stopped network 
registration. Restart network registration"
+   uqmi -s -d "$device" --network-register 
> /dev/null 2>&1
+   }
+   let registration_timeout++
+   sleep 1
+   continue
+   fi
+   echo "Network registration failed, registration timeout 
reached"
else
-   echo "Network registration failed"
-   proto_notify_error "$interface" 
NETWORK_REGISTRATION_FAILED
-   proto_block_restart "$interface"
-   re