Custom Bart Dring FluidNC controller

It depends a lot on the electronics in question, how they’re protected and, as you say, what the makeup of the dust actually is. The main failure modes are conductive and thermal. For dry wood dust, that’s not really much in the way of conductivity but can definitely cause issues if you get a decent layer on there providing some insulation. The issue comes if you’re in a humid environment and that wood dust starts to absorb moisture and become more conductive. Obviously any form of conductive particulate like from cutting metals or even stuff like carbon fiber can be a huge issue in even small quantities.

Most of the better brands of power tools use conformal coatings to provide a layer of protection, so I’m not sure I’d be drawing too many conclusions from that.

Modern electronics are a lot less robust in some ways than older electronics. Smaller and smaller passive devices mean smaller gaps between exposed conductors, meaning smaller amounts of dust can cause enough leakage current to change things. The trend towards lower power designs means lower voltages and higher impedances, both of which make it easier for small changes to cause issues as well.

And, of course, it comes down to how critical the failure mode is. If it were a BMS for a battery system in a power tool, I’d want a ton of thermal margin and a reliable conformal coat along with robust error detection because some failure modes result in a significant hazard. If it was simply the power control for a drill, maybe less so.

So yeah, personally I wouldn’t be using an intake fan pointing directly at any boards of mine in a production setting without at least some form of screening/filtration. I’m also not a huge fan of using compressed air of vacuuming PCBs as you can get some pretty wicked static build-up in those scenarios.

Personally, I’d love to mount my controller in a somewhat sealed metal enclosure and use the enclosure itself as a heat-sink, but unfortunately in most cases the heat-sinking seems to be a secondary consideration. For the moment, I just try to keep mine for my MPCNC covered. It has an electrical enclosure that it’s going to in eventually but at the moment it’s just loose and sitting under a cardboard box…

2 Likes

That’s the original direction I was taking with my current build - although you have to squint and pretend the hardboard struts are metal and I’ll probably use Composite in the end, but I think I have a simple fold that will easily work. We might find out next year some time…

1 Like

You can make a box that has the heat sinks sticking out. For the Jackpot you would also need to get a heatsink on the ESP as well though.

2 Likes

So I was thinking, I have a bunch of boards showing up soon. Is it possible to edit the install BAT files to upload all my config files? https://github.com/bdring/FluidNC/blob/main/install_scripts/win64/install-fs.bat

Before I start down this rabbit hole maybe one of you all can at least give me a yes or no…possibly some hints on how to do it if possible? https://github.com/bdring/FluidNC/tree/main/install_scripts/win64

That’s one thing I wanted to try when designing my case for the mks tinybee, but I just kept it simple

Just the heat sinks sticking out of the case, and add some kind of “clip-on” duct with a blower on the end

For the drivers blower duct, I really like this kind of design, used it on my LR2 and it really moves a lot of air, a lot more than a regular fan
image

Then you can just remove the drivers’s duct cover for sevrice every so often, while keeping the rest of the electronic safe inside the “dust-proof” case
You could add a small extracting fan for the electronics-case so that the ESP32 does not overheat, the fan bowing outside should keep the dust from getting in

4 Likes

I printed a cover with a piece of linen in between, works really well, keeps the dust out.

2 Likes

It should be possible.

I haven’t done .bat in a really long time. I wonder if VSL would be easier, but I am really starting a turf war with that.

I would want these pieces:

  1. Detect a new COM connection. I doubt the script would know if it was an esp. This could be a pause and wait for the user to hit enter or something
  2. Use esptool to get the config (erase_flash takes a little while, but it is a good step to make sure the board is connected and properly detected and in the bootloader).
  3. Use esptool to flash and verify the software. I am sure you can load everything, but I’m not sure what the exact arguments would be. The esptool can put different binary data at different locations. I have no idea how the spiffs fs works. But I swear I have flashed that before with esptool.
  4. Give the user a bright green “go for launch” or a bright red “Something is wrong” message before they unplug the esp.

It would be 3-5x harder to do multiple esps at once (my initial guess at the complexity). It should also be possible to do this on a headless pi server (so you could have multiple copies flashing at once). But those are not part of the minimum.

In general, this should be an easy task. It should be able to automate some of the tricky parts so you can’t easily make a mistake.

4 Likes

I think if I flash from p.io it is already kind of built-in you just load it in a folder and it dumps the whole folder on, but Mitch didn’t like the way it does not put a version number in it so the firmware is hard to track or something.

1 Like

The only way a batch file will work is if you can open a command prompt and do it that way. From what i saw the files needed to be added after the fw loaded. Not that it would be much help but winscp possibly could do it. Not sure though.

Can bart or jaime maybe make you a custom file that includes it??

3 Likes

Would I be able to use one of these 5v relays I have to control power to the makita router though the jackpot using a free input connector like gpio39?

It’s a 5V/70R coil which means it needs around 70mA of drive.

The buffer on the Jackpot will only do 8mA realistically, 20mA at absolute maximums (which will be well below 5V out, most likely), so there’s no way it will drive that without a 2nd buffer.

That’s not too hard to do, though. It’s simply an NPN transistor or logic level FET.

Edit: If you mean an ESP32 pin directly then no to that either, unfortunately. The ESP32 won’t have enough drive current to power the relay either. Also the max output voltage of the ESP32 is 3.3V while the relay has a pull-in voltage of 3.8V, so it won’t reliably switch, even if the ESP32 could supply enough current. Again, doable with a high current buffer made out of a logic level FET, etc.

1 Like

Ah shame. Thought it was too easy. :confused:

What about the io expansion slot, can it be used just with the 3 pins or is there the same current issue? - Bart won’t ship to my location even if he wasn’t on a break

It’s not too hard to buffer it to drive one, but you might have more luck with a Solid State Relay. Something roughly like this:

https://www.amazon.com/HiLetgo-SSR-40DA-Single-Semi-Conductor-24-380V/dp/B01N0L5WSU/

I’d probably still drive it from the buffered 5V output of the Jackpot.

1 Like

Oh that’s fine, that’ll do perfectly. Thankyou.

Wait, that relay has 3 inputs, not 2, so wouldn’t it have a transistor or optocoupler or something taking the input from the signal and driving the coil? If you tap into the 5V rail for V+ (and assuming that has enough juice), then the signal line shouldn’t have too low impedance, right? Regulated 5V is available from the expansion header.

2 Likes

If it is the expansion Board from Bart it will work, but I do think the SSR is less expensive and a better option. I use an SSR from my spindle and will probably do so for my vacuum as well as soon as I rebuild my table.

Oh and the boards got held up in customs, 4 hours after the scheduled delivery I got an email asking for tax information. DHL is usually better than that and have delivery schedule down to the hour. No new delivery window yet.

2 Likes

That was my first thought too. Those boards usually come with the transistor to drive them from the Vcc you give.

1 Like

Ah yes, so it does. I can’t quite tell how it’s wired, but the base resistor is 150 ohms, so could still be reasonably high base current. It looks like it might have the LED in series with it, though, which is pretty ugly be would also serve to limit the current somewhat. I’m guessing in the order of 15-20mA. Still more than I’d be comfortable supplying from the 5V buffered output on the Jackpot and a 3.3V input may not quite have enough current.

By comparison, Bart’s version has the LED driver separately from a 300R resistor and then has a 1K resistor for the base drive. So ~4mA of base current and 10mA of LED current, so still probably outside the specs of those 5V buffers.

Ultimately they’re pretty cheap and it’s easy enough to tell if it’s working or not.

I’d still personally go the SSR route. Cheap relays aren’t my favourite components, really.

1 Like

His modules get directly connected to a esp32 pin from the module port. Does that make it a better option? I have some SSR’s here, they have an indication LED, should I check the current draw of those?
14mA sounds like small target, I thought we were safe to 25mA continuous?