Replies: 3 comments 2 replies
-
|
SG is very difficult to dial in, so it's understandable you're having this issue. Here's the process that I've found that works best when tuning it, this is outlined in my PDF "Mastering Trinamic Stepper Motor Drivers" that you get for free from valarsystems.com One thing to note is that this is very easy to do in Arduino, and I haven't done it in ESPHome, but it should be possible to do using the Logger and monitoring the logs as it moves. Recommended Workflow for Setting StallGuard
I recommend reading page 36 of this PDF for more detailed instructions. Unfortunately, StallGuard just won't work if the velocity is too slow, which can be the issue here as well. |
Beta Was this translation helpful? Give feedback.
-
|
It's working. A few comments/questions.
Cheers - p |
Beta Was this translation helpful? Give feedback.
-
|
Sorry for my delay, I've been incredibly busy. This case looks great, do you mind sharing it so I can upload it to the repo?
…________________________________
From: Pascal Girard ***@***.***>
Sent: Friday, March 6, 2026 10:34 AM
To: Valar-Systems/VAL3000 ***@***.***>
Cc: Daniel Frenkel ***@***.***>; Comment ***@***.***>
Subject: Re: [Valar-Systems/VAL3000] ESPHome, VAL3000 and StallGuard (Discussion #5)
It's working. A few comments/questions.
1. Your book was super helpful as were Christian's READMEs. Thank you.
2. An ESPHome-based yaml to retrieve both the StallGuard and TSTEP values were equally invaluable. I've attached my yaml file that uses VACTUAL to spin the motor while ESPHome reports the value. Feel free to steal. In my case, TSTEP for 2k/s was 187.
3. Your ropener yaml<https://github.com/Valar-Systems/Ropener/blob/main/firmware/ESPHome-Matter-Compatible.yaml> file will not do StallGuard as provided. TCOOLTHRS is never set so it's 0x00000000. My working test code does and it's also attached. Notice the tcool_threshold: 600 tpwm_threshold: 150 values. You will have to futz with these values for ropener.
4. I was running the motor at too slow of a speed. Moving it up to 2k/s fixed the second of my two problems.
5. With a StallGuard threshold of 75, my STEPPERONLINE motor<https://www.amazon.com/dp/B00PNEQKC0> 'burps' twice between SG kicks in. At 100, it stops prematurely. Is there a rule of thumb here? Should SG kick in before the motor skips (I would think this would be rough for a geared stepper)? What's your advice here?
6. I've designed a nice case for your VAL3000 - pictures are attached. It's OpenSCAD - the case can be mounted using the magnet or attach to the motor as you designed.
get-tstep.yaml<https://github.com/user-attachments/files/25801811/get-tstep.yaml>
working-sg.yaml<https://github.com/user-attachments/files/25801908/working-sg.yaml>
IMG_0060.jpeg (view on web)<https://github.com/user-attachments/assets/6def1c73-63c8-4d1b-8bfd-a704026a3f8d>
IMG_0059.jpeg (view on web)<https://github.com/user-attachments/assets/fe87b2d3-3524-42f5-83f9-c94685883aed>
Cheers - p
—
Reply to this email directly, view it on GitHub<#5 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AIM5OVWFFIEMX6AD746EAHL4PMK2TAVCNFSM6AAAAACWGZ2BJ2VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTMMBSGY3DQNA>.
You are receiving this because you commented.Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.


Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
damper.yaml
First post! Happy so far with the VAL3000 - it's performing like a champ for my project which involves using this device to control (via PID) a heating duct damper within Home Assistant. The stepper is integrated into HA very nicely with a number slider controlling it from 0 to 90 degrees (0->400 w/ 8 microsteps). Slimcdk's code that Daniel posted on ropener was a great start.
The last part before I integrate it with the simple PID component was to have it home using StallGuard and I'm struggling to get it to work. After much fiddling, I've reduced the code to just testing StallGuard using the ESPhome TMC2209 homing example. The code I've used is attached - the motor turns correctly to find home but never stalls. Has anyone tested SG/ESPHome/Val3k? I'm happy to help debug this. Perhaps the first step is an arduino sketch that tests SG which I'm happy to load. I do have a scope but putting this on the V3k would be a bit difficult... - perhaps on one of the motor leads to check load?
Beta Was this translation helpful? Give feedback.
All reactions