Forum Replies Created

Viewing 15 posts - 226 through 240 (of 1,031 total)
  • Author
    Posts
  • in reply to: EMAILSENDER support for UNO R2 WIFI ATmega4809 #28424
    Renzo Mischianti
    Keymaster

      Hi Norm,
      I don’t have an Arduino UNO WiFi, but it seems It uses WiFiNINA as the library, Have you had to change the configuration for an Arduino-like board with WiFiNINA?

      Like so:

      
      #ifndef DEFAULT_EMAIL_NETWORK_TYPE_ARDUINO
      	#define DEFAULT_EMAIL_NETWORK_TYPE_ARDUINO 	NETWORK_WiFiNINA
      	#define DEFAULT_INTERNAL_ARDUINO_STORAGE STORAGE_NONE
      	#define DEFAULT_EXTERNAL_ARDUINO_STORAGE STORAGE_SD
      #endif
      

      Bye Renzo

      in reply to: Library for E32-433T33D #28423
      Renzo Mischianti
      Keymaster

        You must set the define

        
        #define E32_TTL_2W
        

        Bye Renzo

        in reply to: Library for E32-433T33D #28343
        Renzo Mischianti
        Keymaster

          Hi Elkez,
          what is your problem?
          Bye Renzo

          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

                                Viewing 15 posts - 226 through 240 (of 1,031 total)