-
Notifications
You must be signed in to change notification settings - Fork 18
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
Yardforce 500B #7
Conversation
Fix some bugs. Currently the software keeps restarting.
Maybe we can refactor the actual code to support the two variants. |
Thats essentially what this PR is doing - by selecting the appropriate board with PIO you can select for which mower you want to build. |
Use correct handle for ADC interrupt.
Yardforce 500b UART pin definition fix
I've got Janruf's fork running on a 500B. Overall the mower is functioning, with some minor issues (I can't get the 'J18' debug to work, not all buttons on the pnnel work,...). Some of these might be because of me... |
Well, the general stance seems to be "it works" - as long as it doesn't blow up mainboards anymore (it shouldn't), the merge conflicts will need to be resolved and I think then it'd be ready to go. Problem is, I don't have a 600B anymore. After my mainboard blew up, I swapped it for a 600 one |
I have a 500B I installed the firmware from "Janrupf", in manual mode the robot works well, but in auto it goes in circles and stops. (motherboard 20210816 RM-MB-V6.1) |
Hi @danou07 , |
This PR is still draft, do you think we can merge it ? |
I think so? The only real problem it ever had was blowing up the charging mosfet, but from what I've heard on the discord this issue has not occurred ever again after the CPU clock fixes have been merged into this PR |
There are still merge conflicts. I can resolve them and test on my 500B if you would like. |
That would be awesome! |
I'm currently testing this PR on my classic but it doesn't work yet |
Chances are something is broken for the non-B variant? I'm unsure and I can't really test anymore |
I've been using Janrup's firmware for a couple of weeks now and it works well ! |
I have rebased the branch on the lastest master, and I reviewed the code since Janrupf's original commits to see if I could find the breaking change for 500 classic. There were three spots that stood out to me: dcbb41a#diff-2e268f72ab0f890272367bd327d3b2d8c602894458640ae128f581195b127fc4L103 removes __HAL_RCC_PWR_CLK_ENABLE() which is not removed in the main branch. 13e0cf9 and daa4e42 both change how USART's are initialized in a way that the main branch hasn't. I do not understand the code well enough to determine if these changes are good or bad, but if someone could look at them I suspect one of them is causing the issues with the 500 Classic. |
dcbb41a#diff-2e268f72ab0f890272367bd327d3b2d8c602894458640ae128f581195b127fc4L103 - that may very well break it! I think the other 2 changes are fine (and should probably even be there for the non B variant?) |
Thanks @Janrupf ! Here is the rebased branch with the tentative bugfix: https://github.com/jeremysalwen/Mowgli/tree/yardforce-500b . I will try to test it on my 500b in a bit, but if someone could test it on their 500 classic that would be great! |
I just tested it, working good on my 500B. The new pull request is here: #12 |
Tested on mine, it works too ! |
Alright! Closing in favor of #12 |
About
This is a work-in-progress attempt at supporting the Yardforce 500B variant. The biggest change seems to be that it is using a STM32F4, which in parts is different from the STM32F1 found in the original.
The code in here has not been tested other than "it compiles", if you own a 500B feedback is welcome but flash at your own risk!
I'm drafting this PR in order to track merge conflicts and coordinate integration.
The code in this PR is by no means my work alone and a lot of it has been sourced from the following repositories:
Building
This PR retains support for both boards, the original variant is still the default target. Build a B variant firmware using
pio run -e Yardforce500B