Get Firmware version of Ebyte E220-900T30D

Home Forums The libraries hosted on the site EByte LoRa e220 UART devices LLCC68 Get Firmware version of Ebyte E220-900T30D

Viewing 16 reply threads
  • Author
    Posts
    • #28262
      fabiooo
      Participant

        Hi Renzo,

        I want to get Firmware Version form E220-900T30D with command AT+FWCODE=? but I can’t find in your library any method to make it.
        Do you have an suggestion?

        Thank
        Fabio

      • #28263
        Renzo Mischianti
        Keymaster

          Hi fabiooo,
          I don’t use AT commands, you can retrieve that info with ModuleInformation, more info in this section.

          Do You use currently the AT commands?
          Ho do you query that info?

          Bye Renzo

        • #28289
          fabiooo
          Participant

            I try it, and I can see:
            Model: 32
            Firmware version: 11
            Features: 30

            But if I use Ebyte software it is 2.1 (see screen )

            Which one should I look at?

          • #28312
            Renzo Mischianti
            Keymaster

              Hi Fabioo…
              I don’t know how to convert It. But EByte grants that the Version byte is that.
              Bye Renzo

            • #28313
              fabiooo
              Participant

                Ok Thanks for support

              • #28612
                fabiooo
                Participant

                  Hi Renzo,

                  I have news, I contacted Ebyte and they told me that are an program provided by them to send command AT.

                  Furthermore I can say that the E220868T30D modules have been revisited and there are two versions, the 2022 version with serial number SN:W1216… And the 2023 version with SN:S3200….

                  After explaining to them my problem, that is, that sometimes they freeze, they asked me for various information and after this they said that there is a firmware bug on the 2022 series but that they are not updatable.
                  At the moment I am waiting for a response to find out if this bug (confirmed by them) will no longer exist in the 2023 version.

                  I’m sorry that I was told that old modems are unfortunately not upgradeable.

                • #28613
                  Renzo Mischianti
                  Keymaster

                    Thanks for the feedback.
                    But can I ask you the procedure to communicate via AT commands.
                    I see that the AT commands are supported only by a small number of devices.
                    Bye Renzo

                  • #28736
                    fabiooo
                    Participant

                      They sent me an .exe program if you’re interested I’ll send you the link privately.

                    • #28737
                      Renzo Mischianti
                      Keymaster

                        Yes, thanks, I’m going to test It too.
                        Bye Renzo

                      • #29117
                        fabiooo
                        Participant

                          Hi Renzo,
                          I have important news, communicating with the eByte engineers they detected a bug on the firmware and sent me 6 modems as test samples. Now modems no longer crash, this is wonderful. One problem remains:
                          when I load the sketch, I receive the first (approximately) 700 messages well, for example ##1:2:3:4:5:6:7:8:9:10:11:12:13:14:15:16:17:18:19:20##

                          between (approximately) 700/1200 messagies I get the last “corrupted” part like: ##1:2:3:4:5:6:7:8:9:10:11:12:13§¢ÒŠ5:1“Šº:18§ÊÒ’0#¤

                          between (approximatley) 1200/1800 messagies I get more “corrupted” part like:
                          ##D:1’&§&’“ªÒ²ÒºÒÂ:9:LÒŠŠ:1&§šÒ14:LM§²ÒŠºÒŠÂÒ19’&#

                          The more messages arrive, the less understandable they are. Furthermore, the RAM memory runs out and Atmega2560 reboots.

                          Even after an auto reset the problem is still slightly there:
                          the first (approximately) 5 messages you get are wrong, then you get others right (about 700) and then do as above….

                          What do you think could be the problem?

                          I’m testing with the latest version of the E220900T30D modems and I make requests every 5 minutes

                        • #29143
                          Renzo Mischianti
                          Keymaster

                            hi Fabioo,
                            It’s very strange; It’s possible that there are some issues with the power supply.
                            Or a bad usage of memory allocation?
                            Bye Renzo

                            • #29145
                              fabiooo
                              Participant

                                I don’t think they are power supply problems, I have a dedicated 5V regulator and the relevant ceramic and electrolytic capacitors.

                                Instead, problems with the memory, do you mean that maybe there are other variables that over time end up using the memory dedicated to the UART?

                                I actually notice that my memory is slowly declining. I will investigate who consumes the RAM.

                            • #29148
                              Renzo Mischianti
                              Keymaster

                                Hi Fabiooo,
                                if you have a (minimal) memory leak, probably write over the memory location of the received message variable or at the sending time.
                                Bye Renzo

                              • #29208
                                fabiooo
                                Participant

                                  I’m testing to see if I use that part of memory. Is there a way to “dedicate” a portion of memory to the incoming message?

                                • #29213
                                  Renzo Mischianti
                                  Keymaster

                                    If you put all sending and receiving process inside a function, theoretically when function end all allocated variable and memory will be free.
                                    Or you can malloc inside memory.
                                    Bye Renzo

                                  • #29217
                                    fabiooo
                                    Participant

                                      I have a separate function to sendMessage() that is (in short):

                                      
                                      setSendingMode();
                                      rs = e220ttl->sendMessage(messageToSend);
                                      delay(1000);
                                      setSleepmode();
                                      

                                      and a separate function receiveMessage() is

                                      String input = "";
                                          if (e220ttl->available() > 1)
                                          {
                                              ResponseContainer rc = e220ttl->receiveMessageRSSI();
                                              // delay(100);
                                              input = rc.data;
                                              RSSI = rc.rssi, DEC;
                                              Serial.print("Messaggio in arrivo: ");
                                              Serial.println(input);
                                              Serial.print("RSSI ricevuto: ");
                                              Serial.println(RSSI);
                                               delay(100);
                                              setSleepMode();
                                              delay(100);
                                          
                                              int nParts = 0;
                                              String *parts = split(input, SEP_CHARACTER, nParts);
                                      
                                              for (int i = 0; i < nParts; i++)
                                              {
                                                  if (i % 2 == 0)
                                                      continue;
                                      
                                                  Serial.println("Estratto messaggio singolo" + parts[i]);
                                                  callback(parts[i]);
                                                  
                                              }
                                              delete[] parts;
                                          }
                                      
                                      

                                      It should be as you say that the variables are created every time a message arrives. Am I doing something wrong?

                                    • #29218
                                      Renzo Mischianti
                                      Keymaster

                                        I don’t know if I explain well.
                                        Suppose you put the code with the operation of sending and relative variables inside a function. In that case, all the variables and operations executed and allocated inside the function remain inside the function (like Fight Club).
                                        So this can prevent the memory leak.
                                        Bye Renzo

                                      • #31574
                                        Carcela
                                        Participant

                                          Hi,
                                          Can you please send me the link to .exe program to send AT commands to E220-900T30D. Thank you.

                                      Viewing 16 reply threads
                                      • You must be logged in to reply to this topic.
                                      Exit mobile version