Skip to content
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

[FIXED] (Rumba32 PWM for RGBW/LASER/SPINDLE on pins PD12/13/14/15 4xch of Timer4) #21448

Closed
studiodyne opened this issue Mar 25, 2021 · 14 comments

Comments

@studiodyne
Copy link
Contributor

studiodyne commented Mar 25, 2021

Marlin.zip

Rumba32 F446vet6 - No pwm on ext pins PD12/13/14/15 4xch of Timer4
4 pins used to drive RGBW LEDS STRIP with external mosfet
The lcd menu have no ajustable brightness 0=OFF and 1 to 255 =ON for each color
I have used ' laser PWM feature ' to try PD12/13/14/15 but no pwm too
It's too much for me

@thinkyhead Paypal donation if you fix it ' reasonnable donation of course '

@thisiskeithb
Copy link
Member

thinkyhead Paypal donation if you fix it ' reasonnable donation of course '

Please keep mentions to a minimum unless something is on fire.

Someone will look at this when they can.

@rhapsodyv
Copy link
Member

Rumba32 variant don't set PD12/13/14/15 as PWM pins. And it's not fully compatible with Marlin.

That rumba 446VE variant seems that was copied from 446R, that has less pins. So, that is the issue. It need a new, fully configured 446VE variant to everything works.

@studiodyne
Copy link
Contributor Author

@rhapsodyv
I believed that platform io downloaded the vet6 variant from stm32 arduino framework git, that have the 4 channels of TIM4 on pd12/13/14/15
I have made a new variant to have it in local directory but no effects
But If the variant is local , can you tell me what file it is , and i will work on it
But hours after hours , I'm really sure TIM4 is already in use and not available , do you have a manipulation to list the timer in use?
Thks

@rhapsodyv
Copy link
Member

This is the updated version, that have the "full" variant: https://github.com/stm32duino/Arduino_Core_STM32/blob/master/variants/RUMBA32_F446VE/PeripheralPins.c#L108
It was updated 10 months ago. Jun 7, 2020.

Platform ship with 1.9.0 release, that is from May 2020... So, PlatformIO stm32duino is outdated...

You can try just set this in the rumba env:

platform_packages = framework-arduinoststm32@https://github.com/stm32duino/Arduino_Core_STM32/archive/refs/heads/master.zip

It will make you to use an updated stm32duino version, that ships with the updated variant...

But remember one thing: analog pins from original stm32duino variant will not with Marlin right now (without a fix).

@studiodyne
Copy link
Contributor Author

@rhapsodyv , very good job , thanks a lot , I will try this tomorow , and i will report if all is ok , i will check all gpios and i will if something broken

Thanks again

@studiodyne studiodyne changed the title [BUG] (Rumba32 F446vet6 - No pwm on ext pins PD12/13/14/15 4xch of Timer4) [FIXED] (Rumba32 PWM for RGBW/LASER/SPINDLE on pins PD12/13/14/15 4xch of Timer4) Mar 31, 2021
@studiodyne
Copy link
Contributor Author

@rhapsodyv
Works fine !!!!
Thank you very much
Give me your paypal 💲

Ps ; Tons of bug revealed , case light have been written for only one pin , and someone have added ' case light use RGB' but haven't written all code needed , and compile errors too ... I will make it soon

@studiodyne
Copy link
Contributor Author

@thisiskeithb
You can close , I have changed the title to easily find this fix in the base

@thisiskeithb
Copy link
Member

thisiskeithb commented Mar 31, 2021

You have the power to close your own issues as well. Just hit that Close button 🙂

@rhapsodyv
Copy link
Member

@studiodyne Good to know that it fixed your issue!!

But, as I said, the default variant will have some PIN issues and you can have random behaviour.

So, I sent a PR to add a fixed variant for rumba32.

Can you test it?

#21497

My PayPal is https://www.paypal.com/donate?business=3WLLTNTFHK99N&currency_code=USD ❤️

@studiodyne
Copy link
Contributor Author

studiodyne commented Apr 1, 2021

15$ donation made 💰

I have made this local variant two weeks ago, but had no effects (may be some lines missing in the ini ) , I will try yours and verify all is fine like the imported package

For some bad behavior pins , I use common pins , and analog pins/pwm are just for led , so , if sometimes I have a light special behavior , it's not a problem , and it will be visible , I will report it.

@studiodyne
Copy link
Contributor Author

For information , I use all pins , 3 hotends/thermistors/all 6 drivers / SPI/ 3 motion sensor/1 calibration pins/ bltouch + one servo for my switching nozzle/ 2 pins for coolant 'used for sms alarm ' / 4 pins PWN for rgbw led because neopixel timing is dead if more than 10 leds/ 2 serials port , one for usb , the other for mks tft35 , all works fine

You can be sure if there is a issue in this variant , it will be visible and i will report it

@rhapsodyv
Copy link
Member

Thanks!!

This change is needed for marlin work properly:

. A0 to PIN_A0

@studiodyne
Copy link
Contributor Author

studiodyne commented Apr 1, 2021

It's ok , i will update with your own variant , and forget the stm package
I will try

@github-actions
Copy link

github-actions bot commented Jun 3, 2021

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

@github-actions github-actions bot locked and limited conversation to collaborators Jun 3, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants