BC66 NB-IoT-DevKit upgrade fw latest problem

Started by Ærcamove, April 01, 2023, 11:13:25 PM

Previous topic - Next topic

Ærcamove

Hi all,

I wanted to experiment with NB-iot and bought this dev kit.

With the original fw (BC66NBR01A04V01) I see the sim and manage the leds but I read it would be useful to update the fw with BC66NBR01A10.

Following the procedure with Qflash the update seems to be successful... however restarting the dev kit keeps restarting..

Can anyone tell me what this could be causing?

LubOlimex

By default the module might be set to power saving and might enter sleep. Make sure to disable sleep modes (AT+CPSMS=0 to disable power saving mode setting).
Technical support and documentation manager at Olimex

Ærcamove

Hi LubOlimex,

I did the following tests:

[With BC66NBR01A04V01]
- QFlash to put the fw
- Arduino IDE with sdk from "http://wizio.eu/arduino/bc66/package_wizio.bc66_index.json"
void setup()
{
  static int cnt = 1;
  static int led = 0;
  char apn[300];

  memset(apn, 0, 300);
  int t = millis();
  String imei, mcc_mnc, sim_imsi, sim_iccid, uid;
  Dev.noSleep(); // disable PSM sleep
  pinMode(LED, OUTPUT);
  digitalWrite(LED, 1);
  delay(500);
  digitalWrite(LED, 0);
  delay(500);
  digitalWrite(LED, 1);
  delay(500);
  digitalWrite(LED, 0);
  delay(500);
  digitalWrite(LED, 1);
  delay(500);
  digitalWrite(LED, 0);
   
  Serial.begin(115200);
  Serial.debug(); // enable debug for this port, DBG( work as printf )

  Serial.printf("Arduino      %s\n", Dev.getVersion());
  Dev.getImei(imei);
  Serial.printf("IMEI         %s\n", imei.c_str());
  Dev.getUid(uid);
  Serial.printf("UID          %s\n", uid.c_str());
  #if 0
  if(Dev.init_Net())
  {
      Serial.printf("Inited\n");
  }
  else
  {
    Serial.printf("error on Init\n");
  }
  #endif
  Dev.waitSimReady();
  delay(500);
  Dev.getMccMnc(mcc_mnc);
  Serial.printf("MCCMNC       %s\n", mcc_mnc.c_str());
  Dev.getImsi(sim_imsi);
  Serial.printf("IMSI         %s\n", sim_imsi.c_str());
  Dev.getIccid(sim_iccid);
  Serial.printf("ICCID        %s\n", sim_iccid.c_str());
  delay(500);

  while(1)
  {
    int val = Dev.getCereg();
    if (val == 5 || val == 1 )
      break;
    if((cnt % 30) == 0)
    { 
      Dev.getDefaultApnType(apn);
      Serial.printf("Cereg: %d %d [%d %d] %s\n", val, Dev.getReceiveLevel(), Dev.getQuality(), Dev.getAccess(),  apn);   
      digitalWrite(LED, ++led & 1);
    }
    cnt++;
    delay(200);
  }
  delay(200); // must have some delay, afrer this time next values is available

  Serial.printf("Rx level     %d dbm\n", Dev.getReceiveLevel());
  Serial.printf("Rx quality   %d\n", Dev.getQuality());
  Serial.printf("Rx access    %d\n", Dev.getAccess());
  Serial.printf("Cell cid     %d\n", Dev.getCid());
  Serial.printf("Cell tac     %d\n", Dev.getTac());
  char mlts[322];
  Dev.getMlts(mlts, 322);
  Serial.printf("Cell mlts    %s\n", mlts);

  Serial.printf("Elapsed: %d mili seconds\n", millis() - t);

  T1.start(500, 1, onTimerFast);
  T2.start(5000, 1, onTimer);
}

this seems to work



[With BC66NBR01A10]
- QFlash to put the fws (it seems to put also app APPGS3MDM32A01, is right? )
the result is that module keeps restarting


[With BC66NBR01A10]
- QFlash to put the fws
- Arduino IDE with the same configuration of BC66NBR01A04V01 scenario
the result is that module keeps restarting

is there a strict dependency with the sdk used?

Thank a lot

LubOlimex

Looking from my e-mails and previous posts I know from other customers that BC66NBR01A10 worked fine for them. I even see George ("WizIO" - the owner and maintainer of the Arduino effort for BC66 that you used), wrote that he tested BC66NBR01A10 successfully here:

https://forums.quectel.com/t/olimex-bc66-dev-kit-getting-started/19756/15

Can it be something related to powering? Aka new firmware requires slightly more power or have bigger draw spikes that your power supply can't handle?

Can it be something related to the SIM card?

Notice that if you wish to use Arduino IDE, it only works with BC66NBR01A04 or BC66NBR01A05, as George wrote on the project page exactly:

"ATT: work only with firmwares BC66NBR01A04 or BC66NBR01A05"
Technical support and documentation manager at Olimex

Ærcamove

Hi LubOlimex,

thanks for your support!

Quote from: LubOlimex on April 04, 2023, 08:35:14 AMhttps://forums.quectel.com/t/olimex-bc66-dev-kit-getting-started/19756/15

I've read everything and it seems to be a different problem.. in my case with QFlash the operations seem to have been successful.

Quote from: LubOlimex on April 04, 2023, 08:35:14 AMCan it be something related to powering? Aka new firmware requires slightly more power or have bigger draw spikes that your power supply can't handle?

Can it be something related to the SIM card?
I used a USB power supply in addition to my PC port and the problem remains.. also without SIM it keeps restarting..

Quote from: LubOlimex on April 04, 2023, 08:35:14 AMNotice that if you wish to use Arduino IDE, it only works with BC66NBR01A04 or BC66NBR01A05, as George wrote on the project page exactly:

"ATT: work only with firmwares BC66NBR01A04 or BC66NBR01A05"
oh ok! Could you point me to a guide to use the right sdk and compile an example?
I found some information here but I didn't understand how to get and use the new sdk..

Thank's a lot

LubOlimex

Technical support and documentation manager at Olimex

Ærcamove

Thank you LubOlimex,

I'll try to better investigate on how to build sdk and all staff..

Ærcamove

Hi LubOlimex,

I followed the "crumbs" and understood some posts in this forum and I'm afraid there are problems using the new sdk also with platformio and without Arduino.

Can you confirm that for BC66 NB-IoT-DevKit it's better to use the fw BC66NBR01A04V01 and not BC66NBR01A10?

LubOlimex

I can't, we haven't compared them. Just use what the creator of the project recommends.
Technical support and documentation manager at Olimex

Ærcamove

Hi LubOlimex,

I'm not sure.. but actually is not possibile to build a solution that using the BC66NBR01A10 fw.. I'm right?