2020-09-03 12:47 PM
Still trying to get the ST_Marlin firmware to compile under STM32CubeIDE and still unsuccessful. It just won't compile as copied OR migrated from SW4STM32 to the Cube. What I need is a step-by-step directory and file placement and configuration to make it work, but any suggestions other than toss it in the circular file and get a BigTreeTech (STM32 powered, by the way) really open source board.
Thanks,
tjm
2021-05-07 07:59 AM
Good suggestion and just in time, too. I'm installing the ST 3D board in a highly modified 3D Systems Cubex Trio. I already have the Marlin2, just need to upgrade it to currency and I'll give PlatformIO a try. Been wanting to try that IDE for a while and give this 3D printing Frankenstein a go.
TJM
2021-05-07 10:55 AM
Have fun.
I too have been fighting this board for a few years. Very little help from STM.
Don't you just love the wifi - documentation is not available as it is proprietary - on a demo board?
Too bad the chipset is obsolete anyway - and horribly slow. I would think of it only if a light protocol could be used - pure streams rather than HTTP.
Marlin 1 is one of the worst written C / C++ programs I have ever had the displeasure of trying to work on. Remniscent of Unix install scripts of the early 1980s with interminably long #if #else blocks, totally unstructured. It's a wonder it worked.
Marlin 2 is not much better, although substantially cleaned up - needs a rework from a team who understand C++ and the way OO can be used to simplify code that works on a multitude of environments.
Hope you get it working.
What I did
[platformio]
src_dir = Marlin
boards_dir = buildroot/share/PlatformIO/boards
# default_envs = megaatmega2560
default_envs = STM32F401VE_STEVAL
It's a while since I ran it last and my Linux disk died so I only have the Windows version available. I need to get back into it in the next few days, so can help you early next week if needs be.
have fun
2021-05-09 08:11 AM
Thanks for the hints. Not sure when I'll actually get back to the project but it's in the process and I'll assume for now that it'll be faster than the 2560 board in there now. I have the PlatformIO IDE loaded and ready and just need to get a bit familiar with it. Also have the latest daily Arduino Pro2 loaded but haven't tried that either. Luckily, I'm in hobbyist mode and don't need to really produce anything so if it compiles, loads and runs, I'm happy.
TJM
2021-05-09 09:21 AM
Hi TJM,
No problem, likewise in hobbyist mode - though want the boards to generate income..
If you don't come right, or just want a bit quicker I can upload a binary for you.
I'll just need to check how the config file is handled ..... may need to compile your config before uploading.
Almost definitely quicker than 2560, and the steppers run MUCH MUCH better with decent drivers.
Chris
2021-05-09 01:07 PM
Thanks, I'll play with this a while and see what happens. About the drivers, the Y-axis has two NEMA 17 and the specs for the L6474 is borderline for running both in parallel. What's your opinion on stressing these 6474 chips? I can add heat sinks and probably will anyway. The 17's are wired in series right now it actually does work fine with 8825s
Tony
2021-05-10 01:53 AM
Hi Tony,
Most of the time I run my Nema 17s at much lower current - about 0.5 Amp or so , specially in a 3DP.
In 3DP you are acceleration and speed limited due to the extrusion requirements and mechanical stability.
At low speeds acceleration to full speed is quite quick and does not add substantially to print time (check it out by setting your slicer and comparing print times for different setups).
I see many people printing at 30mm/sec for quality reasons.
I want to limit my torque/current and increase micro stepping to reduce noise hence vibration.
For CNC, where I am moving substantial mass around, I prefer Nema23 motors since the torque is much higher.
My preference is for running a separate controller per motor for other reasons
The 6474 shouldn't stress as it is properly current and temperature limited internally.
I have no way of proving/disproving yet (I am working on it), but I believe that a lot of failed prints resulting from skipped steps, head crashing etc are caused by stepper drivers overheating and simply switching off for a few steps. The 8825 offers an error signal which is not used by RAMPS and probably most other 3DP controllers. I'm not even sure of how Marlin handles it (or not) on either the 6474 or other high end drivers. The correct action would be to immediately recalibrate, and wait for the temperature to normalise. This requires much more intelligent measurement and control than I have seeen in open source solutions.
I have found the 6474 chips MUCH MUCH better than either of the polulu chips. I have a few Nema08s that are only capable of driving a light indicator arm on the polulu (or is that poluka?) breakout, but are quite capable of providing reasonable torque using the STM--3DP. I picked them up cheaply as I think people found them useless with these drivers.
Mounting heatsinks could be problematic since glue is a terreible heat conductor, and may provide worse performance than forced air top and bottom - just a simple fan. I think you can read the chip temperatures and compare. Please let me know.
Chris
2021-05-10 07:55 AM
I've been trying to keep all three extruders/hotends intact and operating for future use even though I only use one. I guess I'll cut back by one so I can have a driver for each motor. Besides, all three extruders, hot ends and the rest of the hardware making up the carriage is substantial and is being moved by the two motors, so cutting back to only two stepper/extruder/hot end combos makes more sense.
Tony