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

Improvements and fixes to Lulzbot UI #15490

Merged

Conversation

marcio-ao
Copy link
Contributor

  • Fix for incorrect tags on background items
  • Improvements to Bio printer UI
  • Theme colors are now selected in HSL space.

- Fix for incorrect tags on background items
- Improvements to Bio printer UI
- Theme colors are now selected in HSL space.
@thinkyhead
Copy link
Member

This seems like it should not work:

  #define CLCD_MOD_RESET                 LCD_PINS_ENABLE
  #define CLCD_SPI_CS                    LCD_PINS_D4

…because these pins are not defined by any of the pins files unless a particular display is selected, and I don't see any special cases for these added to the pins files for the Lulzbot Touch UI. As a result, it looks like only the OTHER_PIN_LAYOUT will currently work for Travis testing.

@thinkyhead
Copy link
Member

It appears that the unicode/unicode.h header is expected, but it is not included if building for Marlin…

command_processor.h:313:42: error: 'has_utf8_chars' was not declared in this scope
       const bool is_utf8 = has_utf8_chars(text);

@thinkyhead
Copy link
Member

Maybe it is this disagreement between compat.h and ftdi_extended.h on whether to set FTDI_EXTENDED.

compat.h enables it with LULZBOT_TOUCH_UI

#ifdef __MARLIN_FIRMWARE__

  // Marlin will define the I/O functions for us
  #if ENABLED(LULZBOT_TOUCH_UI)
    #define FTDI_BASIC
    #define FTDI_EXTENDED
  #endif

#else // !__MARLIN_FIRMWARE__

ftdi_extended.h does not

#ifndef __MARLIN_FIRMWARE__
  #define FTDI_EXTENDED
#endif

@thinkyhead
Copy link
Member

Perhaps I need more settings to get a proper build. Here is what I added to DUE-tests

opt_set LULZBOT_TOUCH_UI LCD_ALEPHOBJECTS_CLCD_UI OTHER_PIN_LAYOUT

…and I also had to add to Conditionals_LCD.h

#ifndef SPI_SPEED
  #define SPI_SPEED SPI_FULL_SPEED
#endif

What else is needed to get a successful test build?

@thinkyhead
Copy link
Member

I've added the non-working test for LULZBOT_TOUCH_UI to the DUE-tests file. Rather than wait for Travis to run the test, you can use the mftest script to run tests locally. If you can get a complete working build for DUE (or one of the other platforms) that will be useful for checking future changes.

@marcio-ao
Copy link
Contributor Author

This seems like it should not work:

  #define CLCD_MOD_RESET                 LCD_PINS_ENABLE
  #define CLCD_SPI_CS                    LCD_PINS_D4

…because these pins are not defined by any of the pins files unless a particular display is selected, and I don't see any special cases for these added to the pins files for the Lulzbot Touch UI. As a result, it looks like only the OTHER_PIN_LAYOUT will currently work for Travis testing.

On certain boards, I put in a special case in the pins files:

#if ENABLED(ULTIPANEL) || TOUCH_UI_ULTIPANEL

This only happens on the Archim 2 and the Rambo boards which Lulzbot uses. That said, running Travis with OTHER_PIN_LAYOUT is probably adequate.

@marcio-ao
Copy link
Contributor Author

I'll look into the other issues and see if I can find fixes.

@marcio-ao
Copy link
Contributor Author

It appears that the unicode/unicode.h header is expected, but it is not included if building for Marlin…

command_processor.h:313:42: error: 'has_utf8_chars' was not declared in this scope
       const bool is_utf8 = has_utf8_chars(text);

This was an error when compiling without TOUCH_UI_USE_UTF8. I pushed a fix. You can compile the UI with and without that flag, plus with or without a bunch of other flags. So many permutations to test...

marcio-ao and others added 6 commits October 9, 2019 11:10
- It is not possible to index into a constexpr array if the index is unknown at compile-time.
- Making an const array would require wasting bytes in PROGMEM.
@thinkyhead thinkyhead merged commit dc14d4a into MarlinFirmware:bugfix-2.0.x Oct 10, 2019
rolkun pushed a commit to rolkun/Marlin that referenced this pull request Oct 25, 2019
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.

None yet

2 participants