Forum Replies Created

Viewing 15 posts - 181 through 195 (of 983 total)
  • Author
    Posts
  • in reply to: Get Firmware version of Ebyte E220-900T30D #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

      in reply to: Issues with E22 Transmitters Reception #28311
      Renzo Mischianti
      Keymaster

        Hi Ludophot,
        if you have the EByte USB adapter, try to reset with It.

        It’s strange. I have some Lolin32, and they work correctly.
        What kind of defect do they have?

        Bye Renzo

        Renzo Mischianti
        Keymaster

          Thanks a lot for the information, Роман.
          Bye Renzo

          in reply to: Get Firmware version of Ebyte E220-900T30D #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

            in reply to: LoRa E32 E22 E220 Module Compatibility #28259
            Renzo Mischianti
            Keymaster

              Hi wdaum,
              if I remember the modules aren’t compatible, they are based on different technologies and EByte has changed the cryptography systems in the various models.
              Bye Renzo

              in reply to: Issues with E22 Transmitters Reception #28238
              Renzo Mischianti
              Keymaster

                Hi Ludophot,
                install an antenna; if not, you use It and retry.

                The other problem is that I think there is a memory leak. Try to add some checks on the free memory

                
                  Serial.println(ESP.getFreeHeap());
                

                Bye Renzo

                Renzo Mischianti
                Keymaster

                  I found this tutorial, I think It’s what you need

                  Serial/UART Firmware Upload

                  A second firmware upload method is to use serial (UART) upload, which works in much the same way as the standard way of uploading code to an Arduino. Like in the case of the Arduino serial upload this approach relies on a pre-uploaded bootloader. My understanding is that the Nucleo boards already have this bootloader in place.

                  UART to Nucleo connections

                  • Connect GND and 5V for power.
                  • Place a jumper between BOOT0 and VDD to select the serial upload mode.
                  • Connect PA9 to UART RX
                  • Connect PA10 to UART TX
                  • Power cycle to reset board and enter serial upload mode

                  IMG_0852|666x500

                  Serial Uploader Tool

                  On Windows ST provide a tool for uploading firmware over serial called STM32-Flasher: http://www.st.com/en/development-tools/flasher-stm32.html

                  For Linux there is a neat command line tool called stm32flash available in the package manager: http://manpages.ubuntu.com/manpages/bionic/man1/stm32flash.1.html

                  It can be installed with the following apt-get install:

                  sudo apt-get install stm32flash
                  

                  I compiled the Arduino example Blink for the Nucleo64 STM32F303 using the Arduino IDE and then fetched the compliled .bin file from the /tmp folder that Arduino creates.

                  I could then upload to the STM32F303 by running:

                  sudo stm32flash -b 115200 -w blink.ino.bin /dev/ttyUSB0 
                  

                  Terminal output:

                  $ sudo stm32flash -b 115200 w Blink.ino.bin /dev/ttyUSB0
                  stm32flash 0.5
                  
                  http://stm32flash.sourceforge.net/
                  
                  Using Parser : Raw BINARY
                  Interface serial_posix: 115200 8E1
                  Version      : 0x31
                  Option 1     : 0x00
                  Option 2     : 0x00
                  Device ID    : 0x0446 (STM32F302xD(E)/F303xD(E)/F398xx)
                  - RAM        : 64KiB  (6144b reserved by bootloader)
                  - Flash      : 512KiB (size first sector: 2x2048)
                  - Option RAM : 16b
                  - System RAM : 8KiB
                  Write to memory
                  Erasing memory
                  Wrote address 0x08002c5c (100.00%) Done.
                  in reply to: STM32L452 SPI2 port assignation not working #28048
                  Renzo Mischianti
                  Keymaster

                    Hi Nezha,
                    thanks for your feedback, not all makers work with STM32, if you’d like to share your projects we are happy to publish Them.
                    Bye Renzo

                    Renzo Mischianti
                    Keymaster

                      Hi jiangzhiyu233,
                      I executed your code and I replicated the issue. It seems that there are some problems when writing and reading at the same time.
                      I do a little fix, try It, and give me feedback.
                      Thanks Renzo

                      Renzo Mischianti
                      Keymaster

                        Hi jiangzhiyu233,
                        I retry the code and I don’t have that behavior, do you use the example provided in github??
                        Bye Renzo

                        in reply to: STM32L452 SPI2 port assignation not working #28008
                        Renzo Mischianti
                        Keymaster

                          Hi Nezha,
                          your problem. It’s very strange.
                          I think you can try to use a “first choice” SPI2 and “second choice” in coherence, like so:

                          PB15
                          PB14
                          PB10

                          and

                          PC3
                          PC2
                          PB13

                          After that test, you can try the official STMicroelectronics core to check if STM32duino.

                          Bye Renzo

                          in reply to: STM32L452 SPI2 port assignation not working #27975
                          Renzo Mischianti
                          Keymaster

                            Hi Nezha,
                            I write a little article about that and when I do the test, I follow the pinout I retrieve from the STMicroelectronic core code.

                            I check your pin selection, and it seems to be ok.

                            
                            #ifdef HAL_SPI_MODULE_ENABLED
                            WEAK const PinMap PinMap_SPI_MOSI[] = {
                              {PA_7,      SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
                              {PA_12,     SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
                              {PB_5,      SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
                              {PB_5_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
                              {PB_15,     SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
                              {PC_3,      SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
                              {PC_12,     SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
                              {NC,        NP,   0}
                            };
                            #endif
                            
                            #ifdef HAL_SPI_MODULE_ENABLED
                            WEAK const PinMap PinMap_SPI_MISO[] = {
                              {PA_6,      SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
                              {PA_11,     SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
                              {PB_4,      SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
                              {PB_4_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
                              {PB_14,     SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
                              {PC_2,      SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
                              {PC_11,     SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
                              {NC,        NP,   0}
                            };
                            #endif
                            
                            #ifdef HAL_SPI_MODULE_ENABLED
                            WEAK const PinMap PinMap_SPI_SCLK[] = {
                              {PA_1,      SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
                              {PA_5,      SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
                              {PB_3,      SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
                              {PB_3_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
                              {PB_10,     SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
                              {PB_13,     SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
                              {PC_10,     SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
                              {NC,        NP,   0}
                            };
                            #endif
                            

                            The SS isn’t so important but if you can try the default also

                            
                            // SPI definitions
                            #ifndef PIN_SPI_SS
                              #define PIN_SPI_SS            PA4
                            #endif
                            #ifndef PIN_SPI_SS1
                              #define PIN_SPI_SS1           PA15
                            #endif
                            #ifndef PIN_SPI_SS2
                              #define PIN_SPI_SS2           PB0
                            #endif
                            #ifndef PIN_SPI_SS3
                              #define PIN_SPI_SS3           PNUM_NOT_DEFINED
                            #endif
                            #ifndef PIN_SPI_MOSI
                              #define PIN_SPI_MOSI          PA7
                            #endif
                            #ifndef PIN_SPI_MISO
                              #define PIN_SPI_MISO          PA6
                            #endif
                            #ifndef PIN_SPI_SCK
                              #define PIN_SPI_SCK           PA1
                            #endif
                            

                            In the code, you begin two times the spi interface, and I think It can generate some problems.
                            Try to use a configuration declaration like this

                            
                            //    SD card attached to the secondary SPI as follows:
                            //        SS    = PB2;
                            //        MOSI  = PC3;
                            //        MISO  = PB15;
                            //        SCK   = PB10;
                            
                            #define SD_CS_PIN PB12
                            static SPIClass mySPI2(PC2, PC3, PB10, SD_CS_PIN);
                            #define SD2_CONFIG SdSpiConfig(SD_CS_PIN, DEDICATED_SPI, SD_SCK_MHZ(18), &mySPI2)
                            

                            then only one begin.

                            
                              // we'll use the initialization code from the utility libraries
                              // since we're just testing if the card is working!
                              if (!SD.begin(SD2_CONFIG)) {
                              // if (!SD.begin(SD_CS_PIN)) {
                                Serial.println("initialization failed. Things to check:");
                                Serial.println("* is a card inserted?");
                                Serial.println("* is your wiring correct?");
                                Serial.println("* did you change the chipSelect pin to match your shield or module?");
                                while (1);
                              } else {
                                Serial.println("Wiring is correct and a card is present.");
                              }
                            
                            

                            But check the STM32duino core can change the pin.

                            Try to use also the example I wrote and tested for the Arduino environment.

                            How to use SD card with stm32 and SdFat library

                            Bye Renzo

                            in reply to: EMailSender not compiling #27964
                            Renzo Mischianti
                            Keymaster

                              Thanks Mark,
                              I fixed It.
                              Thanks again Renzo

                              in reply to: Adapting Lora Water Tank Controller to My Farm #27949
                              Renzo Mischianti
                              Keymaster

                                Hi,
                                I share It on PCBWay, not directly Gerber but you can order from PCBWay at the cost of the PCB.
                                Bye Renzo

                                in reply to: Adapting Lora Water Tank Controller to My Farm #27931
                                Renzo Mischianti
                                Keymaster

                                  In the master, you have a Relay with 3 exit
                                  NO (Normally open) – COM (Input) – NC (Normally close)
                                  if you put in COM 100v you can use NO e NC to activate an external SSR.

                                  I think It’s your need.

                                Viewing 15 posts - 181 through 195 (of 983 total)