makerbase-mks / MKS-Robin

MKS Robin is a powerful 32-bit 3D printer control board with STM32F103ZET6 . Support Marlin2.0. Support MKS Robin TFT24/28/32... Screens. The motherboard integrates 5 AXIS interface, hot bed, 2 heating heads, 3 NTC100K, 2 MAX31855.Support MKS Robin WIFI for cloud printing.Supports firmware update by SD card…
https://es.aliexpress.com/item/32757129463.html?spm=a219c.12010612.8148356.9.5fc165f4oDUfFM
131 stars 129 forks source link

TFT35 MKS-Robin Nano white Display #124

Open Princore opened 5 years ago

Princore commented 5 years ago

IMG_0034 I flashed Marlin 2.0 and on the Robin Nano 1.1 and also the MKS Robin TFT35 V1.0 Firmware for the Display. After Booting the display keeps white and nothing happens. Connecting to the MKS Robin Nano with pronterface works. Do I have to set something else in Marlin?

Technology89 commented 5 years ago

Thank you so much @zillarob ! The touchbuttons are working with your pin configuration but my display is still only small in the top left corner while the touch buttons are sensitive where they used to be...

Can you upload your u8g_dev_tft_320x240_upscale_from_128x64.cpp ? Seems like this one is also different...

zillarob commented 5 years ago

That file is untouched from the main marlin branch.

Technology89 commented 5 years ago

Strange... The digitizer is scaled correct only the lcd is scaled wrong. It just shown as 128*64 pixels. Also the sd card eeprom won't save. Gonna have a second look at your configuration.h later

zillarob commented 5 years ago

I have been messing with the sd stuff. Not positive where I left off, but there was an eeprom.dat on there when I flashed it.

zillarob commented 5 years ago

I think I remember seeing that they used a few different chips on the tft. Maybe yours is different? I never had to mess with it so not sure if needed to tell it which one or something.

zillarob commented 5 years ago

Ya, have eeprom.dat back on there so gonna be you config or config.adv. I delete it before I flash.

3Dangel commented 5 years ago

cool man! if there was an issue and you fixed it, worth to post it to the pull on marlin so it gets merged into it!!!! What was the setting you made to have it to work? cheers

On Wed, Sep 4, 2019 at 10:45 PM zillarob notifications@github.com wrote:

Ya, have eeprom.dat back on there so gonna be you config or config.adv. I delete it before I flash.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/makerbase-mks/MKS-Robin/issues/124?email_source=notifications&email_token=AFYWWXPTX7VU5322ZSC3WADQICFFHA5CNFSM4IRKEDJKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD55ZZSA#issuecomment-528194760, or mute the thread https://github.com/notifications/unsubscribe-auth/AFYWWXMH53XDMA5PEEGIHDTQICFFHANCNFSM4IRKEDJA .

zillarob commented 5 years ago

The eeprom thing is just a standard marlin setup thing. When you compare my config and config.adv you will prob find it.

3Dangel commented 5 years ago

ok got it!! been working to get the screen ..... not sure what they did but mine is either on booting or white.... well time to sleep.... thanks again!!!!

On Wed, Sep 4, 2019 at 11:29 PM zillarob notifications@github.com wrote:

The eeprom thing is just a standard marlin setup thing. When you compare my config and config.adv you will prob find it.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/makerbase-mks/MKS-Robin/issues/124?email_source=notifications&email_token=AFYWWXIEOQEFLNYCZNP53YTQICKL7A5CNFSM4IRKEDJKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5535JA#issuecomment-528203428, or mute the thread https://github.com/notifications/unsubscribe-auth/AFYWWXOUVVCFVKDMELEC5FLQICKL7ANCNFSM4IRKEDJA .

Technology89 commented 5 years ago

@3Dangel when your screen is white disable '#define LCD_RESET_PIN PF6'. Then it should work. There is also a note in the pins file: '/**

@zillarob gonna try your .bin file today and will test if my lcd scales up.

zillarob commented 5 years ago

It wont compile (at least mine never did) with PF6 uncommented, the f103vet6 chip doesnt have that pin.

Technology89 commented 5 years ago

I mean commend out. On my it will compile no matter if LCD_RESET_PIN is active or not. I also had the screen white and then removed the Reset Pin and it worked.

Technology89 commented 5 years ago

I can't test your bin file @zillarob because you have the LCD_RESET_PIN defined which does not work on my panel. Screen is only white.

But i got the Eeprom working with your pins file. I only copied the lcd part before but with everything it works now. So only issue left is the upscaling

DaVincIan commented 5 years ago

Hi Everyone

I'm posting here as from what I can see it is the most active area for the subject matter. I have been following the posts and hope to start implementing the lessons learned (so to speak).

I want to start with some requests: 1) Please add sufficient detail to your post. It is many time really cryptic, especially for users that are not that familiar with the programming environment. 2) Can we clarify which "source" of Marlin FW "base" code we are referring to. There are a lot of them. There are the Marlin FW here at Makerbase-mks/MKS-Robin, with a branch for each model of the Robin series of controllers. And then there is from the "official" MarlinFirmware/Marlin/tree. Here we tend to use Marlin 2.0x, and configure it for the relevant Robin model.

Technology89, 3DAngel, ZillaRob et al post/uploaded code (according to there posts), but where precise?

So, my problem is somewhat unique, as it seems I'm more or less the only one working with a Robin2 controller board. So far I experience all the symptoms mentioned above. I believe I'm making headway with my pins declaration. I'm having difficulty with setting the classSPI to SPI(2) as this declaration does not exist for the Robin2 environment (C:\User.platformio...)

I can compile without errors, but the flash to board runs to 100% then hangs there, with just a green bar across the TFT screen.

All for now.

zillarob commented 5 years ago

@tech Did you try that compiled one? Dont try to do anything other than power it on and push the buttons to look at the menus. Im sure movement will be all screwed up so dont try to move.

That PF6 thing is jacked up for the nano, not sure where they got that from. The chip on the nano doesnt even have that pin and wont compile if you have it set. PC6 should work though. You do have a Nano right? Not one of the other versions of Robin?

Technology89 commented 5 years ago

@tech Did you try that compiled one? Dont try to do anything other than power it on and push the buttons to look at the menus. Im sure movement will be all screwed up so dont try to move.

Yes i tried the compiled one. Like i said my display don't post when LCD_RESET_PIN is set. I only see a white screen. I would need a compiled without the LCD_RESET_PIN

That PF6 thing is jacked up for the nano, not sure where they got that from. The chip on the nano doesnt even have that pin and wont compile if you have it set. PC6 should work though. You do have a Nano right? Not one of the other versions of Robin?

Like i said. Mine compiles without issues but my screen turns white wenn LCD_RESET_PIN is declared. And yes i have a nano.

zillarob commented 5 years ago

@DaVi

I use (and referring to here) a Nano and main marlin branch. The version here is quite old and clunky.

I thought the bigger Robin boards were better sorted already? What we are using has been adapted from that. Seems like the hard way to try to adapt back?

zillarob commented 5 years ago

@tech Interesting. I cant remember where I saw the thing about different controller chips on the tft, but you must have one of them. A few people on the Nereus group have played with this and none have had lcd probs.

Technology89 commented 5 years ago

@tech Interesting. I cant remember where I saw the thing about different controller chips on the tft, but you must have one of them. A few people on the Nereus group have played with this and none have had lcd probs.

Thats why they mention it in the pins file: '/**

Note: MKS Robin TFT screens use various TFT controllers. If the screen stays white, disable 'LCD_RESET_PIN' to let the bootloader init the screen. */'

Would you like to compile for me without LCD_RESET_PIN active so i can test if scaling works.

3Dangel commented 5 years ago

The PF6 is for Robin Te PC6 is for nano You would need to change that on tour board’s Pin setting.

On Thu, Sep 5, 2019 at 09:15 Technology89 notifications@github.com wrote:

@tech https://github.com/tech Interesting. I cant remember where I saw the thing about different controller chips on the tft, but you must have one of them. A few people on the Nereus group have played with this and none have had lcd probs.

Thats why they mention it in the pins file: '/**

Note: MKS Robin TFT screens use various TFT controllers. If the screen stays white, disable 'LCD_RESET_PIN' to let the bootloader init the screen. */'

Would you like to compile for me without LCD_RESET_PIN active so i can test if scaling works.

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/makerbase-mks/MKS-Robin/issues/124?email_source=notifications&email_token=AFYWWXIR6TTD63KTEFJCJ3LQIEPC7A5CNFSM4IRKEDJKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD57QTKI#issuecomment-528419241, or mute the thread https://github.com/notifications/unsubscribe-auth/AFYWWXNKSGWQVI53SMZ7YLLQIEPC7ANCNFSM4IRKEDJA .

Technology89 commented 5 years ago

I updated my repo. On this one everything is working except the lcd scaling. EEPROM and touch is working. The configuration.h is for the sapphire pro. https://github.com/Technology89/Marlin_2.0_Sapphire_Pro

zillarob commented 5 years ago

How hard is it to get to the back of the tft and see what chip is on there? Mine is loose so easy to compare notes.

Technology89 commented 5 years ago

Need to open the buttom plate. Can't do right now as it is printing for the next 12 hours ^^

Technology89 commented 5 years ago

@zillarob here is a photo of my screens back: https://photos.app.goo.gl/822wsYy4qBmmQ4RS8

zillarob commented 5 years ago

I believe? that HR2046 chip is the one we are talking about, and same chip on mine. Strange yours is different. Maybe that is the digitizer chip and another graphics chip hiding somewhere?

Technology89 commented 5 years ago

If so it must be hidden under the screen...

3Dangel commented 5 years ago

Why I have the feeling that the LCD TFT touch screen with ribbon cables do not have any processor in them!? I always thought that they are driven by the main board’s STM32

On Fri, Sep 6, 2019 at 13:01 Technology89 notifications@github.com wrote:

If so it must be hidden under the screen...

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/makerbase-mks/MKS-Robin/issues/124?email_source=notifications&email_token=AFYWWXPGTKGC2XLRDSZKXELQIKSHNA5CNFSM4IRKEDJKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6DYNSQ#issuecomment-528975562, or mute the thread https://github.com/notifications/unsubscribe-auth/AFYWWXNAHOYRVB4HQWAWFSLQIKSHNANCNFSM4IRKEDJA .

Technology89 commented 5 years ago

They are using a serial connection so there must be some type of logic 🤷🏻‍♂️

3Dangel commented 5 years ago

Well that little chip IS the controller

On Fri, Sep 6, 2019 at 13:27 Technology89 notifications@github.com wrote:

They are using a serial connection so there must be some type of logic 🤷🏻‍♂️

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/makerbase-mks/MKS-Robin/issues/124?email_source=notifications&email_token=AFYWWXO4LW65UZCFTQVOZOTQIKVIJA5CNFSM4IRKEDJKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6D2REQ#issuecomment-528984210, or mute the thread https://github.com/notifications/unsubscribe-auth/AFYWWXOZPENPZYCNZRGAQKTQIKVIJANCNFSM4IRKEDJA .

zillarob commented 5 years ago

Thats crazy yours does the res thing. Maybe measure yours diag corner to corner and will do the same. Maybe I dont have the size I think I do? =D

Technology89 commented 5 years ago

Its the tft35 so 3.5 inch

zillarob commented 5 years ago

Did you actually measure to make sure? Mine measures right at 3.5" Really is odd yours behaves so differently.

Technology89 commented 5 years ago

Edge to edge my caliper shows 3.536 inches. It would be helpful to have a complete marlin or a compiled one with LCD_RESET_PIN disabled to test if it's an configuration issue or because of different hardware

DaVincIan commented 5 years ago

All screen sizes, TV etc are measured diagonally.

On Fri, 6 Sep 2019, 22:09 Technology89, notifications@github.com wrote:

Edge to edge my caliper shows 3.536 inches. It would be helpful to have a complete marlin or a compiled on with LCD_RESET_PIN disabled to test if it's an configuration issue or because of different hardware

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/makerbase-mks/MKS-Robin/issues/124?email_source=notifications&email_token=AGACKMVS26XLVQPSZPHSNFDQIK2I3A5CNFSM4IRKEDJKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6D5WPA#issuecomment-528997180, or mute the thread https://github.com/notifications/unsubscribe-auth/AGACKMW4G6ESTFJIT7WYJYTQIK2I3ANCNFSM4IRKEDJA .

Technology89 commented 5 years ago

@DaVinclan this is what i mean with edge to edge.

zillarob commented 5 years ago

Looking at the data sheet for the hr2046 looks like it is the driver for the digitizer, not the tft. There has to be another chip on there somewhere for the tft.

3Dangel commented 5 years ago

LCD-TFT display controller (LTDC), the STM32 MCUs allow to directly drive high-resolution display panels without any CPU intervention. On Fri, Sep 6, 2019 at 15:06 zillarob notifications@github.com wrote:

Looking at the data sheet for the hr2046 looks like it is the driver for the digitizer, not the tft. There has to be another chip on there somewhere for the tft.

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/makerbase-mks/MKS-Robin/issues/124?email_source=notifications&email_token=AFYWWXLTQDZ5A6QCMWZI63LQILA5VA5CNFSM4IRKEDJKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6EB5DY#issuecomment-529014415, or mute the thread https://github.com/notifications/unsubscribe-auth/AFYWWXPZWUBITURYHUMCQI3QILA5VANCNFSM4IRKEDJA .

zillarob commented 5 years ago

I aint gonna claim to know anything about them, but there are prob a lot more pixels than wires in that ribbon cable. Gotta be something in between the stm32 and all those pixels.

3Dangel commented 5 years ago

Me too. I’m no expert. Just a google searcher. But from what I see through the Merlin codes, it seems to be that way. The schematic shows ribbon pins are actually interacting with the STM32 directly and that the STM32 chip has internal TFT-LCD driver.

On Fri, Sep 6, 2019 at 15:34 zillarob notifications@github.com wrote:

I aint gonna clain to know anything about them, but there are prob a lot more pixels than wires in that ribbon cable. Gotta be something in between the stm32 and all those pixels.

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/makerbase-mks/MKS-Robin/issues/124?email_source=notifications&email_token=AFYWWXJVQ52THQGOYBGPM43QILEE3A5CNFSM4IRKEDJKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6EDWGA#issuecomment-529021720, or mute the thread https://github.com/notifications/unsubscribe-auth/AFYWWXINHF5WTEIMFTUVLRLQILEE3ANCNFSM4IRKEDJA .

novio8 commented 5 years ago

I know that this is off topic, but ...I have White display on new Sapphire Pro I can't or I don't know how to install original firmware. Any Ideas ? thank you

zillarob commented 5 years ago

@novio8 Not off topic at all, exactly the stuff tech is struggling with.

Comment out the reset pin and see if comes on and the resolution is right. You prob have the same chip as he does and going to run into the same probs though.

alfrankgit commented 5 years ago

@novio8 I posted a complete Sapphire Pro firmware at the site below as I did exactly the same as you and had a hard time to get Two Trees to give me all the files. But when they did it was a new version, 1.0.3, but the bitmaps from 1.0.2. I then renamed and edited some of them so that it all matches up. And it also contained a german luanguage option which I optimized since I am German. I won’t post the files here because I think that MKS owes us the 1.0.3 binary. But you can get them here on our german 3D printer forum: https://drucktipps3d.de/forum/topic/schon-gesehen-sapphire-s-pro/?part=18#postid-47373 No warranties! Use at your own risk! No way back! But ph1lloops already had success with it.

novio8 commented 5 years ago

Thank you for the link I have installed your Firmware, everything works just fine, except I'm getting ERR7 while printing. Did I made a mistake or there is something wrong with Firmware or Sapphire PRO ?

alfrankgit commented 5 years ago

I had that too and it seems to be a temperature runaway or similar. Probably caused by the too powerful heater cartridge (50 W). To fix that I increased some values of the temp hysteresis in th cfg file.

======================== Thermal Runaway Protection =======================

THERMAL_PROTECTION_PERIOD 40 #Seconds THERMAL_PROTECTION_HYSTERESIS 4 #Degrees Celsius

AFR was 20

WATCH_TEMP_PERIOD 80 #Seconds

AFR was 2

WATCH_TEMP_INCREASE 8 #Degrees Celsius THERMAL_PROTECTION_BED_PERIOD 20 #Seconds THERMAL_PROTECTION_BED_HYSTERESIS 2 #Degrees Celsius WATCH_BED_TEMP_PERIOD 60 #Seconds

AFR was 2

WATCH_BED_TEMP_INCREASE 4 #Degrees Celsius

novio8 commented 5 years ago

alfrankgit, I'll put Silicone Sock on the heater Block, maybe this will help. I had two layer shifts printing Benchie, both at approximately 32 mm. Did yo have layer shifts too with Sapphire PRO ?

Technology89 commented 5 years ago

alfrankgit, I'll put Silicone Sock on the heater Block, maybe this will help. I had two layer shifts printing Benchie, both at approximately 32 mm. Did yo have layer shifts too with Sapphire PRO ?

Check the voltage on your drivers. For X and Y they should be around 1.1-1.2V. Mine were at 1.5V which resulted in heavy layershifts.

novio8 commented 5 years ago

Check the voltage on your drivers. For X and Y they should be around 1.1-1.2V. Mine were at 1.5V which resulted in heavy layershifts. OK I will, thankx

Technology89 commented 5 years ago

@zillarob could you please provide a .bin file with 'LCD_RESET_PIN' deactivated? This would be very helpful to see if my display would scale up correctly.

zillarob commented 5 years ago

My guess is it will do the same, but here is the one I use, with the reset pin commented out.

I just picked up a used printer that should come with a different tft. The metal screen retainer gizmo that originally came on mine was black. I made the mistake of lending it out for somebody to do some diag and dbag decided to keep it instead of send it back. The one I bought to replace it has a shiny silver metal retainer gizmo. Maybe a newer/older version? Will compare when it gets here and see if any differences.

Robin_nano.zip

Technology89 commented 5 years ago

Thanks, gonna try the next days 👍