MKR GSM 1400 problem with GSM.begin() in sync and async mode

Hi All

There are a few similar issues but none of them resolved my problems.

In Sync Mode:
Using the standard library code for initializing the GSM network the
GsmAccess.begin(PINNUMBER, true,true) (That is sync mode) works well and connects within a few seconds every time.

If the GSM network is not available the GsmAccess.begin function never returns a value. This means that the whole program waits.

In Async mode:
If GsmAccess.begin(PINNUMBER, true,false) (That is async mode) is used while no network is available together with GSMAccess.ready() the ready functions returns "busy". If you add a time limit then you can let your program continues after the time limit is reached.
If however a network is available, in async mode it takes about 30 to 40 seconds to connect to the network as apposed to the 2 or 3 seconds in sync mode.

Is there a way to reduce this 30-40 seconds?

Many thanks

I've deleted your other cross-post @hoosthuysen.

Cross-posting is against the rules of the forum. The reason is that duplicate posts can waste the time of the people trying to help. Someone might spend 15 minutes (or more) writing a detailed answer on this topic, without knowing that someone else already did the same in the other topic.

Repeated cross-posting will result in a suspension from the forum.

In the future, please take some time to pick the forum board that best suits the topic of your question and then only post once to that forum board. This is basic forum etiquette, as explained in the sticky "How to use this forum - please read." post you will find at the top of every forum board. It contains a lot of other useful information. Please read it.

Thanks in advance for your cooperation.