Commit Graph

263 Commits

Author SHA1 Message Date
Scott Lahteine
a0c795b097
Encapsulate common display code in a singleton (#12395)
* Encapsulate common LCD code in a singleton
* Depend more UBL code on UBL_DEVEL_DEBUGGING
  - Since most users don't need the debugging on at all times, this helps reduce the default build size for UBL by over 2K, a little closer to fitting on 128K boards.
2018-11-11 12:16:24 -06:00
Scott Lahteine
471f403a67 Reduce code size with plain inlines 2018-11-11 08:36:10 -06:00
Scott Lahteine
4e0c935959 Update HAL and libs formatting 2018-11-10 19:43:23 -06:00
Scott Lahteine
b99f0776d6 Clean up some U8G files 2018-11-04 18:30:10 -06:00
Scott Lahteine
9c0e05552e Suppress some compile warnings 2018-11-04 15:25:31 -06:00
Scott Lahteine
56d2dcb184 Use first_page flag in place of page.page == 0 2018-11-03 06:59:21 -05:00
Scott Lahteine
31c28d0dd2
Drop pgm_read_*_near and let headers choose (#12301)
- Drop `pgm_read_*_near` and let headers choose.
- Define `USE_EXECUTE_COMMANDS_IMMEDIATE` as a conditional.
- Add `process_subcommands_now` for SRAM-based commands.
2018-11-02 00:42:16 -05:00
MasterPIC
6e041b9c61 Use blink to show more info on LCD (#12256) 2018-11-01 15:56:12 -05:00
N95JPL
b780b69c62 Use font ascent and descent for line positioning (#12224) 2018-10-30 22:39:44 -05:00
Scott Lahteine
9cd3529108 Organize language data, fix Korean and Danish 2018-10-30 20:41:16 -05:00
Karl Andersson
1946f729fd STM32 FastIO using register access (#12276) 2018-10-30 19:25:44 -05:00
Scott Lahteine
3583e2b449
Followup to Menu Refactor (#12275) 2018-10-30 16:34:45 -05:00
Scott Lahteine
37ff663b02 Convert LIGHTWEIGHT_UI to CPP 2018-10-28 15:46:45 -05:00
Scott Lahteine
a964f098b3 Make dogm status screen a CPP 2018-10-28 15:46:45 -05:00
Scott Lahteine
8055ed24ff Move font data to a subfolder 2018-10-28 15:46:45 -05:00
Scott Lahteine
774a6e8199 Drop TALL_FONT_CORRECTION 2018-10-28 15:46:45 -05:00
Scott Lahteine
c825c419d4 Convert DOGM / HD44780 impl to CPP files 2018-10-28 15:46:45 -05:00
Scott Lahteine
2bf18950ab Refactor LCD menus 2018-10-28 15:46:45 -05:00
Karl Andersson
c1e8bd6add Remove STM32 board-specific delays (#12243)
...and replace with delays for all HAL_STM32 boards.
2018-10-27 17:26:12 -05:00
Scott Lahteine
dacb5324e8 Fix display of Y on Graphical LCD 2018-10-26 01:43:47 -05:00
Karl Andersson
b640b3b0d6 Define ST7920 delays for board ARMED (#12161) 2018-10-20 13:12:54 -05:00
Scott Lahteine
c6a5c74208 Add parentheses to SD macros 2018-10-19 13:52:57 -05:00
Scott Lahteine
67a3c5a16a
Alternative info screen (Prusa-style) (#12132)
* Fix Z value display
* Add HAS_PRINT_PROGRESS
* Alternative Info Screen option
* Add LCD_INFO_SCREEN_STYLE to example configs
2018-10-18 11:34:52 -05:00
Scott Lahteine
6bdbe3299e Fix a comment 2018-10-17 10:33:54 -05:00
Scott Lahteine
9b6be0ae0f Fix lite status screen SD % 2018-10-12 17:02:59 -05:00
Marcio Teixeira
ec9aa4f468 [2.0.x] Miscellaneous fixes (#12039)
* Allow override of soft SPI pins in `pins_*.h`
* Add default case to avoid compiler warning.
* Additional pin definitions for Archim 2.
* Einsy Retro has same timings as Einsy Rambo.
2018-10-08 18:14:52 -05:00
Scott Lahteine
d5017e2788 Add status screen with 4 nozzles 2018-10-08 01:27:21 -05:00
Scott Lahteine
d6b0fbd771
Use uint8_t for all fan speeds (#12032) 2018-10-07 15:34:41 -05:00
Scott Lahteine
517b4f4cd4 Fix lightweight UI hotends display 2018-10-04 14:37:24 -05:00
Scott Lahteine
348004c34f
STM32F7 HAL using the official STM32 Arduino Core (#11750) 2018-10-03 03:26:07 -05:00
brian park
2abf3d258d Korean language translation support (#11987) 2018-10-03 01:53:34 -05:00
Scott Lahteine
11ac75edcb
Use PGM_P for PSTR pointers (#11977) 2018-09-30 23:44:33 -05:00
Marcio Teixeira
0f14977b5d LIGHTWEIGHT_UI: Allow feedrate % to exceed 255% (#11656)
- Changed type of integer used for feedrate percentage from uint8_t to uint16_t.
2018-08-27 21:26:32 -05:00
Scott Lahteine
a15e570d3b Fix SD progress with Lite Status Screen
Co-Authored-By: Lê Hoàng <icy.lord.love.angel@gmail.com>
2018-08-26 17:12:05 -05:00
jneilliii
3671c63cde Einsy Full Graphic LCD Fix (#11604)
Fixed issue with LCD timings for Einsy RAMBo board.
2018-08-21 23:43:52 -05:00
Dave Johnson
c64199941e Compile only selected PIO environment (#11519) 2018-08-14 03:28:52 -05:00
Marcio Teixeira
f2224755ad Fix jumping progress bar. (#11439)
- When LCD_SET_PROGRESS_MANUALLY was disabled and an SD print was not active (i.e. the printer was idle), progress_bar_percent would read uninitialized memory from stack and cause progress bar to jump wildly.
- Also updated conditions in `#ifdef` to match `ultralcd.cpp`
2018-08-03 17:17:02 -05:00
etagle
1367df2875 Replace double with float, optimize calculation 2018-07-04 22:28:56 -05:00
Scott Lahteine
f2c3b0d476 Use bit flags for homed/known 2018-06-11 22:05:16 -05:00
Scott Lahteine
779d4a17a0 Highlight 64128N and common ST7565 difference
Followup to #10920, addressing #10962
2018-06-09 19:18:41 -05:00
Scott Lahteine
334341c632
Hephestos config updates (#10960) 2018-06-07 21:23:55 -05:00
Giuliano
eb1026d438 [2.0.x] Fix compile warning (#10931) 2018-06-05 22:44:34 -05:00
Scott Lahteine
61181b7f24 Add macros for ST7565 commands 2018-06-02 20:48:44 -05:00
Scott Lahteine
d259070980 Clean up trailing spaces from vim, etc. 2018-05-31 00:09:41 -05:00
Eduardo José Tagle
6f330f397e [2.0.x] Buffer overflow and scroll fix, UTF8 cleanup (#10844) 2018-05-25 23:32:37 -05:00
Scott Lahteine
d74e333c0f Make sure FAN_ANIM_FRAMES is defined 2018-05-25 05:28:50 -05:00
Scott Lahteine
5f8591528e Remove #pragmas that don't help c files 2018-05-23 23:47:16 -05:00
Scott Lahteine
c89649b46e Suppress U8glib build warnings 2018-05-23 02:47:36 -05:00
Scott Lahteine
fb608938f8 Prevent compilation of unused u8g-oriented code 2018-05-14 13:31:04 -05:00
Scott Lahteine
083ec9963e Tweaks to heater / lcd conditions 2018-05-13 04:52:56 -05:00
etagle
9d98a62699 Followup to HAL optimizations and delays
- Cleanups, fixes for Due HAL code.
- TC_IER is write-only. Use TC_IMR to test ISR state.
2018-05-13 00:46:23 -05:00
Scott Lahteine
a1062eec5b
Better handling of DELAY_NS and DELAY_US (#10716)
Co-Authored-By: ejtagle <ejtagle@hotmail.com>
2018-05-12 08:34:04 -05:00
Scott Lahteine
265161ba30
Blink the value for unhomed/unknown axes (#10670) 2018-05-10 01:19:20 -05:00
Scott Lahteine
d1b619be52 Standardize some hexadecimals 2018-05-08 09:19:18 -05:00
Scott Lahteine
ec05408453
Add 3-frame fan animation to bitmaps (#10654) 2018-05-08 09:06:01 -05:00
Bob-the-Kuhn
410b023b50 [2.0.x] Add Viki support to RAMPS_FD_V1 (DUE) (#10598) 2018-05-02 07:54:06 -05:00
Scott Lahteine
9e0d99c0c6
Round all floats in string conversion functions (#10566) 2018-04-29 00:51:36 -05:00
Scott Lahteine
cb46cb8480
Add HAS_HEATED_BED conditional (#10495) 2018-04-23 17:13:01 -05:00
Scott Lahteine
8ca3c43d73 Updated language_data spacing, headers 2018-04-19 06:16:16 -05:00
Scott Lahteine
184c077c58 Correct includes (u8g.h) and spelling 2018-04-19 06:16:16 -05:00
Yunhui Fu
77bc653524 Use X windows 6x12 bitmap font to support western languages. 2018-04-19 06:16:15 -05:00
Yunhui Fu
d81649b365 Update language data for sk. 2018-04-19 06:15:19 -05:00
Chris Pepper
744bcaee61 [2.0.x] Fix problems compiling with Arduino IDE (#10441)
* Fix problems compiling u8glib utf8 support on Arduino
* Change header in auto-generated font data
* Change include in font gen scripts
2018-04-17 17:28:55 -05:00
Scott Lahteine
584735c994 u8g.h => clib/u8g.h 2018-04-14 12:26:01 -05:00
Yunhui Fu
c96412a78f [2.0.x] UTF-8 language translation support (#10213) 2018-04-12 20:14:01 -05:00
Scott Lahteine
a6485456df Fix LIGHTWEIGHT_UI with UBL
See https://github.com/MarlinFirmware/Marlin/issues/10317#issuecomment-379100702
2018-04-08 03:24:22 -05:00
Marcio Teixeira
c24dbcbfe1 When STATUS_EXPIRE_SECONDS is 0, hide the position. (#10081)
Some users may prefer to hide the position updates on the `LIGHTWEIGHT_UI` altogether. This leads to an even less cluttered display (it also saves on SPI traffic and one byte of RAM).
2018-03-14 02:44:30 -05:00
Bob-the-Kuhn
0d8c15c01f restore PR 9661 files & V1 fix 2018-03-10 22:46:32 -06:00
Bob-the-Kuhn
bf59a4a6df
Revert "[2.0.x] DUE compatibility with shared SPI LCDs, USB mass storage, add pin defs & update examples\MakerParts\Configuration.h" 2018-03-10 17:22:20 -06:00
Bob-the-Kuhn
914bb80bde removed SDSS init
added device & comm drivers for shared SPI LCDs

mistyped some updates in ultralcd_impl_DOGM.h

remove unwanted changes in onfiguration.h

still can't type

Update HAL_LCD_class_defines.h

include USB mass storage & misc
2018-03-09 23:06:11 -06:00
Scott Lahteine
ca577c1638 Fix up various spacing, comments, and typos 2018-03-07 21:09:08 -06:00
Marcio Teixeira
fd883c909a Improvements to Lightweight ST7920 status screen. (#9952)
- Show units on lightweight status screen.
- Fixed progress bar so it works with M73
2018-03-06 01:49:36 -06:00
Scott Lahteine
8f9262f3fe Fix path to _Statusscreen.h 2018-02-23 09:06:06 -06:00
Scott Lahteine
0542b03750 Fix bootscreen include path
Fix #9759
2018-02-23 01:59:35 -06:00
Marcio Teixeira
532bb3aaa1 Lightweight status screen for ST7920
- This status screen uses the ST7920 character generator to greatly
  reduce SPI traffic and MCU load when updating the status screen.

- Has been tested with the RepRapDiscount Full Graphics Smart Controller
  but should work with any LCD that uses an ST7920 or fully compatible
  controller.
2018-02-22 00:10:43 -06:00
Bob-the-Kuhn
47d529aac5 move #include <U8glib.h> 2018-02-19 17:39:40 -06:00
Scott Lahteine
bf5df306e1 Fix compile error with SHOW_BOOTSCREEN disabled
Fix #9530
Fix #9524
2018-02-17 00:52:08 -06:00
Bob-the-Kuhn
9a423e9a89 tested 2018-02-13 21:59:18 -06:00
Thomas Moore
e1fd9c08b3 [2.0.x] Add support for LPC1769 at 120 MHz (#9423) 2018-02-03 19:33:26 -06:00
Scott Lahteine
79796b22ad Fix up _Bootscreen.h and _Statusscreen.h 2018-02-02 00:57:16 -06:00
Bob-the-Kuhn
21179f8300 Fix the "slow" version of the G-code parser 2018-02-02 00:35:58 -06:00
Scott Lahteine
6339b506c0 Make sure binary.h is included as needed 2018-02-01 21:37:35 -06:00
Scott Lahteine
fa432508b0 Followup to Ender config 2018-01-15 06:00:21 -06:00
Scott Lahteine
f887719a40 Creality Ender board support 2018-01-15 03:42:24 -06:00
GMagician
5fb6dd1424 Bmp fix
Clockwise arrow fixed
2018-01-06 19:02:36 +01:00
Bob-the-Kuhn
4626d04067 as good as i can get it
minor edits to force new Travis test (last one timed out)

Update u8g_com_HAL_DUE_st7920_sw_spi.cpp

initial power up display garbage gone
2018-01-03 22:46:31 -06:00
Scott Lahteine
1a827d5b68 Opening brace tweaks 2017-12-25 09:34:43 -06:00
Bob-the-Kuhn
a142fab155 Enable RRDFGSC on Due 2017-12-25 09:22:14 -06:00
etagle
99b2fc2066 Adjusted timings on the ST7290 u8glib so RE-ARM and RAMPS4DUE have no problems when writing to the graphics LCD. This fixes Issue #8787 - Special thanks to Bergerac56 for testinf this out !!! 2017-12-21 02:33:22 -03:00
Scott Lahteine
de5ca96654 More parity with 1.1.x, plus whitespace 2017-12-19 18:36:16 -06:00
Eduardo José Tagle
ac168a03c8 Fixes for the Arduino DUE HAL (Serial Port, Graphics Display, EEPROM emulation) (#8651)
* Fixing the DUE serial port assignments: Now -1 means the SAM3x USB Device emulating a serial port, and 0 means the USB to serial adapter included as a programming port

* Improving the Fast IO port access implementation on Arduino DUE

* Implemented EEPROM emulation on Due by storing data on the internal FLASH (with wear leveling)

* Implemented a Software SPI for the ST7920 graphics display for the Arduino RAMPS for DUE, as the default one in u8glib is clocking data too fast on ARM, and the display does not understand it.

* Fixing the case where the serial port selected is the USB device

* Adding configuration for the Makerparts 3D printer (www.makerparts.net)

* Tuned MakerParts acceleration on X and Y axis so it never loses steps. Also adjusted pulses per mm to match default hw configuration

* Fine tuned Maximum acceleration for MakerParts printer

* Style cleanup

* Style cleanup (2)

* Style fixes (3)

* Fixing the DUE serial port assignments: Now -1 means the SAM3x USB Device emulating a serial port, and 0 means the USB to serial adapter included as a programming port

* Improving the Fast IO port access implementation on Arduino DUE

* Implemented EEPROM emulation on Due by storing data on the internal FLASH (with wear leveling)

* Implemented a Software SPI for the ST7920 graphics display for the Arduino RAMPS for DUE, as the default one in u8glib is clocking data too fast on ARM, and the display does not understand it.

* Fixing the case where the serial port selected is the USB device

* Adding configuration for the Makerparts 3D printer (www.makerparts.net)

* Tuned MakerParts acceleration on X and Y axis so it never loses steps. Also adjusted pulses per mm to match default hw configuration

* Fine tuned Maximum acceleration for MakerParts printer

* Style cleanup

* Style changes to u8g_dev_st7920_128_64_sw_spi.cpp

* Even more improvements to the FastIO HAL for DUE. Now WRITE() is 2 ASM instructions, if value is constant, and 5 cycles if value is not constant. Previously, it was 7..8 cycles

* After some problems and debugging, seems we need to align the interrupt vector table to 256 bytes, otherwise, the program sometimes stops working

* Moved comments out of macro, otherwise, token pasting does not properly work sometimes

* Improved Software SPI implementation on DUE: Now it honors the selected speed passed to spiInit(). This allows much faster SDCARD access, improving SDCARD menus and reducing latency

* Update u8g_dev_st7920_128_64_sw_spi.cpp

* Disabling EEPROM over FLASH emulatiion if an I2C or SPI EEPROM is present
2017-12-12 17:51:36 -06:00
Scott Lahteine
4d3c3d0b73 Some ST7920 parity with 1.1.x
Possibly more should be brought over? Discussion at #8471
2017-12-05 02:22:36 -06:00
Bob-the-Kuhn
fc40d56131 fixed error, updated defaults, added notes
Travis fix - only allow ultralcd_st7920_u8glib_rrd_AVR.cpp to compile when ST7920 selected
2017-11-25 12:35:03 -06:00
Scott Lahteine
1ef1052ae1 Phatter arrows for Z offset overlay 2017-11-24 15:53:25 -06:00
Scott Lahteine
5926c9c97b Followup for MESH_EDIT_GFX_OVERLAY 2017-11-24 15:53:25 -06:00
Scott Lahteine
81bc428b48 Don't compile custom u8g without DOGLCD 2017-11-19 13:58:38 -06:00
Scott Lahteine
81b91b3f9d Clean up some trailing white-space 2017-11-10 02:31:04 -06:00
Bob-the-Kuhn
d47fbf791b Arduini IDE compatibility changes
changed includes to make Arduino IDE happy
2017-11-08 20:49:49 -06:00
Bob-the-Kuhn
0483a7df91 AVR RRD works
LPC1768 VIKI2 & RRDFG are working

looks like all SPIs are working

library change

sh1106 locks up

fixed lockup, started I2C SW com

pretty

re-org

restore a few files

make library happy

switched HAL version of rrd

fix travis error

travis error fixes

another travis fix

cleanup

minor update

one more

correct spacing in platformio.ini
2017-11-07 18:40:29 -06:00
Scott Lahteine
e9b1944a67 Patch non-extended font option 2017-11-06 21:42:21 -06:00
android444
9cc1d8e312 [2.0.x] Support for SilverGate Board 2017-10-31 15:27:26 -05:00
Bob-the-Kuhn
229a27a1c7 save FLASH by using reduced font for some languages 2017-10-26 16:08:17 -05:00
cdedwards
6296ab2173 Add GFX overlay to UBL mesh edit (#8038)
* Add GFX overlay to UBL mesh edit

Fixed misplaced HAS_TEMP_BED in dogm_bitmaps.h

rename _lcd_babystep_zoffset_overlay to _lcd_zoffset_overlay_gfx and move it out of BABYSTEP_ZPROBE_OFFSET to we can use it for over things. Add this function into UBL mesh edit screen.

update all Configuration.h to add ENABLE_MESH_EDIT_GFX_OVERLAY

* Add Sanity to UBL  insanity

Need to check for DOGLCD  otherwise error out.
2017-10-24 14:14:03 -05:00
Jeffrey Li
3c8a3a02ba Fix include path for VIKI 2017-10-14 04:06:17 -07:00
Scott Lahteine
20ebe218c8 Tweaks to VIKI lcd support 2017-10-09 17:01:07 -05:00
Scott Lahteine
e9bcb9d048 Add 4 new LCD displays 2017-10-09 15:58:02 -05:00
Scott Lahteine
c0382cd8cd Add UTF-8 mapper for Slovak language
Based on #7862, #7846 by @rmoravcik
2017-10-06 15:14:01 -05:00
Chris Pepper
46b2773e13 General fixes for LPC1768 (#7834)
* fixed some include paths

* LPC1768: Fix Serial API

Add missing serial methods used if TX_BUFFER_SIZE is set
Change return value of HalSerial:read to match Arduino API

* LPC1768: add filters to ADC

This is to try and compensate for hardware issue and oversensitivity to noise

* LPC1768: remove the polling section of delayMicroseconds

* LPC1768: lock usb mass storage device while device accesses it.

Currently only applicable to persistent store,
The device always has priority and will unmount the sd card from the host, Windows then tries to automount again so it can look like the explorer window freezes. Linux Mint, by default, just closes the Nemo window.

* Add timeout to make sure if Serial never connects that Marlin still boots

* Remove unneeded ifdef CPU_32_BIT

In general the need for ifdef CPU_32_BIT blocks means that something is missing from the HAL API or a Platform, in this case HAL_TICKS_PER_US was missing from the AVR Platform

* LPC1768: relocate RE-ARM debug_extra_script.py
2017-10-04 15:40:54 -05:00
Christopher Pepper
bea3ec2724 M355 S0, S1 fixes & faster LCD, SD card
fix Travis error
2017-09-27 19:26:00 -05:00
Scott Lahteine
dff2904c0f Marlin code whitespace cleanup 2017-09-27 10:55:36 -05:00
Scott Lahteine
ce1638e32f Add Babystep Z graphic overlay
See PR #7593
2017-09-27 01:25:05 -05:00
Scott Lahteine
0fcec02db5 LCD updates 2017-09-21 16:26:42 -05:00
Scott Lahteine
cc92e544a5 Move 'lcd' files 2017-09-12 14:51:04 -05:00