With the precision I was thinking especially about delta printers. And yes, of course a Z probe would also need some precision. The expander very surprisingly gave better results with the PWM than I expected, but that is constant SPI usage. I just did an experiment, see what it can do. Some steps were skipped randomly. Ah, don't be surprised, I'm just still stuck with the old-fashioned way of tby Hubberthus - Developers
Quoteofftherails2010 Quick Question for the MCP23S17 SPI Expander; in the datasheet it shows that its speed is 10Mhz MAXIMUM, would this become a problem for a 3D Printer being a bottleneck ?? In my experimental ESP8266 + MCP23S17 + MCP3008 + Marlin + Duet Web Control "Frankenstein project" I tried it out and yes, it is a bottleneck. Well of course with the ESP32 it would be much more efficienby Hubberthus - Developers
@CthulhuLabs - If you can port the RepRapFirmware to ESP32 then I won't be in your way It's a really nice firmware, I like browsing through the code (and drooling over images of DuetWifi) Just saying that it won't be an easy run. Prepare for thinking about alternatives for example in "Platform.cpp" the ARM specific registers, assembly codes, interrupts, etc. I'm looking into the Arduino core fby Hubberthus - Developers
I've been into ESP32 for a bit, after I did an ESP8266 Marlin port, and smashed into the tricky problem of limited number of pins. I looked at it from firmware point-of-view. So, diving into the ESP32, first thing: Seen many complains about the Arduino core for it. It is far from complete. If you'd like to use some Arduino-based code like Marlin, then it will be a huge headache. Even its own SDKby Hubberthus - Developers
@tgit23: Yup, that way you get a one armed SCARA I didn't mean the cut that way though. Turn the angle of the cut by 90 degrees, leaving the far side of the printer out, no servos. Put what's left on a single rail with two carriages. @boylucky: A picture would really help with the understanding of the concept. Would be interesting to see the pros and cons to this. I've thought of something liby Hubberthus - Developers
I think I get the idea, it is similar to a SCARA like this one: SCARA 3D Printer But not with static arms and the whole diamond shape they form, only half of it. Move them at the same direction and there's the X axis, move them in the opposite direction and there's the Y axis. Could work. You'll need to make the arm sturdy like the SCARA, because if you move the carriages next to each other toby Hubberthus - Developers
@Giark: ESP32 is a very promising chip, I've been playing around with it now for a couple of days. I intend to turn it into a printer controller, but it needs a bit more time. For starters, the SPI driver is not yet in the official SDK. One of the devs made a NES emulator for it, you can find a video on youtube about it. That uses an SPI LCD, and looking at the code.. well he wrote there all theby Hubberthus - Developers
Yes, that's right. I'm crying at other professionals' codeworking here at the company where I work. Even if the code is a mess, the most important part is the readability: By providing documentation, comments, and maybe a bit of readabe code here and there. And as I understood you'll be putting up some documentation on the blog. Congratulations man! You've done a very nice job! I was pretty sureby Hubberthus - Developers
@Dust: Yup, this is why I didn't even think of buying one. The idea was not bad, just expensive. This diamond version can be a powerful rival.by Hubberthus - Developers
@deckingman: I've realized I'm way off, after a while. I'm a kind of guy who thinks after, not before. First, there are only 2 fans there, don't know how I've seen them as 3... (No, I did not drink) And they are obviously pointing down. I kind of feel stupid. Second, It would be very bad to cool the diamond nozzle. My guess of retracting + fast-cooling the nozzle to prevent oozing could be for mby Hubberthus - Developers
Wow! I'm completely blown away! I've never done multicolor printing, and those "bruteforce" wiping towers look bad, so never even tried doing it. But this, so simple yet does the trick. Looked around a bit and saw three nice powerful hints around the diamond. My guess: Retract plus standby temperature?by Hubberthus - Developers
Gcode: Pretty good answer. Have the compressed gcode only for the flash-cache, but still work with the original gcode with the outside world. Nice. Web control: It wasn't that hard, because the ESP8266-specific part was already in ESPrinter, and the webpage was there as well, but with a sloppy javascript, which gave me an error when trying to create a slider... But the original DuetWebControl iby Hubberthus - Developers
@lhartmann: Yeah, I saw sometime ago the Orange Pi, and was considering about buying one to try out, because it was so cheap. Maybe someday And yes, I know ESP32 has been out for a while, but as I wrote earlier, my colleague who pre-ordered it long time ago did not receive it. And unfortunately I've ordered my ESP32 module from SparkFun back in October, and because of a stupid law they couldn'tby Hubberthus - Developers
@lhartmann - Weeell... It surely can work, I won't say it can't. But I'll rather stick to ESP32 when it comes to creating a firmware for the "family". The main reason is that looking at specs it is clear that ESP8266 was made to be a slave module. On the other hand, ESP32 was made to act as a master itself. I won't throw away ESP8266, just won't be my focus. (When I will finally, hopefully receivby Hubberthus - Developers
@dc42 - Yes, that's it! RepRapFirmware (In my last post I meant this, not Repetier) and is under development in Repetier and Smoothie. Officially, there is only one listed here: http://reprap.org/wiki/G-code#M408:_Report_JSON-style_response JSON is a very good format, and yet it is barely supported. And there is the thing, that if you look at this page, you can see an example of this, with fieldby Hubberthus - Developers
@lhartmann - Yes, that's true, I2S doesn't need timers for PWM generation. And even without the optimizations you listed it is way more fast because of the HW support for it. Also, you don't have the additional Arduino compatibility layer which slows things down for me. So that's pretty neat what you achieved! That native approach could lead to the best firmware for the ESP. Any virtualization laby Hubberthus - Developers
@rklauco - Hmm, I shouldn't think when I'm tired. I still haven't attached any motors to it, because I wanted to show off with the WiFi controls (ESPrinter code merging), and guess what... It crashed with WDT when I tried to open a file from SPIFFS (index.html). It was a rough ride, and the thing is, when I commented out the usage of timer0, it appeared! It is actually pretty obvious, since tiby Hubberthus - Developers
That sure would be a show-off! Hmm, I did not think in servos, only steppers. Haven't ever used any servo motors actually. From what you wrote maybe they would are a better choice to control, as 1 kHz or 50 Hz is way less than what steppers need. If I understood correctly from the Marlin's code, 10 kHz per motor is the allowed maximum. (More advanced boards go further, Smoothie V2-pro will eveby Hubberthus - Developers
Thanks! But I don't even know how it really performs. Being a programmer, I don't have any oscilloscope or that sort of stuff. LEDs are my best feedback. (And the serial output) The Marlin config is untouched for me except the board set to BOARD_ESPEXTRA, and I changed the baud rate to 115200. Nothing else yet. "pgmspace.h" needs to be hacked, because of the PGMSPACE and PSTR macros give compilby Hubberthus - Developers
Got a bit further with this, now also GPIO interrupts can be used on expanded pins. PWM is also implemented and accessible via analogWrite() on a digital pin, but I rather not use it. Takes away a timer, and we have only 2 of them. Also got Marlin to build on top of this "core", and uploaded it to the board. Looks good, blinks LEDs! https://www.youtube.com/watch?v=Lu5QEa4yYyQby Hubberthus - Developers
Oops, got it wrong, actually that was 14 and 15 milliseconds But anyway, I got it faster and gave me 0 and 1 milliseconds. So I did a for loop with 1024 digitalWrite()-s in it, and got ~8 milliseconds, which means a nice shy 128 kbps. If I use the whole port with 8 bits, then a parallel 1024 kbps is the maximum. And as for frequency, it is around 128 kHz max, when you do nothing else, but a supby Hubberthus - Developers
God no, slicing on ESP would be kinda impossible Sorry, my bad. However, maybe if the ESP's control page could use a web-based online slicer as lhartmann suggested, or if somehow it could communicate with a slicer installed on client, then you have a kind-of all-in-one package. Accessible through WiFi (and Bluetooth on ESP32), and since it knows its own preferences, you don't have to setup anyby Hubberthus - Developers
I'm also using SD printing, because I don't actually have a printer, it is at work in a small room. I don't want to go there with my laptop and sit while it is printing. That's why a WiFi-capable CPU would be just perfect. Send the stuff via WiFi to the SD, control/slice through a webpage, and see how it is going with a cam. I know, we could buy a Raspberry Pi and use OctoPrint like normal peoplby Hubberthus - Developers
My colleague pre-ordered the ESP32 module, and 2 months ago it was shipped. At least they said so. Now after complaining that it didn't arrive, he got back his money. This ordering thing is not going smoothly for this module... But thanks for the info! I'll subscribe for notifications from SparkFun.by Hubberthus - Developers
It sure is fun! ESP32 will also make things a bit complex with its two cores, and God knows what else. There is always something. I think we will need to play with it for a while. Until then, the ESP8266 is good warm-up project. By the way, I was thinking about the RepetierHost thing I wrote, and I realized how dumb I am. It won't need a host. For example, mixing in the ESPrinter firmware's webby Hubberthus - Developers
I also have thought about this concept, and played around a bit. (Before searching the net if anybody else have tried it, of course.) I approached it from another direction at first: Got the Marlin firmware to run on a NodeMCU. I had to change the pin access, and use the two ESP timer interrupts for thermistor reading and stepper movement. The thermistor reading was stubbed out, sending a constanby Hubberthus - Developers