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

New Feature Status Screen for Monitoring Temperatues with live icons … #153

Merged
merged 13 commits into from
Nov 19, 2019

Conversation

guruathwal
Copy link
Contributor

@guruathwal guruathwal commented Nov 11, 2019

need testing on TFT24/TFT28

New Feature Status Screen for Monitoring Temperatues with live icons.

⚠️ only tested on TFT35 V2, needs testing on TFT24/TFT28

👉 Currently Status Screen will only be visible if Unified Menu is activated as there was not empty position in regular home screen for Back button, Regular home screen need change in layout for this.

👉 may contain bugs so please be calm and open an issue. 👍

Best viewed on printer with dual extruder setup
the screen will now shuffle between multiple extruders and fan if they enabled.

photo_2019-11-13_22-24-13

thisiskeithb and others added 2 commits November 10, 2019 08:58
…**need testing on TFT24/TFT28**

New Feature Status Screen for Monitoring Temperatues with live icons.

:heavy_exclamation_mark:  **only tested on TFT35 V2, needs testing on TFT24/TFT28**

:point_right: Currently Status Screen will only be visible if Unified Menu is activated as there was not empty position in regular homescreen for Back button.

:point_right:  may contain bugs so please be calm and open an issue. :+1:
@Hukuma1
Copy link

Hukuma1 commented Nov 11, 2019

Post a photo please! :) Would love to see it.

@hapklaar
Copy link

Nice. Will this also run on a TFT35 v3? If so I can test.

@guruathwal
Copy link
Contributor Author

@hapklaar yes you can test it.
@Hukuma1 I will post a ptoho for sure.

@mooner1022
Copy link

Sounds good!

@guruathwal
Copy link
Contributor Author

Added Speed and Flow icons.
IMG_20191112_222539708

Only tested on TFT35 V2

Needs Testing on TFT24 / TFT28 and TFT35 V1 and V3.

@thisiskeithb
Copy link
Contributor

I’ll be able to test on a TFT35 V3 later today.

@hapklaar
Copy link

Initial findings: Love where this is going :) Seems to work without any issue on TFT35 v3

Is it possible to use the unused space on the status screen to show M117 message? That way you can display custom status/progress info from for example OctoPrint-DetailedProgress

@Zuru1
Copy link

Zuru1 commented Nov 12, 2019

Added Speed and Flow icons.
IMG_20191112_222539708

Only tested on TFT35 V2

Needs Testing on TFT24 / TFT28 and TFT35 V1 and V3.

Nice work 👍
One question, is it possible to add a second extruder?

@guruathwal
Copy link
Contributor Author

One question, is it possible to add a second extruder?

@Zuru1 yes yo can add upto 6 extruders. The screen will cycle between each extruder every 2 second. Same goes for the Fan.

@hapklaar yes it is possible. Working on next PR.

@guruathwal
Copy link
Contributor Author

@hapklaar is this what you requested?

photo_2019-11-13_22-24-13

Here is a video demo:
https://youtu.be/MmQEkVuC5to

@thisiskeithb
Copy link
Contributor

BigTreeTech might have to make this the default layout.

@hapklaar
Copy link

@hapklaar is this what you requested?

It is, exactly what I had in mind :) Great work man, thanks! I will try this tomorrow or in the weekend.

@zeko00
Copy link

zeko00 commented Nov 14, 2019

how can I activate te status screen to test it

Added Information box on Status Screen and fixed some issues with previous PR Merge.

The information box will now show Echo messages from the printer and M117 command message from ESP3D.
@guruathwal
Copy link
Contributor Author

photo_2019-11-13_22-24-13

Pushed PR for the information box will now show Echo messages from the printer and M117 command message from ESP3D when status screen is active, on any other screen it will show regular pop up window.

@guruathwal
Copy link
Contributor Author

@zeko00 currently you can use this fork to test it: https://github.com/guruathwal/BIGTREETECH-TouchScreenFirmware as the PR is not yet merged.

@hapklaar
Copy link

@guruathwal I can't compile your version anymore, even after complete refresh from your fork and reinstalling pio:
image

@Sthopeless
Copy link
Contributor

@guruathwal I have purchased TFT24 and TFT28, so when they arrive I can help a little more with testing.

Got it working on my TFT35 v1.2 (not attached to a printer) and everything seems to be working besides the speed/flow icon inside doesn't allow me to change the Normal and if I change it on Menu > Extrude it will not reflect that change

@Sthopeless
Copy link
Contributor

Unless we have multiple fans or hotends defined wouldn't it look better if removed the text from the icons and center the icon?

@guruathwal
Copy link
Contributor Author

guruathwal commented Nov 15, 2019

@hapklaar I tried building for all variants. only TFT35_V3_0 and TFT24_V1_1 build failed.
it looks like there is an issuse with the Stack size in ldscripts for both of them.

I was able to successfully build the firmware for these variant by reducing the _Min_Stack_Size from 0x2000 to 0x1800 in following files:

For TFT35_V3_0
BIGTREETECH-TouchScreenFirmware\buildroot\ldscripts\buildroot\ldscripts\stm32f2xx_0x8000_iap.ld

https://github.com/guruathwal/BIGTREETECH-TouchScreenFirmware/blob/9b77422e849fb12ae781339e1842c8db7b8f6436/buildroot/ldscripts/stm32f2xx_0x8000_iap.ld#L15

For TFT24_V1_1
BIGTREETECH-TouchScreenFirmware\buildroot\ldscripts\buildroot\ldscripts\stm32f10x_0x6000_iap.ld

https://github.com/guruathwal/BIGTREETECH-TouchScreenFirmware/blob/9b77422e849fb12ae781339e1842c8db7b8f6436/buildroot/ldscripts/stm32f10x_0x6000_iap.ld#L40

@guruathwal
Copy link
Contributor Author

@hapklaar yes it is so.. you can try with the Marlin team. you can also connect octoprint to the TFT serial port at esp mount instead of the board itself.

@hapklaar
Copy link

hapklaar commented Nov 20, 2019

@hapklaar yes it is so.. you can try with the Marlin team. you can also connect octoprint to the TFT serial port at esp mount instead of the board itself.

@guruathwal Just thinking out loud here... Wouldn't it be possible to get the M117 output another way as this is already reaching the TFT, through EXP1/EXP2 in Marlin mode? I imagine most people have Octoprint connected to their mainboard opposed to the ESP port on TFT.

@AnHardt
Copy link

AnHardt commented Nov 21, 2019

@hapklaar
Character recognition from (moving) pixels?
Interesting concept, but unlikely to be realized.

@carl1961
Copy link

carl1961 commented Nov 21, 2019

@guruathwal How do I activate the Unified Menu, So far on TFT 3.5 V3.0 every thing is working. printed from sdcard fine on TFT and LCD12864 Simulator . Thanks for your Awesome work!

@guruathwal
Copy link
Contributor Author

@hapklaar yes it is so.. you can try with the Marlin team. you can also connect octoprint to the TFT serial port at esp mount instead of the board itself.

@guruathwal Just thinking out loud here... Wouldn't it be possible to get the M117 output another way as this is already reaching the TFT, through EXP1/EXP2 in Marlin mode? I imagine most people have Octoprint connected to their mainboard opposed to the ESP port on TFT.

@hapklaar Did you tried the M118 command?

@guruathwal
Copy link
Contributor Author

@guruathwal How do I activate the Unified Menu, So far on TFT 3.5 V3.0 every thing is working. printed from sdcard fine on TFT and LCD12864 Simulator . Thanks for your Awesome work!

@carl1961 👍 ... Unified menu can be activated with this line

@hapklaar
Copy link

@hapklaar yes it is so.. you can try with the Marlin team. you can also connect octoprint to the TFT serial port at esp mount instead of the board itself.

@guruathwal Still playing around with this :) I now connected an ESP01 to the TFT and loaded ESP3d onto it. On Octoprint machine I used socat to create a virtual serial port that connects to the data port of ESP3d and have Octoprint connect to that vser. It works, albeit not very stable. Also I see some very strange behavior when sending an M117 command
:
Send: M117 testing123
[...]
Recv: echo:Unknown command: "M147 testing123"
Recv: ok
Recv: echo:Unknown command: "S0"
Recv: ok

Might be bad ESP3d behavior, haven't figured it out yet. Also not very keen on connecting Octoprint and TFT with wifi.

Positive side is, I also see those errors on the status screen in TFT mode.

Can I ask your setup? How did you connect everything together if you don't have Octoprint on the mainbord USB/serial port?

@carl1961
Copy link

carl1961 commented Nov 23, 2019

have you looked at https://github.com/probonopd/WirelessPrinting or even https://github.com/jeelabs/esp-link there made for wifi access.

@guruathwal
Copy link
Contributor Author

@hapklaar if the TFT is displaying the echo messages then it means that your TFT is working correctly.

Send: M117 testing123
[...]
Recv: echo:Unknown command: "M147 testing123"
Recv: ok
Recv: echo:Unknown command: "S0"
Recv: ok

it looks like there is some noise or data is missed during communication between esp and octopi.
I do not recommend using socat. instead you should directly connect the raspberry pi serial to the serial port on ESP mount if possible.
I use both PC via USB and SD card.
The ESP I received is faulty, so I cannot confirm about the it.

As @carl1961 suggested you can also try both alternative

@hapklaar
Copy link

hapklaar commented Nov 24, 2019

@guruathwal The M117 that becomes M147 folowed by S0 seems a quirk of ESP3d (https://github.com/luc-github/ESP3D). This output is consistent and happens every time I try. Doesn't seem like a noise or connection related issue. Going to try a direct cable connection. How did you exactly connect this up, a USB to serial bridge, then straight to ESP connector on the back of the TFT?

@carl1961 I used ESP3d which is more or less specifically for this purpose. Will check out your suggestions.

@davehardy20
Copy link

davehardy20 commented Nov 24, 2019

@hapklaar I have this same issue, TFT35 v3.0 plus BTT WiFi/ESP01S with ESP3D firmware. Same odd M147 etc etc FYI the ESP01S is plugged into the TFT35 socket

@hapklaar
Copy link

@hapklaar I have this same issue, TFT35 v3.0 plus BTT WiFi/ESP01S with ESP3D firmware. Same odd M147 etc etc FYI the ESP01S is plugged into the TFT35 socket

@davehardy20 I still have no idea where this M147 is coming from. Even if I use esp-link firmware instead of ESP3d to enter the M117 command, the behavior is identical with strange M147 output...

image

@carl1961
Copy link

carl1961 commented Nov 24, 2019

sound like a custom CNC code, S0 is usually speed. searching M147 brings us a CNC clamp . but searching ESP3D on GitHub brings up whats in the picture.
M147

@hapklaar
Copy link

hapklaar commented Nov 24, 2019

Yeah I found that as well by text searching through his code. But still can't figure out why this is happening. Opened an issue at ESP3d hoping to find out more. Curious detail is it also happens when I use esp-link, they might be sharing code.

luc-github/ESP3D#388

@carl1961
Copy link

carl1961 commented Nov 24, 2019

it says it is in testui.htm. Using UltraFinder , searching all the BIGTREETECH-TouchScreenFirmware code nothing bring up M147. the error reported was the PDF files it could not search in.

Ultiment Finder

@hapklaar
Copy link

Just checked and the ESP module is passing M117 without issue to ESP port, please see mention above. It seems to be the TFT is doing weird things with it.

@guruathwal
Copy link
Contributor Author

Annotation 2019-11-24 204020

photo_2019-11-24_20-43-44

I connected USB to TTL on the ESP port on TFT and sent the M117 code. it works as expected..

@hapklaar
Copy link

@guruathwal I downloaded your fork, compiled and flashed it. Seems to work fine with that one.

Please also check luc-github/ESP3D#388 where the owner of ESP3d says he might have found the issue. I can't explain why this only happens in the original code and not in your fork though...

@guruathwal
Copy link
Contributor Author

@guruathwal I downloaded your fork, compiled and flashed it. Seems to work fine with that one.

Please also check luc-github/ESP3D#388 where the owner of ESP3d says he might have found the issue. I can't explain why this only happens in the original code and not in your fork though...

@hapklaar 👍 may be I am lucky for you..😆

@luc-github
Copy link
Contributor

FYI the bug was introduced here : cba9b7d#diff-2648696ce3fb72180bd1f1f65adfc697

@hapklaar
Copy link

hapklaar commented Nov 24, 2019

@luc-github tried your fix on the original tree and it works! No more M147 shenanigans. Shall I create a PR for this?

@guruathwal you sure are, without you we wouldn't have this great new UI design and status screen 😆

@hapklaar
Copy link

@guruathwal oh you already fixed this yourself? That's why your fork had no issue today :)

ca9f44b

@guruathwal
Copy link
Contributor Author

@hapklaar 👍🏼 the maintainers are a litle slow with the merges..

@ssombra
Copy link

ssombra commented Feb 18, 2020

@hapklaar yes it is so.. you can try with the Marlin team. you can also connect octoprint to the TFT serial port at esp mount instead of the board itself.

Hi, newbie here. How can I connect Octoprint to TFT serail port? I have the TFT35 v2 display, any guide?. thanks

@ghost
Copy link

ghost commented Apr 30, 2020

I can't get M117 to show at all. I've just flashed with TFT24_V1_1_26 and there's nothing displayed on the screen when I send a M117 command. Do I need to enable something somewhere?

jeffeb3 pushed a commit to jeffeb3/BIGTREETECH-TouchScreenFirmware that referenced this pull request Jul 20, 2020
bigtreetech#153)

* Use Ubuntu Font for TFT35

* New Feature Status Screen for Monitoring Temperatues with live icons **need testing on TFT24/TFT28**

New Feature Status Screen for Monitoring Temperatues with live icons.

:heavy_exclamation_mark:  **only tested on TFT35 V2, needs testing on TFT24/TFT28**

:point_right: Currently Status Screen will only be visible if Unified Menu is activated as there was not empty position in regular homescreen for Back button.

:point_right:  may contain bugs so please be calm and open an issue. :+1:

* New icons for Status Screen  and some Icon imporvements

* Improvements in Status Screen: added Fspeed and flow icon

Improvements in Status Screen: added Fspeed and flow icon

* Added Information box on Status Screen

Added Information box on Status Screen and fixed some issues with previous PR Merge.

The information box will now show Echo messages from the printer and M117 command message from ESP3D.

* Added X Y Z Position in Status screen, status screen can be enabled for normal menu layout

Reduced height of title bar while in status screen to accommodate X Y Z position in Status screen.
Status screen can now be enabled for standard menu layout.
Fixed stack size error.
tested build for all variants successful.

* Update parseACK.c
@JoachimBates
Copy link

Hi All, correct me if I’m wrong but I cannot for the life of me understand how to install this “modded” screen setup on my CR10-s pro with BTT SKR1.4 and stock creality touch display. It’s far more beautiful and user friendly than the stock Marlin Menu style

Joe

@carl1961
Copy link

@JoachimBates You have to have a BIGTREETECH Touch Screen Display

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.