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

[WIP] Add support for Sovol SV06 Plus Touchscreen #25864

Merged
merged 38 commits into from
Sep 28, 2024

Conversation

saddfox
Copy link
Contributor

@saddfox saddfox commented May 21, 2023

Description

This PR adds support for the Sovol SV06 Plus screen with stock firmware. Based on Sovol's source code targeting Marlin 2.0.9.2. Both Marlin and LCD sources are available here.
The LCD code is mostly untouched from source, I have done some basic work cleaning up the integration. It builds and runs on SV06P and should not affect other machines.
The integration is currently using lots of #if preprocessor directives and not being pretty. At the very least some code should be moved from core to lcd functions. There is some overlap in functionality with ia_creality extui module so maybe we can lean into that instead.

2023-04-29-09-22-50-831
The screen used is marked as CXSW043_004, not sure if it's a genuine DWIN product or a compatible clone. The same screen seems to be used by Ender 7 and Sermoon D1.

Requirements

Requires a stock SV06 Plus with Sovol v1.3.1 MB and stock touchscreen.

Benefits

Allows using the stock screen with Marlin.

Configurations

config.zip
config.zip [updated 2024-02-27]

Related Issues

Similar work being done #25382

@thinkyhead thinkyhead force-pushed the sv06p_cleanup branch 9 times, most recently from dfd2874 to 4a62269 Compare May 25, 2023 03:17
@thinkyhead thinkyhead force-pushed the sv06p_cleanup branch 4 times, most recently from 7778b37 to ecac47e Compare May 25, 2023 03:48
@thinkyhead thinkyhead force-pushed the bugfix-2.1.x branch 2 times, most recently from 9c65146 to 4f65466 Compare January 26, 2024 00:13
@saddfox
Copy link
Contributor Author

saddfox commented Feb 27, 2024

merged in latest upstream & fixed some bugs so it compiles and runs again.
updated config in first post.

@tyrongower
Copy link

Is there any work that needs to be done with this for approval? I have been testing it with success so far, I was going to start looking at how to integrate host actions and progress on the screen based on this PR.

@saddfox
Copy link
Contributor Author

saddfox commented Mar 31, 2024

Is there any work that needs to be done with this for approval? I have been testing it with success so far, I was going to start looking at how to integrate host actions and progress on the screen based on this PR.

As far as I am concerned it's mostly finished, maybe some slight cleanups here and there. I have been using it without issue for some time now.
The problem I think mostly comes down to whether it even makes sense to include this upstream. While the integration has been cleaned up significantly, it's still adding some extra code to core Marlin and I am not sure doing that for a single printer is reasonable.

For host actions and print progress you may get some ideas from this repo https://github.com/smkent/sovol-sv06-plus-firmware

@tyrongower
Copy link

For host actions and print progress you may get some ideas from this repo https://github.com/smkent/sovol-sv06-plus-firmware

Thanks, I might pull that work into yours for now. I have been running yours with a couple of small changes without issue.

thinkyhead added a commit to MarlinFirmware/Configurations that referenced this pull request Sep 28, 2024
@thinkyhead
Copy link
Member

thinkyhead commented Sep 28, 2024

Wherever possible we want to convert custom LCD hooks into ExtUI callbacks, and generally moving all displays that want to receive common event updates over to the ExtUI API. Any new displays added to Marlin that can't do MarlinUI should use an ExtUI layer, and should feel free to add onto it as they require. We'll apply such conversions as time allows.

@thinkyhead
Copy link
Member

Has anyone got Sovol SV06 Plus configurations to go with this? If so, we should get a PR set up over at the Configurations repo. Anyway, I'll merge this as-is and we can continue to refine as needed. Add it to the list for testers of 2.1.3-beta.

@thinkyhead thinkyhead merged commit bbb8275 into MarlinFirmware:bugfix-2.1.x Sep 28, 2024
63 checks passed
@ellensp
Copy link
Contributor

ellensp commented Sep 28, 2024

@thinkyhead there is a config in the first post
config.zip [updated 2024-02-27]

@saddfox
Copy link
Contributor Author

saddfox commented Sep 28, 2024

I can test if it still runs fine and open a PR with config sometime next week.

@saddfox saddfox deleted the sv06p_cleanup branch October 20, 2024 19:59
rngkll pushed a commit to rngkll/Configurations that referenced this pull request Oct 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants