Forum Replies Created

Viewing 15 posts - 1 through 15 (of 983 total)
  • Author
    Posts
  • in reply to: Problem I2C @ ESP32-CAM and setup PCF8574A #31944
    Renzo Mischianti
    Keymaster

      Hi,
      for the interrupt you can use this constructor:

      
      	PCF8574(uint8_t address, int sda, int scl, uint8_t interruptPin,  void (*interruptFunction)());
      

      And the code become like so

      
      #define INTERRUPTED_PIN D7
       
      void ICACHE_RAM_ATTR interruptFunction();
       
      // initialize library
      PCF8574 pcf8574(0x38, SDA, SCL, INTERRUPTED_PIN, interruptFunction);
      

      Bye Renzo

      in reply to: E32-900T20D Lora repeater settings #31941
      Renzo Mischianti
      Keymaster

        Hi g,
        Well done! The project looks clean and well-designed, with the PCB neatly housed in the box. The solar panel and antenna add a practical and professional touch. If you’d like to share it on the site, I’m happy to help!
        Bye Renzo

        in reply to: E220-900T22D Data Size not match! #31933
        Renzo Mischianti
        Keymaster

          Hi,
          try to put 5v on power and 3.3v on logic level.
          Bye Renzo

          Renzo Mischianti
          Keymaster

            Hi aleemont,
            I think to change speed, you must change the Air data rate. If you want to change the baud rate (I don’t remember very well), you must also set the baud rate on the initial constructor.
            By default, It is set to 9600.

            
            LoRa_E220(byte txE220pin, byte rxE220pin, UART_BPS_RATE bpsRate = UART_BPS_RATE_9600);
            LoRa_E220(byte txE220pin, byte rxE220pin, byte auxPin, UART_BPS_RATE bpsRate = UART_BPS_RATE_9600);
            LoRa_E220(byte txE220pin, byte rxE220pin, byte auxPin, byte m0Pin, byte m1Pin, UART_BPS_RATE bpsRate = UART_BPS_RATE_9600);
            

            Try and give me a feedback.
            Bye Renzo

            in reply to: EMail with Arduino GIGA R1 WiFi library compatibility #31825
            Renzo Mischianti
            Keymaster

              Hi syrinx,
              sorry but I have some issue on some libraries and some pending think to complete, I don’t have so much time.
              I hope so be more free and work on It, but It’s very difficult.
              Bye Renzo

              in reply to: ESP32-C3-Zero compilation error #31824
              Renzo Mischianti
              Keymaster

                Hi Elkez,
                you must import esp_sleep.h lib.

                
                #include <esp_sleep.h>
                

                Bye Renzo

                in reply to: E220-900T30D. Remote monitoring of objects. #31796
                Renzo Mischianti
                Keymaster

                  Hi a1ro,

                  You can find some helpful information on this topic in this article.

                  For your setup, I recommend configuring each client in fixed transmission mode, targeting the master device. Each client can send a structured message containing the identifier (name or code) of the remote device along with the event value.

                  The master will read the incoming data, use the identifier to distinguish the source device, and then map and save the corresponding event data. This approach will ensure that each sensor or switch is uniquely identifiable on the master device.

                  If you have more questions, feel free to ask!

                  Best,
                  Renzo

                  in reply to: Adjusting Frequency by 0.2 MHz #31683
                  Renzo Mischianti
                  Keymaster

                    Hi Lucas,
                    Thanks for your words. No, the protocol allows only step of 1, so you can’t do that.
                    Bye Renzo

                    in reply to: Beeprint Web interface with Marlin #31681
                    Renzo Mischianti
                    Keymaster

                      Mmmm…
                      the Gcode output isn’t managed; the commands on documentation are wrapped from MKS WiFi firmware and do the work, not the printer board, and I don’t know as Marilin works.
                      Bye Renzo

                      in reply to: Beeprint Web interface with Marlin #31658
                      Renzo Mischianti
                      Keymaster

                        Hi Victor,
                        ok, my version of Node is

                        
                        PS D:\Projects\IdeaProjects\mks\mks_wifi_mischianti_ui> node --version
                        v16.18.0
                        

                        my npm version is

                        
                        PS D:\Projects\IdeaProjects\mks\mks_wifi_mischianti_ui> npm --version
                        9.1.2
                        

                        here my complete list of library dependencies

                        
                        PS D:\Projects\IdeaProjects\mks\mks_wifi_mischianti_ui> npm list        
                        beeprint_mks_wifi@1.7 D:\Projects\IdeaProjects\mks\mks_wifi_mischianti_ui
                        +-- @babel/core@7.12.17
                        +-- @babel/plugin-proposal-class-properties@7.14.5
                        +-- @babel/polyfill@7.12.1
                        +-- @babel/preset-env@7.12.17
                        +-- @babel/preset-react@7.12.13
                        +-- @formatjs/intl-pluralrules@4.1.2
                        +-- @formatjs/intl-relativetimeformat@9.2.2
                        +-- @material-ui/core@4.12.3
                        +-- @material-ui/icons@4.11.2
                        +-- @wojtekmaj/enzyme-adapter-react-17@0.8.0
                        +-- autoprefixer@10.3.1
                        +-- axios@0.21.4
                        +-- babel-loader@8.2.2
                        +-- babel-plugin-module-resolver@4.1.0
                        +-- compression-webpack-plugin@8.0.1
                        +-- connected-react-router@6.9.3
                        +-- copy-webpack-plugin@6.4.1
                        +-- cross-env@7.0.3
                        +-- css-loader@5.2.7
                        +-- d3-format@3.0.1
                        +-- d3-time-format@4.0.0
                        +-- enzyme@3.11.0
                        +-- eslint-config-standard@14.1.1
                        +-- eslint-plugin-import@2.22.1
                        +-- eslint-plugin-node@11.1.0
                        +-- eslint-plugin-promise@4.3.1
                        +-- eslint-plugin-react@7.22.0
                        +-- eslint-plugin-standard@4.1.0
                        +-- eslint@6.8.0
                        +-- file-loader@5.1.0
                        +-- history@4.10.1
                        +-- html-webpack-plugin@4.5.2
                        +-- http-server@14.1.1
                        +-- intl@1.2.5
                        +-- jest@24.9.0
                        +-- lodash.throttle@4.1.1
                        +-- node-sass@6.0.1
                        +-- perfect-scrollbar@1.5.2
                        +-- react-ace@9.5.0
                        +-- react-dom@17.0.2
                        +-- react-grid-layout@1.3.4
                        +-- react-intl@5.20.9
                        +-- react-perfect-scrollbar@1.5.8
                        +-- react-redux@7.2.4
                        +-- react-router-dom@5.2.0
                        +-- react-sizeme@3.0.1
                        +-- react-stockcharts@0.7.9-SNAPSHOT.7
                        +-- react@17.0.2
                        +-- redux-logic@3.0.3
                        +-- redux@4.1.1
                        +-- regenerator-runtime@0.13.9
                        +-- replace-in-file-webpack-plugin@1.0.6
                        +-- sass-loader@11.1.1
                        +-- save-svg-as-png@1.4.17
                        +-- serve@11.3.2
                        +-- shx@0.3.3
                        +-- style-loader@2.0.0
                        +-- terser-webpack-plugin@5.1.4
                        +-- webpack-cli@4.8.0
                        +-- webpack-dev-server@3.11.3
                        +-- webpack-merge@5.8.0
                        +-- webpack-visualizer-plugin2@1.0.0
                        -- webpack@5.50.0
                        

                        For the “compilation” o web folder you can follow the instructions of the guide, but basically, after build the project you can launch the uploader of ArduinoIDE 1.x (now there is a version for 2.x, but I use the old one)

                        Upload and generate bin file of data folder

                        and you can find the file path in the console and grab It.

                        Basically in the temporary folder like C:\Users\renzo\AppData\Local\Temp\arduino_build_785244 you can find some file like so:

                        
                        
                        core
                        libraries
                        preproc
                        sketch
                        build.options.json
                        includes.cache
                        local.eagle.app.v6.common.ld
                        MKS_WIFI_upgrade_with_BeePrint_web_interface.ino.bin
                        MKS_WIFI_upgrade_with_BeePrint_web_interface.ino.elf
                        MKS_WIFI_upgrade_with_BeePrint_web_interface.ino.map
                        MKS_WIFI_upgrade_with_BeePrint_web_interface.spiffs.bin
                        

                        For the Gcode follow the relative article with the specified code offered from the MKS_WIFI firmware

                        You can find the relative implementation here on the firmware.

                        
                        
                                {
                                  /*transfer gcode*/
                                  //Serial.write(cmd_line, readNum);
                                  if((strchr((const char *)cmd_line, 'G') != 0)
                                    || (strchr((const char *)cmd_line, 'M') != 0)
                                    || (strchr((const char *)cmd_line, 'T') != 0))
                                  {
                                    if(strchr((const char *)cmd_line, '\n') != 0 )
                                    {
                                      String gcode((const char *)cmd_line);
                        
                                    //  sprintf((char *)dbgStr, "read %d: %s\n", readNum, cmd_line);
                        
                                  //    net_print((const uint8_t *)dbgStr, strlen((char *)dbgStr));
                        
                                      if(gcode.startsWith("M998") && (M3_TYPE == ROBIN))
                                      {
                                        net_print((const uint8_t *) "ok\r\n", strlen((const char *)"ok\r\n"));
                                      }
                                      else if(gcode.startsWith("M997"))
                                      {
                                        if(gPrinterInf.print_state == PRINTER_IDLE)
                                        //  net_print((const uint8_t *) "M997 IDLE\r\n", strlen((const char *)"M997 IDLE\r\n"));
                                          strcpy((char *)dbgStr, "M997 IDLE\r\n");
                                        else if(gPrinterInf.print_state == PRINTER_PRINTING)
                                        //  net_print((const uint8_t *) "M997 PRINTING\r\n", strlen((const char *)"M997 PRINTING\r\n"));
                                          strcpy((char *)dbgStr, "M997 PRINTING\r\n");
                                        else if(gPrinterInf.print_state == PRINTER_PAUSE)
                                          //net_print((const uint8_t *) "M997 PAUSE\r\n", strlen((const char *)"M997 PAUSE\r\n"));
                                          strcpy((char *)dbgStr, "M997 PAUSE\r\n");
                                        else
                                          strcpy((char *)dbgStr, "M997 NOT CONNECTED\r\n");
                                      //  net_print((const uint8_t *) "ok\r\n", strlen((const char *)"ok\r\n"));
                                      }
                                      else if(gcode.startsWith("M27"))
                                      {
                                        memset(dbgStr, 0, sizeof(dbgStr));
                                        sprintf((char *)dbgStr, "M27 %d\r\n", gPrinterInf.print_file_inf.print_rate);
                                      //  net_print((const uint8_t *) dbgStr, strlen((const char *)dbgStr));
                                      //  net_print((const uint8_t *) "ok\r\n", strlen((const char *)"ok\r\n"));
                                      }
                                      else if(gcode.startsWith("M992"))
                                      {
                                        memset(dbgStr, 0, sizeof(dbgStr));
                                        sprintf((char *)dbgStr, "M992 %02d:%02d:%02d\r\n",
                                          gPrinterInf.print_file_inf.print_hours, gPrinterInf.print_file_inf.print_mins, gPrinterInf.print_file_inf.print_seconds);
                                      //  net_print((const uint8_t *) dbgStr, strlen((const char *)dbgStr));
                                      //  net_print((const uint8_t *) "ok\r\n", strlen((const char *)"ok\r\n"));
                                      }
                                      else if(gcode.startsWith("M994"))
                                      {
                                        memset(dbgStr, 0, sizeof(dbgStr));
                                        sprintf((char *)dbgStr, "M994 %s;%d\r\n",
                                          gPrinterInf.print_file_inf.file_name.c_str(), gPrinterInf.print_file_inf.file_size);
                                      //  net_print((const uint8_t *) dbgStr, strlen((const char *)dbgStr));
                                      //  net_print((const uint8_t *) "ok\r\n", strlen((const char *)"ok\r\n"));
                                      }
                                      else  if(gcode.startsWith("M115"))
                                      {
                                        memset(dbgStr, 0, sizeof(dbgStr));
                                        if(M3_TYPE == ROBIN)
                                          strcpy((char *)dbgStr, "FIRMWARE_NAME:Robin\r\n");
                                        else if(M3_TYPE == TFT28)
                                          strcpy((char *)dbgStr, "FIRMWARE_NAME:TFT28/32\r\n");
                                        else if(M3_TYPE == TFT24)
                                          strcpy((char *)dbgStr, "FIRMWARE_NAME:TFT24\r\n");
                        
                                      //  net_print((const uint8_t *) dbgStr, strlen((const char *)dbgStr));
                                      //  net_print((const uint8_t *) "ok\r\n", strlen((const char *)"ok\r\n"));
                                      }
                                      /*else if(gcode.startsWith("M105"))
                                      {
                                        memset(dbgStr, 0, sizeof(dbgStr));
                                        sprintf((char *)dbgStr, "T:%d /%d B:%d /%d T0:%d /%d T1:%d /%d @:0 B@:0\r\n",
                                          (int)gPrinterInf.curSprayerTemp[0], (int)gPrinterInf.desireSprayerTemp[0], (int)gPrinterInf.curBedTemp, (int)gPrinterInf.desireBedTemp,
                                          (int)gPrinterInf.curSprayerTemp[0], (int)gPrinterInf.desireSprayerTemp[0], (int)gPrinterInf.curSprayerTemp[1], (int)gPrinterInf.desireSprayerTemp[1]);
                        
                                      //  net_print((const uint8_t *) dbgStr, strlen((const char *)dbgStr));
                                      //  net_print((const uint8_t *) "ok\r\n", strlen((const char *)"ok\r\n"));
                                      }*/
                                      else
                                      {
                                        DEBUG_PRINT(F("GCODE COMMANDS "));
                                        DEBUG_PRINTLN(gcode);
                        
                                        if(gPrinterInf.print_state == PRINTER_IDLE)
                                        {
                                          if(gcode.startsWith("M23") || gcode.startsWith("M24"))
                                           {
                                            gPrinterInf.print_state = PRINTER_PRINTING;
                                            gPrinterInf.print_file_inf.file_name = "";
                                            gPrinterInf.print_file_inf.file_size = 0;
                                            gPrinterInf.print_file_inf.print_rate = 0;
                                            gPrinterInf.print_file_inf.print_hours = 0;
                                            gPrinterInf.print_file_inf.print_mins = 0;
                                            gPrinterInf.print_file_inf.print_seconds = 0;
                        
                                            printFinishFlag = false;
                                           }
                                        }
                                        gcodeM3.concat(gcode);
                        
                                      }
                        
                                    }
                                  }
                        

                        Your effort and dedication make it a pleasure to support you. Let me know how I can continue to help you achieve your goals!

                        Bye Renzo

                        in reply to: Beeprint Web interface with Marlin #31652
                        Renzo Mischianti
                        Keymaster

                          Hi Victor,
                          I uploaded a new version with the Marilin command to the web UI.
                          To generate a bin, I followed the old guide and worked correctly.

                          I built your version, and you can download it from here.

                          Bye Renzo

                          in reply to: Problem using E220 library #31649
                          Renzo Mischianti
                          Keymaster

                            Hi Fernando,
                            sorry for the late response.

                            I think the problem can be that From core 2 to core 3, TX2 and RX2 pins are changed

                            Try to force the pin number
                            LoRa_E32 e32ttl100(16, 17, &Serial2, 15, 21, 19, UART_BPS_RATE_9600); // RX AUX M0 M1

                            Bye Renzo

                            Attachments:
                            You must be logged in to view attached files.
                            in reply to: ESP32 + W5500 HTTPS Request Issue #31648
                            Renzo Mischianti
                            Keymaster

                              Hi,
                              sorry for the late response

                              The error (SSLClient)(SSL_ERROR)(m_print_br_error): Incoming protocol or record version is unsupported. indicates that the SSL/TLS version the server expects is not supported by your client. Check if your server enforces a specific SSL/TLS version (like TLS 1.2 or 1.3). Ensure that your ESP32 or SSLClient library supports the required version.
                              Try to modify the SSL settings on your server to allow older versions like TLS 1.1 or ensure the client can handle TLS 1.2+.
                              Bye Renzo

                              in reply to: ESP32 + W5500 HTTPS Request Issue #31617
                              Renzo Mischianti
                              Keymaster

                                Hi,
                                I think that, as described in the error, the problem is that the version of SSL is not supported by SSLClient; try to check the server security settings.
                                Bye Renzo

                                in reply to: E32 915T and E32 900T modules #31611
                                Renzo Mischianti
                                Keymaster

                                  Hi Edge,
                                  to show the frequency as you need, you must put one of these define before the library include.

                                  
                                  #define FREQUENCY_868
                                  #include "LoRa_E32.h"
                                  

                                  Bye RM

                                Viewing 15 posts - 1 through 15 (of 983 total)