-
Notifications
You must be signed in to change notification settings - Fork 88
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Manually Building SuperLongBoard STM32F412 #193
Comments
Here is the platformio.ini I use to build the latest version with VSCode/PlatformIO: |
It is found here.
Do you have the latest grblHAL version? |
Do a recursive pull to get the latest submodules instead, recently a new one was added for the two you disabled. |
I already did a recursive pull but I'm still getting errors with those two flags turned ON. For now, I've kept them OFF. I'm also just adding the custom Sienci plugins they included, such as I loaded the firmware for the SLB. The issue is that the motors are not getting power after I performed a firmware reset. Restoring the SienciHal firmware brings the stepper motors back online. Before resetting, the motors had a slightly high-pitched sound when moving. I'm not sure if this is caused by the settings for the TMC2660. Setting number don't much, they are off by 1 whey I compare with SienciHal. |
Boot entry is part of the base driver so not needed, basic RGB support is also, with a core defined API. I have not looked into the probing plugin yet. There should be a plugins folder with the eventout and rgb plugins: If not download and add it manually - making it generally available is still work in progress.
What is your $4 setting? And M122 output?
Some SienciHal setting numbers were added without requesting them from me and they were already assigned for other purposes. So those had to change. Reloading SienciHal settings into grblHAL is thus a bad idea. |
Pulling the There is another flag
I agree, that's why I'm trying to switch. :D |
Here's my test result.
What works so far:
I'm using gSender since I don't have any other grblHal sender to try on macos. Attaching diagnostic file from gSender which has all the firmware paramenters. |
This has now been fixed. The rest I am not so sure about, can you connect with a terminal and try some commands from that? |
Great! I will test it tomorrow. Will provide feedback. IMHO, Sienci should send you one for the great work you been doing. 👍 |
I have one at home, but I am away for 3 more weeks... |
Try the latest. I initially still got problem with the homing so decided to do RST and start from scratch the it works. So far everything is working except for the tool set routine with my RapidChangeATC. When I touches the tool setter, it stop and freeze the board. Macro used for tool change for reference: https://github.com/greilick-industries/rcatc-scripts-grblhal/blob/main/macros/TC.macro This one is working with sienciHal but has some other minor issue. |
If I run the the tool setter macro (g65p231) directly on a STM32F7xx dev board it completes correctly - so this might be an issue with the SLB. If you try to probe the toolsetter manually does it still crash? |
FYI I have commited some fixes to expression handling that may help if it is a hang, not a crash. |
Thanks @terjeio . Sorry, I haven’t had a chance to test this build—I've been busy working on my AutoDustBoot. I heard that Chris from Sienci is working with you to integrate SienciHAL back into the grblHAL stack. Do you have any idea when this might happen or when the web configurator will be available for the SLB? I keep encountering random parsing errors with SienciHAL. If this isn’t happening anytime soon, I might start looking into compiling my own firmware again. :D |
Odd, it is working for me. Perhaps I should make a binary available for you to try? The SLB will be made available in the Web Builder when Chris gives the green light for adding it, hopefully soon. |
So this STM32F4xx repository works out of the box for you without any changes (except maybe the platform.io configuration and the Python script)? Yeah, send me your binary so I can try it. My current SLB also has an EEPROM issue; it won’t even work with the stock SienciHAL firmware unless I compile their version with EEPROM disabled and just use the SD card. I’ll test your binary on the replacement board once it arrives. Meanwhile, could you also send me your latest platformio.ini that works? I’d like to compare it with mine and see what’s different. Many thanks! |
Yes, except the Python script has not been changed. I develop with STM32CubeIDE so the build options are not the same as with PlatformIO, however the provided build is made with PlatformIO and with EEPROM disabled. Also be aware that I only bench test with one motor connected so is to be considered as alpha quality for now. Note that some setting numbers are different, either erase the flash before programming or reset settings to default with The binary/.ini can be downloaded from here, I'll keep the link active for a short while. |
Thanks I'll try and report back. 👍 |
I tested both the binary and the latest compiled code using the provided platform.ini file with consistent result: Here are the results of my testing:
|
I can run gcode programs, can you post a file that does not for you?
I am not able to test this since I do not have a machine connected. And since the step/dir signals are not available I cannot check with my machine simulator.
In ioSender this is per design, a number of responses are only acted upon and not reported to the console. If you want to interact directly with the controller use a terminal program such as puTTY. |
I never got a chance to run any g-code program since I can't even home the machine on startup.
This works on their sienciHal firmware. For gSender, upon connection, it issues $$ to retrieve all the settings, reads the response, populates the firmware settings in the UI, and enables all the UI buttons. Without this, gSender will continue to show as disconnected. On MDI, I also issue M6T{x} for tool change, and I usually get response |
Try this, at least it errors out for me.
ioSender does this too, but does not report the $$ output to the console unless Verbose is checked.. |
The fix has now been commited. |
Here's the new result of the new build.
|
My guess is that gSender is confused by the If you trigger the limit switches manually does the Signals LEDs in ioSender change state? I have a pending commit where they do. |
I have now confirmed that this is the reason... |
New patched binary uploaded. It has Siencis customized version of the |
I might need to reflash the firmware and retry again with ioSender. I put back the sienceHal as need to run some project right now. Although the sienceHal is usesable, it's annoying getting random invalid g-code error.
Is this something fixable? So this is the reason of MDI interaction eractic on gSender? Or this something that need fixing on the gSender side? |
Is it possible to get the hex version so I don't need to reinstall the STM programmer and I can do it on the gSender? gSender only accept .hex. Or better yet, just push a separate branch that I can pull and compile myself. And from here we can just continue working on this branch, whatever fix we do or testing. |
Yes.
Yes it seems so, at least gSender behaves better when I add the customization.
Yes, IMO it is better if gSender works with "standard" grblHAL controllers. There is even a comment in the gSender code that they should switch to the machine readable output from |
Now available in the download.
I have a settings revision nearly ready to commit so creating a branch that includes all the changed drivers and submodules will be far too much work. However, the customization is just these lines, so you may add them manually if you wish. |
Awesome! I will test it and report back. |
All the issue mentioned before are fix but here are the new issues. Shows stopper issue:
Annoyances issues:
|
Probe hang is on me, due to the many inputs in the SLB. Fixed in this hex. E-stop works for me, both in ioSender and gSender (1.4.10). gSender is a bit slow on responding to unlocking sometimes. The random error is likely a gSender bug? Related to jog distances getting reset to NaN? No such issue with ioSender. |
The probe is working now, so my tool setter too, since they are just series together. I need to reboot first before it starts working. The e-stop unlocking works, but it doesn't return the stepper motor's power back and needs a power cycle. Just scroll on the 4:12 timeline for this issue: https://youtu.be/fsx9jLBmbsY?si=qr9HB4-m_kwMJsn2&t=253 |
Oops, I missed that one. Power is cut to the motors on e-stop so the stepper drivers loose their configuration. |
Thanks. Will test it tomorrow. Can I get code changes for it? I'm keeping my fork updated with these fixes. |
Code changes just committed. |
Good new. Everything works now. With the new version, it fixes my problem too when doing just unloading tool and also tool measurement. Before these give me bunch of errors. There is a minor issue I keep getting, this might be on the gSender side. If I issue a invalid command let say M61T1 (it supposed to be M61Q1) for telling the firmware what current tool is loaded, it give's me invalid g-code error which should be right but any succedding valid g-code command will still throw invalid g-code until I do some jogging. |
This is a safety feature in grblHAL, when an error is returned it will be returned for all subsequent g-code commands until a blank line or a $ system command is sent. Legacy Grbl will just continue executing commands. |
Ahh make sense. Will check on the gSender side. |
Since the SuperLongBoard is not yet available in Web Builder, I'm trying to build firmware for the LongBoard32, but I can't seem to get it working, and I keep encountering errors.
So far, I have created an entry in the platformio.ini file:
I also added an entry in driver.json:
I copied the genericSTM32F412VG.json file to the root folder. This file can be found here: (https://github.com/Sienci-Labs/sienciHAL/blob/SLB_Bringup_Dev/genericSTM32F412VG.json).
Then, I executed the following command:
I started with fewer plugins to have a successful build, but I keep getting errors after fixing one issue. Before going down the rabbit hole of trying to fix all the errors, I figured I'd ask if anyone has already had a successful build.
The reason I am building this is that the core of the Sienci grblHAL firmware is not up to date.
The text was updated successfully, but these errors were encountered: