Forum Replies Created

Viewing 15 posts - 1 through 15 (of 987 total)
  • Author
    Posts
  • in reply to: Library for EBYTE E28 2G4T27SX #32071
    Renzo Mischianti
    Keymaster

      Hi Adi,
      no, sorry, It’s not in plan.
      Bye Renzo

      in reply to: ESP32 / ENC28J60 – WebServer #32070
      Renzo Mischianti
      Keymaster

        Hi Connexconcept,
        The core 3 version of arduino-esp32 supports Ethernet natively, so I think you can now use Ethernet for your WebServer like WiFi.
        Bye Renzo

        in reply to: Asynchronous Transmission Using E220-900T22D #32069
        Renzo Mischianti
        Keymaster

          Hi, cosmic,
          The library is designed to send data and wait for the device’s feedback, but it does not use any delay or similar operations, so I think it doesn’t perform a blocking operation.
          If you need to perform nonblocking operations without feedback, you can use a multicore device like esp32s3 or similar.
          Bye Renzo

          in reply to: ESP32 – Ebyte LORA E32 433T30D V8 #32036
          Renzo Mischianti
          Keymaster

            Hi Petoga,
            to use different HardwareSerial pins, you must use the correct constructor

            
            LoRa_E32(byte txE32pin, byte rxE32pin, HardwareSerial* serial, byte auxPin, byte m0Pin, byte m1Pin, UART_BPS_RATE bpsRate, uint32_t serialConfig = SERIAL_8N1);
            // -------------------------------------
            

            so the first example constructor become

            
            LoRa_E32 e32ttl100(RX_PIN, TX_PIN, &Serial2, 35, M0, M1, UART_BPS_RATE_9600); //  RX AUX M0 M1
            
            

            Bye Renzo

            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

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