I made it!!! Now my $2 ESP8266 is priceless.!! I used a FTDI232 instead on an UNO. Thinking I could use the 3.3v directly. Everything went well, until I realised I still need the voltage regulator when hooking up the module to the main board.
Have everything up and running, with help of your video. Now it runs on a Infitary I3 with a custom HY_BASE_L v1.0 board, which I adapted (tricky!) to have the same AUX1 connections as the RAMPS 1.4 board. One final remark: in your video (at about 15:15) you make the final connection of the ESP8266 to the AUX1 connector of the RAMPS board. For non RAMPS users it is perhaps not clear that in this situation you connect TX(ESP) to RX(RAMPS) and RX(ESP) to TX(RAMPS). Thanks again for the video.
finally got it, it was very difficult to me to make the adapter module for my RAMPS 1.4, but finally maket and works like a charm....cheap wireless 3d printer!!!! thanks Chris!
Nice instruction again! The ESP is a 3.3V device, including the serial signals, while the control board is a 5V device. Wouldn't the 5V TX signal from the mainboard damage the ESP?
rut row....about 30 seconds in felt the pucker factor and quickly hit pause ....... assumed fetal position on floor, reached up over the edge of desk and finger searched for resume....... whimpered quietly to self thru the rest of video........ hope you take it easy on your fave uncle sunday cuz..... cant wait......laters
I've been using one of these for a couple of weeks now and although it "works" there are some big and annoying drawbacks. First being very few programs have the ability to print to a wifi-serial port (most of them expecting it to be just a serial port device) - there's only Repetier that I've managed to get too connect to it directly. And then comes the second disadvantage - there can be considerable lag over wifi which shows up as it being unable to fill your printers buffer fast enough resulting in the printer stalling while printing. In short, if your system works such that you can upload to SD and print from there (mine doesn't for reasons I've not yet figured) then this is cheap and simple way to SLOWLY upload to SD card, but don't really expect it to replace a USB lead if your printing directly.
@@ChrisRiley My Repetier Host will connect to my wifi (ESP-01s on SKR-PRO) printer via IP on my local network so I just use it that way. I use the data port 8888 and it functions just like using a USB port. I think Cura will do the same.
@Hindo Y. Yes, upload sketch, reset, then in tools hi ESP8266 sketch data upload, then reset, log on to the ESD3d via wifi and the wizard will pop up. I am trying to find a work around because the ESP3d instructions for the new version says you shouldn't have to do the sketch data upload, you can use the web interface, but I can't get it to work that way.
@Hindo Y. For me it worked with the v1.0. This is how i did it: 1. Set Flash Mode: DIO 2. Set Flash Size: 1M(128K SPIFFS) 3. Set CPU Frequenzy: 160MHz 4. Erase Flash: All Flash Contents Then i flashed the ESP3D v1.0 to the module, reset the module and then hit ESP8266 Sketch Data Upload (even though if the install instructions here:github.com/luc-github/ESP3D/wiki/Install-Instructions tell that it isn't necessary anymore). Then power off the module, remove GPIO_O to Ground jumper and power back on. Then the setup window on my laptop appeared after the wifi connection to the ESP8266 was established. Chris Riley Thank you for this video!
Damn Chris, you were faster! I was currently planning on doing this upgrade as well, but with a different ESP8266 module. As always, your videos are very educating and easy to keep up with!
There are, indeed. I hope to get a video together soon (that's always the longest part of the project for me, and together with my limited free time it explains the low frequency of my videos)^^
Followed your instructions, and it worked great. I think I still prefer octopi on my $14 orange pi zero, but it’s still a nice option. I like your videos, so you have another subscriber.
Chris Riley I like the esp solution as once gcode is uploaded nothing should interfere with the print. With Octoprint I have gone through periods where the usb was playing up and the printer kept micro pausing every few seconds. Octoprint also has the issue that when left plugged in my ramps board the lcd is still lit even when the printer power is off.
I'm using octoprint for these day to day tasks but I use a ESP8266 with esp-link firmware for over the air marlin flashing. Also the 3.3V step down converter is probably not needed. The ESP8266 can tolerate 5V
@@ChrisRiley I already ditched that for the octoprint firmware flasher plugin (but it requires proper bootloader (instead avr isp method) on the printer, manual avrdude installation on the pi and much patience finding the correct settings). So overwhelming sometimes when so many different roads lead to rome.
Hello Chris, I can use this: Mini module voltage regulator AMS1117-3.3V; The module integrates the regulating capacitors and a voltage indicator LED; Recommended voltage input: 4.5VDC to 7VDC; Typical output: 3.3VDC; Recommended maximum output current: 800mA; Supports up to 10VDC at the input, but with a heatsink Thanks
@@TheNikakz This one doesn't work? www.amazon.com/Anmbest-AMS1117-3-3-4-75V-12V-Voltage-Regulator/dp/B07CP4P5XJ/ref=sr_1_1?ie=UTF8&qid=1547596765&sr=8-1&keywords=ams1117
@@ChrisRiley The problem is that I do not think here to buy, amazon does not sell some things to Brazil and it takes too long to arrive and if it arrives
I'm using the nano. In another video said the nano reset has to be set to ground to program the esp. This works doing that, I have the 4mb esp-01s, it uploaded the CheckFlash sketch and reported config ok with 4mb flash size selected.
This is an awesome DIY! What is the bread board you're using to connect things temporarily by pushing it in. The white breadboard with the pins. What are those called where there's some connections between the pins and is good quality for continuous use like this..? Thanks!
Great video--hey Chris howzabout an updated 2020 version of this tutorial with a USB CH340 and SKR1.4 and latest ESP3D? Michael TeachTech's was a little basic, I think you could improve on it. Plus I think there are configurable files for VSCode? Thanks man
right chris the only thing i did not do was use the regulator but now i have the regulator its all hooked up as per your diagram im getting the same this, also the led is constantly lit on the board aswell in ur explanation you say it flases one but mine is on all the time
Ok. for ESP3D-2.0, copy the whole tree to your projects folder, then also copy the libraries folder to your arduino libraries location. Then under examples you can load the CheckFlashConfig. Once thats ok, load the new ino project 'basicesp3d.ino'. Then download the ESP3D-WEBUI files, once you connect to the basicesp3d webpage over wireless you can upload the index.html.gz package and begin configuring the client. I didnt have to load any blank sketches and the SPIFF is not necessary anymore (its built in).
The board I used it the cheapest option. You can run this software on any ESP32 or 8266 now a days. So pretty much everything is better than this board.
Hello Chris I bought a new esp8266 and at the moment it worked perfectly. Could you please post a video of how to add the "camera" that has the option in the firmware? I don't know what type of camera or how to put it. I didn't find much on the internet about it.
Great project! I’ve never used wireless printing I can see the appeal though. Sometimes being tethered to the printer and messing with SD cards is a hassle.
I don't know that you can, you still have to compile it. If you are using the Arduino IDE you might be able to use the IP as an upload port., but I probably wouldn't recommend it.
Hi Chris, great video and a whole bunch of information. In your video it looks like being so easy to conect the ESP to AUX1. Did you change anything in Marlin? I tried to conect my NodeMCU ESP12 to my anycubic Kossel having a Trigorilla board. This board has an UART3 port using D15 as RX3 and D14 as TX3. Ground and 5 V is workig to drive the NoedMCU, but I can't get the data lines working. I tried to use Serial_port 0 to 4 in Marlin 1.1.8 but with no help. Do you have any clue? Many thanks and dear greetings Simone
I didn't have to change anything in Marlin to get the Wifi to work. As long as those pins don't interfere with other serial traffic you should be fine. In the PINS.h file you might try swapping out the pin numbers to use the same pins as AUX1 normally would, that might help. Thanks for watching!
Gracias por tu video. Me salvaste de botar mi dinero en algo que no funciona. Saludos desde Santiago de Chile. Thanks for your video You saved me from throwing my money in something that does not work. Greetings from Santiago de Chile.
I used nodemcu and I could see the web interface when I opened the ip of nodemcu but I couldnt upload any gcode in it . What is the problem ? what am I supposed to do? please help me
Hi Chris, thank you much for the good tutorial. I certainly would prefer this method over the Raspberry Pi, and I do have a few Wemos D1 Mini sitting around. The major obstacle is, however, to look for the Rx/Tx lines from my Ender 3 mainboard. Can I use the ones on the ISP socket, or do I have to look for them somewhere?
On an ANET, you would probably have to hack the LCD cable to make this work. You would need to use a lot of those PIN's. Not sure which pins they are, but it's going to be a lot of work. The performance isn't very good with these modals. I would stick with the Pi method if I were you. Maybe grab a Pi Zero W and integrate it some how.
Fantastic video! One question though: In the ESP3D Github repository, under Install Instructions there is an EDIT that says that the SPIFFS Tool is no longer necessary because since FW version 0.9.99 there is a self uploader. So that means that when I have everything ready and upload the FW (1.0) into my ESP8266 the sketch data will be automatically uploaded with the FW? Can I completely skip the SPIFFS part of your video?
Well, it says that is will work with the self uploader, but I can't get it to work. The only way I can get it to successfully upload is by loading the data first. Give it a try, but I have had no success.
Older fat filesystems have the 8.3 naming limitation, hence the issue with .gcode :D Id looked that this and it's something I may use but i'm probably more likely to look at some of the serialwifi bridges that people have implemented using the esp-01 modules, that way I can keep octoprint.
Hy Chris, i'm loving this tutorial, managed to prepare the esp, and next up is connecting it to the ramps. Would this work with a voltage divider made with resistors? Do you have a wiring diagram between ramps and esp-01?
@@szzk I made these up real quick. Let me know if they help. docs.google.com/drawings/d/1AXd9tVAsm6mjZ_315d1R-aLewtKsTJAvjgU16KPJMas/edit?usp=sharing docs.google.com/drawings/d/1dfsURjk8fXmkQZTCzT7OhcTBYYSbyOzCvjnJzG_Mj-A/edit?usp=sharing
Sooo...would this work with the WiFi module included with the ender 3 BIGTREETECH touchscreen? It looks like the exact same part. This video is the closest thing I’ve found to setting it up. All I’ve found is instruction videos for raspberry pi octoprint or other self contained modules. Even had to take a 50/50 shot at which way the card plugged in to back of screen.
Hi Chris great video. Thank you for everything you doing. Can this be used on a Trigorilla V1.1 board ( on Anycubic I3 mega). I checked and on the board I have 4 pins available GND , 5V , TX3 and RX3 ( and UART next to them). Also do I need to install Marlin or it will work with the official firmware? I tried the OctoPi variant on a Pi4 4GB but I have problems with my prints and think the reason is a bad communication between Pi and printer. Same G code from SD card came out perfect but from OctoPi I had a lot of strings , bad retraction and miss steps. The only reason I try this is because the main thing I need is to have remote access to monitor the printer ( mostly temps ).
For monitoring this might work for you, not so much on printing really. It should work on that board, I don't think you will have to change the firmware, they use a version of Marlin, just not sure which one.
Hello Chris, in the schematic drawing that you sent me the RXd of the esp is connected in the D2 of ramps and the TXd in the D1, check this link, because what I was reading would be the opposite and I am in doubt to call in ramps here.
@@ChrisRiley Thanks, but it did not work, the esp was red light on and the LCD was saying connecting and then started to give a bug in the ramps and it was restarting, I will redo everything.
@@TheNikakz Interesting some pinouts call it d0 and d1, others call it d1 and d2. No matter what they are called they are still the top two right pins on AUX1.
Hi Chris thanks for the aweasome tutorial. I just have one question I went to the Github wiki for ESP3D and they add a couple of resistor CH_PD and RX pins they also conect RF to ground on the ESP8266. Is it needed or with your setup I fine?
Thanks for all your videos Chris! They helpt me out alot. I just bought my ender 3 and i want to upgrade it to the mks 1.4 with mks 32 TFT, tmc 2130's and WiFi. Well.. I think the 1.4 because its a 32 bit board. I would like to use octoprint tough and i dont know if that is posible... Do you have any advise? Or better yet, would you consider building this in a video? There is a lot out there for the mks gen L (this is a 8 bit board Right? ) but i cant find anything on the 1.4 which makes me doubt If this is the correct choice
So the gen L is just a newer version of the 1.4 basically, they are both 2560 chips and are 8bit. You are thinking of the 1.3, it's 32bit. You can use octoprint with either, no worries there. 32bit can be kind of fussy at the moment with Marlin. If I were you, on an ender 3, I would go with the gen L and 2208 drivers. This will make your life so much easier. Unless there is just something you need stallguard for.
There is, but it's not very secure. You can do port forwarding from your router. To be more secure you would need to setup a VPN. O use realvnc to access my home computer, then my printers from there.
Now I want to do it. Could you make a list of the components in your store recommended products so I can contribute to your channel by buying from there?
Sure! I warn you, it's a fun project, but kind of frustrating and pretty slow to use. ESP: www.amazon.com/gp/product/B016U051MK/ref=oh_aui_detailpage_o05_s00?ie=UTF8&psc=1 Regulator. www.amazon.com/gp/product/B01N1I1LXH/ref=oh_aui_detailpage_o00_s00?ie=UTF8&psc=1
So once the IP is established, can the independent ESP's being added to a management software like Klipper or Creality Print? I want all my printers on one software and it makes sense that I could add IP direct to the Creality Print Slicer and upload from there direct to my machine. Thanks!
Hi Chris, my Module returns "WebSocketsServer.h doesn't exist" when Uploading the ESP3D Config to the Board. Any Idea what will help? I created another WebSocketsServer.h and it's still not compiling...
Chris, after juggling I managed to configure, but I had to do differently in some parts, change from flash mode DIO in one and then QIO to the other, CPU frequency also to 80 in one and 160 in another, then I got the same way put the SPIFFS in 1M 512K, was trial and error to set up and I did not understand why all this. Now I was in doubt on some configurations of the WEB interface, could make a small video demonstrating this, for beginners as I is something crucial, for example IP is set as static, this is or would be DHCP, printer settings, etc ... I apologize if I bothered you with so many questions, I have a lot to thank and I have learned from you it is difficult for a beginner and with the language barrier it gets more complicated. Thanks
Chris, one last request, I did not understand the connection scheme of ESP with AMS in ramps, even for what I downloaded in your google docs, could you send me this link? In its drawing the 5V of the ramps Aux1 goes on the VIN of the AMS, GND AUX on the AMS 2 and the GND of the Esp (that is not GND is out) and the AMS 3 that is GND goes in the VCC of the Esp, I was confused with these connections.
SPIFFS Error: esptool not found! its great this is so easy and straight forward...... I've had to find and install library files you didn't mention. i got this ESPtool error when uploading sketch data. seems like id be doing something wrong if i didn't get errors.
Started in on an esp32 on a 1.1.4 board... I think I have the pinout. The web gui works good, but I have no idea for the actual interface to the board because I have not soldered anything to the pins on the 1.1.4 board.
You should be able to just connect it straight up to USB, then make sure you select the right flash size when compiling, more or less same procedure...compile the .ino, upload, then upload the "webpage" data, then it connects with the TX/RX pins on the board...still need to wire in 5vdc and GND Also looks like a good candidate for the wifirepeater image too
Cool, already googled how I can connect this to my stock Creality board. They sell uart to usb adapter with those, I guess I can program it without Arduino then.
Oh yes...turn out that my clone mega was having issues with serial...so I did change it with a new one...and all work as it should...great tutorial... By the way...what about video on the esp3d web page how to install webcam to see in real time the printer?
Hello, Nice video!! I'm using the same version that you are using. But when I'm going to the Dashboard, I cant send any commands to my printer. Do I need to change something in Merlin? Could you send me the merlin file that you are using?
That has been so long ago I don't know where that config is. If you are using Marlin 1.1.x then you don't have to change anything. If you are using 2.x then you have to add the second serial port in configuration.h
right chris iv got the board and am about to program it but here is one 4 ya how do u connect it to a mks gen 1.0 its based on the same board ur using so would the pinouts be the same or am i better of using a pie and octaprint as iv got spare pie hanging about
thank you it worked good, but i have problem connecting to the printer when i open the web page and send some command to the printer, it didnt move or do a thing oh and one more thing, when you hade a problem uploading the esp3d file to the ESP2866 you have to check the Erase flash to All flash contents, under Tools menu.
hoi Chris again great video. i installed it on my printer. work very well; The problem i have is to upload the gcode file. At 19 minutes on your video you say that i need to change to gco. i have try all ready 2 days to find how to change from gcode to gco but i can't find it, please can you help me. Thanks Keep posted
In windows make sure you turn the file extensions on so you can see to change them. support.winzip.com/hc/en-us/articles/115011457948-How-to-configure-Windows-to-show-file-extensions-and-hidden-files
Hello sir ur tutorial is much easier to understand and I need a wireless solution to my scenario...I use a 3D named 'Aarya P1' which consists of Arduino AtMega 2560 coupled with RAMPS v1.4...the printer uses a different firmware made for it and not 'marlin firmware'...So,can you guide me in adding a wireless feature to my printer using nodemcu or esp8266 module
Thanks for watching! I have seen a ton of cool connectors on ebay that would greatly help create this. There are some listed in the comments that others have used.
Hi Chris, I am able to make the module show up on my laptop and the WebUI pops up once I click on it, but when i try to connect to the module after I have it set up in the WebUI, I cannot. I have the module set to Client Station but it still shows up in my wifi list as a device to connect to, should it? Any ideas on how to fix this? Thanks.
@@ChrisRiley But when the setup process opens up in chrome and I select Client Station, it seems to stay connected as an Access Point. If you go on to the WebUI and click the tab to change the ESP3D settings, the 'Wifi mode' is set to Client Station, but if I click the blue square with the three white lines at the top (beside the other colored squares), 'Active Mode' is set to Access Point while 'Disabled Mode' is set to Station. I can't seem to figure out what is wrong so any ideas will be helpful, thank you.
Well at the beginning of the LOG project it was about $225 to build and I would say it was about the same print quality as an ender 3. I have since upgraded the bed,board and hotend. Log now prints almost as good as my Prusa, but the price tag has gone up a lot.
Thanks abunches a for this video it’s awesomes an very helpful an easy believe it or nat thanks abunches for making things a skittle easier for the slow people’s :)
So, that board you're hooking the 8266 up to - does every 3D printer just happen to have that interface? I have a CR10 - without opening the control box/power supply, all I see is an external USB plug. All I really need is the ability to wirelessly upload prints, so this project will work for me
We touched on it in the stream, but all printers probably have access to this connection it's just going to be a little difficult to find the right point to plug it in on some models. Not sure on the CR10, I can take a look.
@@ChrisRiley www.ebay.com/itm/Micro-USB-Type-B-male-to-mini-USB-Type-B-male-Host-OTG-Adapter-Cable-cord-lead/351700417158?hash=item51e2fa7a86:g:xYkAAOSwGYVXBMBJ what you thing about this cable to do the conection?
@@ChrisRiley yes, but I followed another tutorial, my module needed another flash before this firmware. It is a Chinese tool, called ESP8266_Flasher_Tool, now it works nice. Thanks for your video, you made me put this on my printer. Works nicely!
For anyone still looking to do this, I recommend this: www.amazon.com/gp/product/B07KF119YB/ref=ppx_yo_dt_b_asin_title_o03_s00?ie=UTF8&psc=1 just $8, and no need to mess with an arduino, wiring, or soldering. simple usb connection and switch to flip between programming and usage modes. I'd also recommend sticking with the 1.0 release of ESP3D. The 2.x releases are quirky and difficult to get running (well, was for me anyway)
Good Video easily got everything working, can control the printer, only thing I am unable to do is upload a file. Renamed the files to the 8.3 format ie cube.gco, checked the SD Card, tried others. But it fails every-time. As a exercise I enjoyed trying it, but I think I will stick to Octoprint and Pi.
Mine was super slow, I guess there is a better version of the ESP I might give that a try sometime, but I am with you, octoprint is way better. Thanks for watching!
@@ChrisRiley I'm a noob here but have you tried ESP32? I don't know the difference between the ESP32 and the module you were using besides the hardware. EDIT: does your tutorial works with the Anet A8? The stock motherboard.
@@IamG3X I have not tried the ESP32 yet. I don't think the ANET board has any Tx or Rx pins available. You would have to figure out how to hack the LCD cable.
I have problem with upload too. What I understend is: on marlin 1.1.0-RC7 I can upload, but cant see uploaded files from sd card with esp3d; on marlin 1.1.1 I cant upload (just 0 B files created), but can see and print from SD! Also tried 1.1.9, 2.0, diferent boards and sd interfaces, also tryed upload via usb from pronterface - always 0 byte files. Hope it can help or if you find solution - tell me :)
You could use GPIO pins on the pi if you new the right pins on your mainboard, but that's about the only thing I know. Is there a reason you can't use USB?
It would kind of work. The current isn't high enough. It would probably work when you were configuring it, then fail when trying to connect to the wifi.
I'm wondering, would this work with the BTT SKR Mini E3? It doesn't have an aux header like the RAMPS board you're using, but it does have a TFT labeled header, which has RST, RX, TX, GDN and +5V. Seems like it should work, right?
Hey Tim, it seems like you should be able to make that work. I don't know a lot about that board yet, I do have one and I should start my testing soon.
@@ChrisRiley Hi Chris, back again with a question: Could it be that I have to activate the TFT header on that board? The ESP is working as it should: I can see that the proper gcode is sent (while I have the ESP plugged into my PC), and the web GUI works while it's plugged into the printer (so 5V and GND do work), but the printer doesn't respond to any of the commands. It also doesn't show the IP address on boot, like you showed. I've already tried swapping the TX and RX lines, but no luck there either. Could it be that the 3.3v signal level is too low for the SKR Mini E3 (not sure what if your RAMPS board was made for accepting 3.3v logic?)? Is there something firmware-related that has to be changed for this to work? As always, any help would be greatly appreciated.
With a 5v power supply it works, but when I connect it to a RAMPS board for power it does not, and the LCD dims.... verified it's connected right... I have a spare VR around here... if I find it I'll check that.
Mega clone have a bad habit of not having very good 5v regulators. Try plugging in the wifi to ramps then cabling the board you USB to get an additional 5v source. See if that works.
Hi, i tried to make this project but i can't upload the code on Nodemcu board. The IDE shows this error: In file included from C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:29:0: C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.h:27:7: error: redefinition of 'class WiFiUDP' class WiFiUDP : public UDP { ^ In file included from C:\Program Files (x86)\Arduino2\libraries\WiFi\src\utility/wifi_drv.h:26:0, from C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:26: C:\Users\Ivan Margiotta\AppData\Roaming\Arduino15\packages\esp8266\hardware\esp8266\2.4.2\libraries\ESP8266WiFi\src/WiFiUdp.h:32:7: error: previous definition of 'class WiFiUDP' class WiFiUDP : public UDP, public SList { ^ C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In constructor 'WiFiUDP::WiFiUDP()': C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:35:22: error: class 'WiFiUDP' does not have any field named '_sock' WiFiUDP::WiFiUDP() : _sock(NO_SOCKET_AVAIL) {} ^ C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual uint8_t WiFiUDP::begin(uint16_t)': C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:45:9: error: '_sock' was not declared in this scope _sock = sock; ^ C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:46:9: error: '_port' was not declared in this scope _port = port; ^ C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual int WiFiUDP::available()': C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:56:7: error: '_sock' was not declared in this scope if (_sock != NO_SOCKET_AVAIL) ^ C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual void WiFiUDP::stop()': C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:66:8: error: '_sock' was not declared in this scope if (_sock == NO_SOCKET_AVAIL) ^ C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:69:26: error: '_sock' was not declared in this scope ServerDrv::stopClient(_sock); ^ C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual int WiFiUDP::beginPacket(IPAddress, uint16_t)': C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:88:7: error: '_sock' was not declared in this scope if (_sock == NO_SOCKET_AVAIL) ^ C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:90:7: error: '_sock' was not declared in this scope if (_sock != NO_SOCKET_AVAIL) ^ C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual int WiFiUDP::endPacket()': C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:101:32: error: '_sock' was not declared in this scope return ServerDrv::sendUdpData(_sock); ^ C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual size_t WiFiUDP::write(const uint8_t*, size_t)': C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:111:27: error: '_sock' was not declared in this scope ServerDrv::insertDataBuf(_sock, buffer, size); ^ C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual int WiFiUDP::read()': C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:125:23: error: '_sock' was not declared in this scope ServerDrv::getData(_sock, &b); ^ C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual int WiFiUDP::read(unsigned char*, size_t)': C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:137:31: error: '_sock' was not declared in this scope if (!ServerDrv::getDataBuf(_sock, buffer, &size)) ^ C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual int WiFiUDP::peek()': C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:152:22: error: '_sock' was not declared in this scope ServerDrv::getData(_sock, &b, 1); ^ C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual IPAddress WiFiUDP::remoteIP()': C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:167:25: error: '_sock' was not declared in this scope WiFiDrv::getRemoteData(_sock, _remoteIp, _remotePort); ^ C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual uint16_t WiFiUDP::remotePort()': C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:177:25: error: '_sock' was not declared in this scope WiFiDrv::getRemoteData(_sock, _remoteIp, _remotePort); ^ Errore durante la compilazione can you please help me?
They are pretty much the same concept, but Octoprint is going to be much faster and have a lot more plugins/features for it. The ESP option is a lot cheaper than the Pi, but not as fancy.
Hi Chris, tried to follow your tutorial, but I have a rearm ramps setup and right from the get-go there is no "preferences" option in platform IO. So how do you do it in Atom/Marlin 2.0?
@@ChrisRiley Hi Chris, I made an esp3d and Tools folder under lpc1768 but: The AUX2 pins don't work on re-arm so connected to AUX1 (TX =D1 & RX =D0) But: now platformio wont build and I cant figure a way to assign pins or flash the wifi module. Is there any chance you can write a step-by-step or make a tutorial video please?
Was literally googling this last night. You beat me to the punch! Least I have a straight forward guide on how to do it now. Thanks man!
There are a ton of good ways to get this done I found. Let me know if you find something interesting.
I made it!!! Now my $2 ESP8266 is priceless.!!
I used a FTDI232 instead on an UNO. Thinking I could use the 3.3v directly. Everything went well, until I realised I still need the voltage regulator when hooking up the module to the main board.
I'm glad you got it working!
Thank you so much!! I used an Adafruit Feather Huzzah and now my printer has WiFi connectivity thanks to your concise instructions.
You are very welcome, glad they helped you.
Have everything up and running, with help of your video. Now it runs on a Infitary I3 with a custom HY_BASE_L v1.0 board, which I adapted (tricky!) to have the same AUX1 connections as the RAMPS 1.4 board. One final remark: in your video (at about 15:15) you make the final connection of the ESP8266 to the AUX1 connector of the RAMPS board. For non RAMPS users it is perhaps not clear that in this situation you connect TX(ESP) to RX(RAMPS) and RX(ESP) to TX(RAMPS). Thanks again for the video.
willemnitert Awesome, glad you got it working. Thanks for the pointer. I probably could have made that more clear.
finally got it, it was very difficult to me to make the adapter module for my RAMPS 1.4, but finally maket and works like a charm....cheap wireless 3d printer!!!! thanks Chris!
Rodrigo Salas Awesome! Nice work! Glad it is working for you.
Nice instruction again! The ESP is a 3.3V device, including the serial signals, while the control board is a 5V device. Wouldn't the 5V TX signal from the mainboard damage the ESP?
You don't want to run at 5v very long. That's why I created the voltage divider.
rut row....about 30 seconds in felt the pucker factor and quickly hit pause ....... assumed fetal position on floor, reached up over the edge of desk and finger searched for resume....... whimpered quietly to self thru the rest of video........ hope you take it easy on your fave uncle sunday cuz..... cant wait......laters
Ha ha ha....we'll start slow, if this build doesn't turn you off 3D printing nothing will. See you Sunday.
HAHA, your lucky though, if chris was my nephew hed be put off 3d printing and electronics after having to help me all the time XD
Wow, ESP3D has come a long way. This is definitely worth a try. Thanks for making it look so easy. Nice work!
Thanks! They are pretty cool little modules really.
Dude you are the best. You beserve way more subscribers and views!
seriousCADninja Thanks! I appreciate the comment. We are working on it.
I've been using one of these for a couple of weeks now and although it "works" there are some big and annoying drawbacks. First being very few programs have the ability to print to a wifi-serial port (most of them expecting it to be just a serial port device) - there's only Repetier that I've managed to get too connect to it directly. And then comes the second disadvantage - there can be considerable lag over wifi which shows up as it being unable to fill your printers buffer fast enough resulting in the printer stalling while printing.
In short, if your system works such that you can upload to SD and print from there (mine doesn't for reasons I've not yet figured) then this is cheap and simple way to SLOWLY upload to SD card, but don't really expect it to replace a USB lead if your printing directly.
I totally agree, it not a very solid way to add wifi to a printer. Octoprint is still my go to.
@@ChrisRiley My Repetier Host will connect to my wifi (ESP-01s on SKR-PRO) printer via IP on my local network so I just use it that way. I use the data port 8888 and it functions just like using a USB port. I think Cura will do the same.
Another awesome DIY!!! You are a great asset to the 3DP DIY Community! Keep it up bro! 👍🏼👍🏼👏🏼👏🏼👏🏼
That means a lot man, thanks!
Great video again Chris, easy to follow and natural style to put the information across.
Thanks as always!
Chris thanks for your help, It worked very well with WeMos D1 (ESP8266MOD) !!!!
Sweet! I have been meaning to try the D1.
@Hindo Y. It shouldn't do this if you run the data upload right after you unload the sketch. I am trying to find another work around.
@Hindo Y. Yes, upload sketch, reset, then in tools hi ESP8266 sketch data upload, then reset, log on to the ESD3d via wifi and the wizard will pop up.
I am trying to find a work around because the ESP3d instructions for the new version says you shouldn't have to do the sketch data upload, you can use the web interface, but I can't get it to work that way.
@Hindo Y. Interesting, thanks for the update.
@Hindo Y. For me it worked with the v1.0. This is how i did it:
1. Set Flash Mode: DIO
2. Set Flash Size: 1M(128K SPIFFS)
3. Set CPU Frequenzy: 160MHz
4. Erase Flash: All Flash Contents
Then i flashed the ESP3D v1.0 to the module, reset the module and then hit ESP8266 Sketch Data Upload (even though if the install instructions here:github.com/luc-github/ESP3D/wiki/Install-Instructions tell that it isn't necessary anymore). Then power off the module, remove GPIO_O to Ground jumper and power back on. Then the setup window on my laptop appeared after the wifi connection to the ESP8266 was established.
Chris Riley Thank you for this video!
Damn Chris, you were faster! I was currently planning on doing this upgrade as well, but with a different ESP8266 module. As always, your videos are very educating and easy to keep up with!
Ha, I would defiantly like to see your take on this. From my research, there are many ways to implement this.
There are, indeed. I hope to get a video together soon (that's always the longest part of the project for me, and together with my limited free time it explains the low frequency of my videos)^^
Followed your instructions, and it worked great. I think I still prefer octopi on my $14 orange pi zero, but it’s still a nice option. I like your videos, so you have another subscriber.
Michael, thanks for the comment and the sub. I was hoping someone else would try this out. I agree the octopi is much better, but a fun cheap project.
Chris Riley I like the esp solution as once gcode is uploaded nothing should interfere with the print. With Octoprint I have gone through periods where the usb was playing up and the printer kept micro pausing every few seconds. Octoprint also has the issue that when left plugged in my ramps board the lcd is still lit even when the printer power is off.
I'm using octoprint for these day to day tasks but I use a ESP8266 with esp-link firmware for over the air marlin flashing. Also the 3.3V step down converter is probably not needed. The ESP8266 can tolerate 5V
Good idea for the Marlin flashing.
@@ChrisRiley I already ditched that for the octoprint firmware flasher plugin (but it requires proper bootloader (instead avr isp method) on the printer, manual avrdude installation on the pi and much patience finding the correct settings). So overwhelming sometimes when so many different roads lead to rome.
Wow! That one was pretty involved! Very cool that we can do that if needed, but glad I'm using OctoPrint! Lol
Yeah, octoprint, way better.
Yeah...but OctoPrint is it's own critter, this is much simpler...but slower
Thanks for the detailed video!! I have had a pair of ESP8266 for forever and never really been able to use them other than issuing AT commands to it.
Anytime! Glad you found it helpful!
Hello Chris, I can use this: Mini module voltage regulator AMS1117-3.3V;
The module integrates the regulating capacitors and a voltage indicator LED;
Recommended voltage input: 4.5VDC to 7VDC;
Typical output: 3.3VDC;
Recommended maximum output current: 800mA;
Supports up to 10VDC at the input, but with a heatsink
Thanks
Yes, that sounds like it should work.
@@ChrisRiley I can not find 3 legs. Could you tell me another one to use instead? The one who goes up to 7V is afraid of not giving.
@@ChrisRiley see: www.usinainfo.com.br/reguladores-de-tensao/regulador-de-tensao-33v-ams1117-entrada-45-a-12v-dc-e-saida-33v-dc-4981.html?search_query=regulador+tensao+ams&results=12
@@TheNikakz This one doesn't work? www.amazon.com/Anmbest-AMS1117-3-3-4-75V-12V-Voltage-Regulator/dp/B07CP4P5XJ/ref=sr_1_1?ie=UTF8&qid=1547596765&sr=8-1&keywords=ams1117
@@ChrisRiley The problem is that I do not think here to buy, amazon does not sell some things to Brazil and it takes too long to arrive and if it arrives
I'm using the nano. In another video said the nano reset has to be set to ground to program the esp. This works doing that, I have the 4mb esp-01s, it uploaded the CheckFlash sketch and reported config ok with 4mb flash size selected.
It seems like these all have just a few little differences.
This by far the best instruction I have looking for, for a long time. Thanks ChrisKind regardsEd
Ed van den Enden Awesome! Thanks for the comment.
This is great. No idea why this doen't have a zillion views. Nice work!
Thanks Brad!
This is an awesome DIY! What is the bread board you're using to connect things temporarily by pushing it in. The white breadboard with the pins. What are those called where there's some connections between the pins and is good quality for continuous use like this..? Thanks!
Thanks! This video is getting pretty old now! :) When I got started with things like this, I bought a set a lot like this one. amzn.to/3NMGVjH
Great video--hey Chris howzabout an updated 2020 version of this tutorial with a USB CH340 and SKR1.4 and latest ESP3D? Michael TeachTech's was a little basic, I think you could improve on it. Plus I think there are configurable files for VSCode? Thanks man
Thanks, I am working on that right now! Stay tuned.
right chris the only thing i did not do was use the regulator but now i have the regulator its all hooked up as per your diagram im getting the same this, also the led is constantly lit on the board aswell in ur explanation you say it flases one but mine is on all the time
Those boards can vary greatly, so that might not be an issue. If you send me an email I can try to help troubleshoot it further.
@@ChrisRiley send me ur meail address tonygreenall83@gmail.com
or u can skype me live:tonygreenall1967
Ok. for ESP3D-2.0, copy the whole tree to your projects folder, then also copy the libraries folder to your arduino libraries location. Then under examples you can load the CheckFlashConfig. Once thats ok, load the new ino project 'basicesp3d.ino'. Then download the ESP3D-WEBUI files, once you connect to the basicesp3d webpage over wireless you can upload the index.html.gz package and begin configuring the client. I didnt have to load any blank sketches and the SPIFF is not necessary anymore (its built in).
Awesome, thank you for the rundown, I want to give it a try because it has been confusing a lot of users.
I still can't get the index.html.gz to take, it just errors out. What browser are you using?
is the bord (Mega +WiFi R3 ATmega2560+ESP8266 (32Mb memory), USB-TTL CH340G. Compatible for Arduino Mega, NodeMCU, WeMos ESP8266) better ?
The board I used it the cheapest option. You can run this software on any ESP32 or 8266 now a days. So pretty much everything is better than this board.
Hello Chris
I bought a new esp8266 and at the moment it worked perfectly.
Could you please post a video of how to add the "camera" that has the option in the firmware? I don't know what type of camera or how to put it. I didn't find much on the internet about it.
Glad you got it up and running. I am not sure you can add a cam with this module. Let me see what I can find.
Nice work. Good video to watch. Outstanding.
Thanks Ginger and thanks for watching!
Great project! I’ve never used wireless printing I can see the appeal though. Sometimes being tethered to the printer and messing with SD cards is a hassle.
Thanks! For sure, there are lots of ways to get this done, but this is the cheapest one I could find.
So i saw that I have a wifi port on the board for the LD-002H.... lets see if we can get some wifi on there :) thanks brother Chris !
No problem Paul! Good luck! 👍
Thanks to you I managed to put the printer on wifi. Question I have how to update the marlin via wifi?
I don't know that you can, you still have to compile it. If you are using the Arduino IDE you might be able to use the IP as an upload port., but I probably wouldn't recommend it.
Hi Chris,
great video and a whole bunch of information.
In your video it looks like being so easy to conect the ESP to AUX1. Did you change anything in Marlin?
I tried to conect my NodeMCU ESP12 to my anycubic Kossel having a Trigorilla board. This board has an UART3 port using D15 as RX3 and D14 as TX3. Ground and 5 V is workig to drive the NoedMCU, but I can't get the data lines working. I tried to use Serial_port 0 to 4 in Marlin 1.1.8 but with no help. Do you have any clue?
Many thanks and dear greetings
Simone
I didn't have to change anything in Marlin to get the Wifi to work. As long as those pins don't interfere with other serial traffic you should be fine. In the PINS.h file you might try swapping out the pin numbers to use the same pins as AUX1 normally would, that might help. Thanks for watching!
Interesting video.... I guess I have one of those flying around in my box..... :-)
Gracias por tu video. Me salvaste de botar mi dinero en algo que no funciona. Saludos desde Santiago de Chile.
Thanks for your video You saved me from throwing my money in something that does not work. Greetings from Santiago de Chile.
You are very welcome! I am glad it helped you out!
you do a great job, agree you should have way more subscribers.
Thanks man, much appreciated.
I used nodemcu and I could see the web interface when I opened the ip of nodemcu but I couldnt upload any gcode in it . What is the problem ? what am I supposed to do? please help me
You are actually loading the files to the printers SD card, is the card plugged into the printer?
@@ChrisRiley yes and i could see the gcode files, whic is in sd card, on lcd display.
Hi Chris, thank you much for the good tutorial. I certainly would prefer this method over the Raspberry Pi, and I do have a few Wemos D1 Mini sitting around. The major obstacle is, however, to look for the Rx/Tx lines from my Ender 3 mainboard. Can I use the ones on the ISP socket, or do I have to look for them somewhere?
On an ANET, you would probably have to hack the LCD cable to make this work. You would need to use a lot of those PIN's. Not sure which pins they are, but it's going to be a lot of work. The performance isn't very good with these modals. I would stick with the Pi method if I were you. Maybe grab a Pi Zero W and integrate it some how.
@@ChrisRiley Thank you, Chris! Appreciated!
Fantastic video! One question though: In the ESP3D Github repository, under Install Instructions there is an EDIT that says that the SPIFFS Tool is no longer necessary because since FW version 0.9.99 there is a self uploader. So that means that when I have everything ready and upload the FW (1.0) into my ESP8266 the sketch data will be automatically uploaded with the FW? Can I completely skip the SPIFFS part of your video?
Well, it says that is will work with the self uploader, but I can't get it to work. The only way I can get it to successfully upload is by loading the data first. Give it a try, but I have had no success.
u dont have to mount a voltage regulator all arduinos have a 3.3v output so u can hook it up to the ramps or even the uno
Older fat filesystems have the 8.3 naming limitation, hence the issue with .gcode :D
Id looked that this and it's something I may use but i'm probably more likely to look at some of the serialwifi bridges that people have implemented using the esp-01 modules, that way I can keep octoprint.
Thanks, that's good info!
Excelent!!!! You are cool !!! Is it possible to connect it to SKR E3 DIP ?
Yep, that should be the same type of software they use on the SKR1.4.
Hy Chris, i'm loving this tutorial, managed to prepare the esp, and next up is connecting it to the ramps. Would this work with a voltage divider made with resistors? Do you have a wiring diagram between ramps and esp-01?
Yes, I think a voltage divider would work just fine. I don't have a diagram, but I can probably draw one up.
@@ChrisRiley could you please draw one up? It would help a lot
@@szzk I made these up real quick. Let me know if they help.
docs.google.com/drawings/d/1AXd9tVAsm6mjZ_315d1R-aLewtKsTJAvjgU16KPJMas/edit?usp=sharing
docs.google.com/drawings/d/1dfsURjk8fXmkQZTCzT7OhcTBYYSbyOzCvjnJzG_Mj-A/edit?usp=sharing
@@ChrisRiley It does, thank you so much!!!
Sooo...would this work with the WiFi module included with the ender 3 BIGTREETECH touchscreen? It looks like the exact same part. This video is the closest thing I’ve found to setting it up. All I’ve found is instruction videos for raspberry pi octoprint or other self contained modules. Even had to take a 50/50 shot at which way the card plugged in to back of screen.
Yes, these should work work on BTT boards and screens. It's all the same type of wifi bridge.
Hi Chris great video. Thank you for everything you doing. Can this be used on a Trigorilla V1.1 board ( on Anycubic I3 mega). I checked and on the board I have 4 pins available GND , 5V , TX3 and RX3 ( and UART next to them). Also do I need to install Marlin or it will work with the official firmware? I tried the OctoPi variant on a Pi4 4GB but I have problems with my prints and think the reason is a bad communication between Pi and printer. Same G code from SD card came out perfect but from OctoPi I had a lot of strings , bad retraction and miss steps. The only reason I try this is because the main thing I need is to have remote access to monitor the printer ( mostly temps ).
For monitoring this might work for you, not so much on printing really. It should work on that board, I don't think you will have to change the firmware, they use a version of Marlin, just not sure which one.
Hello Chris, in the schematic drawing that you sent me the RXd of the esp is connected in the D2 of ramps and the TXd in the D1, check this link, because what I was reading would be the opposite and I am in doubt to call in ramps here.
RX goes to D1 and TX goes to D0
@@ChrisRiley Thanks, but it did not work, the esp was red light on and the LCD was saying connecting and then started to give a bug in the ramps and it was restarting, I will redo everything.
@@ChrisRileyIn your drawing that sent me is RX in D2 and Tx in D1, check it out? Because that's how I called.
@@TheNikakz Interesting some pinouts call it d0 and d1, others call it d1 and d2. No matter what they are called they are still the top two right pins on AUX1.
@@ChrisRiley ok, vou revisar
Hi Chris thanks for the aweasome tutorial. I just have one question I went to the Github wiki for ESP3D and they add a couple of resistor CH_PD and RX pins they also conect RF to ground on the ESP8266. Is it needed or with your setup I fine?
It depends on what ESP module you have, it seems they are all different. It's kind of trial and error.
Chris Riley thanks man!
Thanks for all your videos Chris! They helpt me out alot. I just bought my ender 3 and i want to upgrade it to the mks 1.4 with mks 32 TFT, tmc 2130's and WiFi. Well.. I think the 1.4 because its a 32 bit board. I would like to use octoprint tough and i dont know if that is posible... Do you have any advise? Or better yet, would you consider building this in a video? There is a lot out there for the mks gen L (this is a 8 bit board
Right? ) but i cant find anything on the 1.4 which makes me doubt
If this is the correct choice
So the gen L is just a newer version of the 1.4 basically, they are both 2560 chips and are 8bit. You are thinking of the 1.3, it's 32bit. You can use octoprint with either, no worries there. 32bit can be kind of fussy at the moment with Marlin. If I were you, on an ender 3, I would go with the gen L and 2208 drivers. This will make your life so much easier. Unless there is just something you need stallguard for.
@@ChrisRiley man that was fast! Thanks for getting back at me! I was sure the 1.4 was the newer 1😅 no im just a noob that got in to deep...
@@ChrisRiley i will go for the 2130. I like the idea for extra power when needed and it forces me to learn more. I might regret it tough
now we need to play around with the mks and other all in one boards to find which pins to use
We are going to do exactly that very soon! Stay tuned for the LOG upgrades.
Great video Chris! This helped a lot! But one question. Is there a way to acces this GUI outside of the wifi network (so all over the world)?
Thanks!
There is, but it's not very secure. You can do port forwarding from your router. To be more secure you would need to setup a VPN. O use realvnc to access my home computer, then my printers from there.
Some routers can be configured as a VPN server. I am using keenetic products and supports for VPN connections.
ESp8266-12E is a little more money but so much better to program. And 5V input.
Now I want to do it. Could you make a list of the components in your store recommended products so I can contribute to your channel by buying from there?
Sure! I warn you, it's a fun project, but kind of frustrating and pretty slow to use.
ESP:
www.amazon.com/gp/product/B016U051MK/ref=oh_aui_detailpage_o05_s00?ie=UTF8&psc=1
Regulator.
www.amazon.com/gp/product/B01N1I1LXH/ref=oh_aui_detailpage_o00_s00?ie=UTF8&psc=1
so the arduino board is just used to program the ESP8266 module right? not for the printing process?
That is correct.
So once the IP is established, can the independent ESP's being added to a management software like Klipper or Creality Print? I want all my printers on one software and it makes sense that I could add IP direct to the Creality Print Slicer and upload from there direct to my machine. Thanks!
You can, but it is SUPER slow, not sure it would be worth your time. It is possible though.
Hi Chris, my Module returns "WebSocketsServer.h doesn't exist" when Uploading the ESP3D Config to the Board.
Any Idea what will help? I created another WebSocketsServer.h and it's still not compiling...
They have been working on this project a lot lately, I will probably do another video on it.
Chris, after juggling I managed to configure, but I had to do differently in some parts, change from flash mode DIO in one and then QIO to the other, CPU frequency also to 80 in one and 160 in another, then I got the same way put the SPIFFS in 1M 512K, was trial and error to set up and I did not understand why all this. Now I was in doubt on some configurations of the WEB interface, could make a small video demonstrating this, for beginners as I is something crucial, for example IP is set as static, this is or would be DHCP, printer settings, etc ... I apologize if I bothered you with so many questions, I have a lot to thank and I have learned from you it is difficult for a beginner and with the language barrier it gets more complicated. Thanks
Things change so fast with these things it's to keep up. I am glad you are making progress.
Chris, one last request, I did not understand the connection scheme of ESP with AMS in ramps, even for what I downloaded in your google docs, could you send me this link? In its drawing the 5V of the ramps Aux1 goes on the VIN of the AMS, GND AUX on the AMS 2 and the GND of the Esp (that is not GND is out) and the AMS 3 that is GND goes in the VCC of the Esp, I was confused with these connections.
@@TheNikakz This isn't correct? docs.google.com/drawings/d/1z167zKmgja0fHPxrM4l7RUT6-UOSLVTGQDHHzxIrIrE/edit?usp=sharing
@@ChrisRiley Yes Chris should be correct, but what I want is the link from ESP to AMS, and for ramps, I could not understand those links by the video.
SPIFFS Error: esptool not found!
its great this is so easy and straight forward......
I've had to find and install library files you didn't mention.
i got this ESPtool error when uploading sketch data.
seems like id be doing something wrong if i didn't get errors.
Things have changed a lot in the newer versions. Are you working with 0.99 like I am in the video?
Started in on an esp32 on a 1.1.4 board... I think I have the pinout. The web gui works good, but I have no idea for the actual interface to the board because I have not soldered anything to the pins on the 1.1.4 board.
Which board? MKS 1.4 or a Creality board?
Chris can you guide on how can this be done with D1 mini? to be exact WeMos D1 mini V2.2.0 WIFI Internet Development Board Based ESP8266 4MB
Shriganesh Borse I have one of those somewhere, I will take a look.
See the ESP3D file package, there's lots of pictures containing what you need.
You should be able to just connect it straight up to USB, then make sure you select the right flash size when compiling, more or less same procedure...compile the .ino, upload, then upload the "webpage" data, then it connects with the TX/RX pins on the board...still need to wire in 5vdc and GND
Also looks like a good candidate for the wifirepeater image too
Cool, already googled how I can connect this to my stock Creality board. They sell uart to usb adapter with those, I guess I can program it without Arduino then.
Great, thanks for watching!
Hello Chris Riley
. I loved this video but I have a question. Need I connect twice 3.3V at ESP8266?
Yes, one of those pins will have to be pulled high.
@@ChrisRiley Thanks!!!!
Oh yes...turn out that my clone mega was having issues with serial...so I did change it with a new one...and all work as it should...great tutorial...
By the way...what about video on the esp3d web page how to install webcam to see in real time the printer?
Great, glad it's working. I will check the cam option out and see what I can do.
So geat, Does the printer work when the computer is turned off? Or always have a PC connected to Wifi
It will be standalone after you get the file uploaded.
Hello, Nice video!!
I'm using the same version that you are using. But when I'm going to the Dashboard, I cant send any commands to my printer.
Do I need to change something in Merlin?
Could you send me the merlin file that you are using?
That has been so long ago I don't know where that config is. If you are using Marlin 1.1.x then you don't have to change anything. If you are using 2.x then you have to add the second serial port in configuration.h
@@ChrisRiley I'm using the 1.1.x merlin version....The serial port is set as "#define SERIAL_PORT 0"
@@ChrisRiley My LCD does not show the IP as in your video... may be something with IP ?
@@VelloneRenan Did you try switching the UART pins? Swapping send and receive?
@@VelloneRenan Ok, then it should just work.
its shocking how much things have changed in 6 years
No kidding!
Hello Chris , thanks for this valuable tutorial. Is there a way to apply the same method to the Ender V2 ? Using which port on my V2 motherboard ?
On the V2, I'm not sure. If it has TFT pins, then you can do this same thing. You just need RX and TX.
right chris iv got the board and am about to program it but here is one 4 ya how do u connect it to a mks gen 1.0 its based on the same board ur using so would the pinouts be the same or am i better of using a pie and octaprint as iv got spare pie hanging about
thank you it worked good, but i have problem connecting to the printer
when i open the web page and send some command to the printer, it didnt move or do a thing
oh and one more thing, when you hade a problem uploading the esp3d file to the ESP2866 you have to check the Erase flash to All flash contents, under Tools menu.
hoi Chris again great video. i installed it on my printer. work very well;
The problem i have is to upload the gcode file.
At 19 minutes on your video you say that i need to change to gco. i have try all ready 2 days to find how to change from gcode to gco but i can't find it,
please can you help me.
Thanks
Keep posted
In windows make sure you turn the file extensions on so you can see to change them. support.winzip.com/hc/en-us/articles/115011457948-How-to-configure-Windows-to-show-file-extensions-and-hidden-files
Hello sir ur tutorial is much easier to understand and I need a wireless solution to my scenario...I use a 3D named 'Aarya P1' which consists of Arduino AtMega 2560 coupled with RAMPS v1.4...the printer uses a different firmware made for it and not 'marlin firmware'...So,can you guide me in adding a wireless feature to my printer using nodemcu or esp8266 module
Does the board have transmit and receive pins available? If it does and it has 5V open it should work the same.
@@ChrisRiley sorry for trouble,but it would be great if you guide me more in depth...
@@vinstondavid Do you have a picture of the board it uses?
@@ChrisRiley it uses a basic ramps 1.4 and Arduino AtMega 2560 board
Then it should work just like stated in this video.
Hello, i have a doubt that can we connect that esp module to android 3d printer application instead of using webui
Are you asking because of the Prusa Mini wifi coming out? You can use the ESP8266 just as a wifi bridge if your App can take it from there.
thanks for sharing this, I wonder if using a nodemcu negate the need for soldering :)
Thanks for watching! I have seen a ton of cool connectors on ebay that would greatly help create this. There are some listed in the comments that others have used.
Hi Chris,
I am able to make the module show up on my laptop and the WebUI pops up once I click on it, but when i try to connect to the module after I have it set up in the WebUI, I cannot. I have the module set to Client Station but it still shows up in my wifi list as a device to connect to, should it? Any ideas on how to fix this?
Thanks.
The first time it should show up as a device to connect to. Then you can connect up and connect it to your wifi.
@@ChrisRiley But when the setup process opens up in chrome and I select Client Station, it seems to stay connected as an Access Point. If you go on to the WebUI and click the tab to change the ESP3D settings, the 'Wifi mode' is set to Client Station, but if I click the blue square with the three white lines at the top (beside the other colored squares), 'Active Mode' is set to Access Point while 'Disabled Mode' is set to Station. I can't seem to figure out what is wrong so any ideas will be helpful, thank you.
@@liamlynch6849 I will run though it tomorrow and let you know what I find.
Sorry to bother you again. Have you made any more progress on how to fix the problem? Thanks
@@liamlynch6849 I still can't get this thing to work right, I am still working on it.
Is it beneficial to add Arduino to a 3s printer ? Or would you use Rasberry Pi?
To add Wifi you mean? I would go Rasberry Pi myself. The wifi modules are cool, but slow and take more work.
Hi mr. Chris how was the comparison of your log to ender 3?
Well at the beginning of the LOG project it was about $225 to build and I would say it was about the same print quality as an ender 3. I have since upgraded the bed,board and hotend. Log now prints almost as good as my Prusa, but the price tag has gone up a lot.
Thanks abunches a for this video it’s awesomes an very helpful an easy believe it or nat thanks abunches for making things a skittle easier for the slow people’s :)
You're welcome! Glad it helped you.
So, that board you're hooking the 8266 up to - does every 3D printer just happen to have that interface? I have a CR10 - without opening the control box/power supply, all I see is an external USB plug. All I really need is the ability to wirelessly upload prints, so this project will work for me
We touched on it in the stream, but all printers probably have access to this connection it's just going to be a little difficult to find the right point to plug it in on some models. Not sure on the CR10, I can take a look.
you will need to find the pinout of the controller. i dont think the cr10 is open source. contact them for the board pinouts.
Do you think this will also work for a Prusa MK3 or might the Octaprint be a better option?
On the MK3 you don't have the pins available to use it. Octoprint is the way to go.
Bit you had the Mk3 in your video or was this a clone ?
It's a clone with a RAMPS board.
Can I connect with HP1020 USB PORTS PRINTER with Wifi modules?
I am not sure what a HP1020 is. If I have exposed RX TX UART pins you can.
@@ChrisRiley HP1020 IS PRINTER FROM HP
@@mehuldholu1 I see, I would have no idea how that would work.
This works on creality boards?
Thanks and you have a nice video.
You're welcome! No, no available UART pins on that board.
@@ChrisRiley Thanks for your fast awser, but the board have a usb, usb = Tx Rx 5v and Gnd . what you thing about connecting a esp32? its a ideia?
@@Substancia3D Sure, if you want to reconfigure USB or even hack the LCD cable that would work.
@@ChrisRiley www.ebay.com/itm/Micro-USB-Type-B-male-to-mini-USB-Type-B-male-Host-OTG-Adapter-Cable-cord-lead/351700417158?hash=item51e2fa7a86:g:xYkAAOSwGYVXBMBJ what you thing about this cable to do the conection?
I'm stuck in "timed out waiting for packet header" for days. I followed carefully all the steps but nothing. It doesn't flash
That when you are trying the first flash?
@@ChrisRiley yes, but I followed another tutorial, my module needed another flash before this firmware. It is a Chinese tool, called ESP8266_Flasher_Tool, now it works nice.
Thanks for your video, you made me put this on my printer. Works nicely!
Good day,
Excellent video!!
This may works for esp32?
Yes, it should.
For anyone still looking to do this, I recommend this: www.amazon.com/gp/product/B07KF119YB/ref=ppx_yo_dt_b_asin_title_o03_s00?ie=UTF8&psc=1
just $8, and no need to mess with an arduino, wiring, or soldering. simple usb connection and switch to flip between programming and usage modes.
I'd also recommend sticking with the 1.0 release of ESP3D. The 2.x releases are quirky and difficult to get running (well, was for me anyway)
There ya go!
Good Video easily got everything working, can control the printer, only thing I am unable to do is upload a file. Renamed the files to the 8.3 format ie cube.gco, checked the SD Card, tried others. But it fails every-time. As a exercise I enjoyed trying it, but I think I will stick to Octoprint and Pi.
Mine was super slow, I guess there is a better version of the ESP I might give that a try sometime, but I am with you, octoprint is way better. Thanks for watching!
@@ChrisRiley I'm a noob here but have you tried ESP32? I don't know the difference between the ESP32 and the module you were using besides the hardware.
EDIT: does your tutorial works with the Anet A8? The stock motherboard.
@@IamG3X I have not tried the ESP32 yet. I don't think the ANET board has any Tx or Rx pins available. You would have to figure out how to hack the LCD cable.
I have problem with upload too. What I understend is: on marlin 1.1.0-RC7 I can upload, but cant see uploaded files from sd card with esp3d; on marlin 1.1.1 I cant upload (just 0 B files created), but can see and print from SD! Also tried 1.1.9, 2.0, diferent boards and sd interfaces, also tryed upload via usb from pronterface - always 0 byte files. Hope it can help or if you find solution - tell me :)
found solution github.com/MarlinFirmware/Marlin/issues/11871
My printer is using Tiny Machines firmware, is this approach applicable?
Honestly, I have no clue how Tiny Machines would work with this,
Nice ! Good job
Thank you!
Can we connect WiFi 3d printing with raspberry pi (octoprint) without using USB port..
You could use GPIO pins on the pi if you new the right pins on your mainboard, but that's about the only thing I know. Is there a reason you can't use USB?
You are awesome man!
Thank you!!!
so if the RAMPs had 3.3v pins, could the ESP cip have been plugged directly into Aux1?
It would kind of work. The current isn't high enough. It would probably work when you were configuring it, then fail when trying to connect to the wifi.
How you looked at the new Wemos Arduino with ESP8266 built in?
Not yet, but I will be looking at it soon I hope.
@@ChrisRiley I have managed to program them and connect via wifi but I cannot get them to talk to each other will keep you advised
@@ChrisRiley finally got them talking but uploading a gcode file seems very slow, maybe I still have a problem
@@kevintech5869 it is really slow i am afraid.
@@ChrisRiley I'm hoping that the sd with built in wifi will get around the sd card speed issue
Is possible to upload the firmware using this connection?
Not that I know of.
Is this a Marlin only solution or can Repetier be used?
I am not sure, but you have great timing, I just installed Repetier, if I have some time I will hook it up and see if it works.
I'm wondering, would this work with the BTT SKR Mini E3? It doesn't have an aux header like the RAMPS board you're using, but it does have a TFT labeled header, which has RST, RX, TX, GDN and +5V. Seems like it should work, right?
Here's a link to a circuit board diagram, if that helps: ae01.alicdn.com/kf/H90c51a00a0b24bc5979beee3ca938c5eo.jpg
Hey Tim, it seems like you should be able to make that work. I don't know a lot about that board yet, I do have one and I should start my testing soon.
@@ChrisRiley Awesome, thanks for the reply!
@@ChrisRiley Hi Chris, back again with a question: Could it be that I have to activate the TFT header on that board? The ESP is working as it should: I can see that the proper gcode is sent (while I have the ESP plugged into my PC), and the web GUI works while it's plugged into the printer (so 5V and GND do work), but the printer doesn't respond to any of the commands. It also doesn't show the IP address on boot, like you showed. I've already tried swapping the TX and RX lines, but no luck there either. Could it be that the 3.3v signal level is too low for the SKR Mini E3 (not sure what if your RAMPS board was made for accepting 3.3v logic?)? Is there something firmware-related that has to be changed for this to work?
As always, any help would be greatly appreciated.
@@timderks5960 Try setting the serial one setting to -1 and the serial 2 setting to 0. See if that gets it going.
Hello Chris, I have a question. I installed this system, but I want to print. How can I run the Drawing file to print? my english is bad, sorry
Hello, no worries, on the English we can work on this together. I am really not sure what you mean? Please let me know how I can help.
can I use a Mega2560 + WiFi R3 ATmega2560+ESP8266 32Mb board?
Yes, it should work with any ESP32 or 8266.
With a 5v power supply it works, but when I connect it to a RAMPS board for power it does not, and the LCD dims.... verified it's connected right... I have a spare VR around here... if I find it I'll check that.
Mega clone have a bad habit of not having very good 5v regulators. Try plugging in the wifi to ramps then cabling the board you USB to get an additional 5v source. See if that works.
perfect explanation
Thank you for watching!
@@ChrisRiley btw it is outdated if you have 1M ESP-01 you need to decrease the code.
Hi, i tried to make this project but i can't upload the code on Nodemcu board. The IDE shows this error: In file included from C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:29:0:
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.h:27:7: error: redefinition of 'class WiFiUDP'
class WiFiUDP : public UDP {
^
In file included from C:\Program Files (x86)\Arduino2\libraries\WiFi\src\utility/wifi_drv.h:26:0,
from C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:26:
C:\Users\Ivan Margiotta\AppData\Roaming\Arduino15\packages\esp8266\hardware\esp8266\2.4.2\libraries\ESP8266WiFi\src/WiFiUdp.h:32:7: error: previous definition of 'class WiFiUDP'
class WiFiUDP : public UDP, public SList {
^
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In constructor 'WiFiUDP::WiFiUDP()':
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:35:22: error: class 'WiFiUDP' does not have any field named '_sock'
WiFiUDP::WiFiUDP() : _sock(NO_SOCKET_AVAIL) {}
^
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual uint8_t WiFiUDP::begin(uint16_t)':
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:45:9: error: '_sock' was not declared in this scope
_sock = sock;
^
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:46:9: error: '_port' was not declared in this scope
_port = port;
^
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual int WiFiUDP::available()':
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:56:7: error: '_sock' was not declared in this scope
if (_sock != NO_SOCKET_AVAIL)
^
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual void WiFiUDP::stop()':
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:66:8: error: '_sock' was not declared in this scope
if (_sock == NO_SOCKET_AVAIL)
^
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:69:26: error: '_sock' was not declared in this scope
ServerDrv::stopClient(_sock);
^
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual int WiFiUDP::beginPacket(IPAddress, uint16_t)':
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:88:7: error: '_sock' was not declared in this scope
if (_sock == NO_SOCKET_AVAIL)
^
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:90:7: error: '_sock' was not declared in this scope
if (_sock != NO_SOCKET_AVAIL)
^
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual int WiFiUDP::endPacket()':
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:101:32: error: '_sock' was not declared in this scope
return ServerDrv::sendUdpData(_sock);
^
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual size_t WiFiUDP::write(const uint8_t*, size_t)':
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:111:27: error: '_sock' was not declared in this scope
ServerDrv::insertDataBuf(_sock, buffer, size);
^
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual int WiFiUDP::read()':
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:125:23: error: '_sock' was not declared in this scope
ServerDrv::getData(_sock, &b);
^
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual int WiFiUDP::read(unsigned char*, size_t)':
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:137:31: error: '_sock' was not declared in this scope
if (!ServerDrv::getDataBuf(_sock, buffer, &size))
^
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual int WiFiUDP::peek()':
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:152:22: error: '_sock' was not declared in this scope
ServerDrv::getData(_sock, &b, 1);
^
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual IPAddress WiFiUDP::remoteIP()':
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:167:25: error: '_sock' was not declared in this scope
WiFiDrv::getRemoteData(_sock, _remoteIp, _remotePort);
^
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp: In member function 'virtual uint16_t WiFiUDP::remotePort()':
C:\Program Files (x86)\Arduino2\libraries\WiFi\src\WiFiUdp.cpp:177:25: error: '_sock' was not declared in this scope
WiFiDrv::getRemoteData(_sock, _remoteIp, _remotePort);
^
Errore durante la compilazione can you please help me?
Looks like you are missing the wifi man library. Try to use the same version as the one in the video, it's very picky about which version.
@@ChrisRiley thank you, it worked. Now my ender 3 works with Wi-Fi :D
@@ivan_23i NICE!!!!
Just a question, other than being mostly DIY, how does this differ from the Raspberry Pi - OctoPrint method? To me, they seem to be the same concept.
They are pretty much the same concept, but Octoprint is going to be much faster and have a lot more plugins/features for it. The ESP option is a lot cheaper than the Pi, but not as fancy.
Hi Chris, tried to follow your tutorial, but I have a rearm ramps setup and right from the get-go there is no "preferences" option in platform IO. So how do you do it in Atom/Marlin 2.0?
You use the LPC1786 as your env in the ini file.
@@ChrisRiley Hi Chris, I made an esp3d and Tools folder under lpc1768 but:
The AUX2 pins don't work on re-arm so connected to AUX1 (TX =D1 & RX =D0)
But: now platformio wont build and I cant figure a way to assign pins or flash the wifi module. Is there any chance you can write a step-by-step or make a tutorial video please?
@@ThePanther133 Hey Wendy! I haven't really tested this much with 32bit boards. I will see what I can come up with.
@@ChrisRiley Hi Chris, did you get a chance to look at this?
@@ThePanther133 Are you using ATOM or VSCODE? I would try VSCODE if you haven't already.