The display with module looks just like "REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER" , with buzzer, and rotary switch.
The pinout on EXT1 (the only one) is:
1: +5v , positive side of the buzzer, backlit
2: GND , used for misc devices/switches.
3: RW (5th pin of LCD module)
4: RS (4th pin of LCD module)
5: E (6th pin of LCD module)
6: rotary switch rotation data
7: switch two (reset ?) - not used
8: rotary switch rotation data
9 rotary switch button
10: via resistor to gate of Q1, emitter of Q1 is connected to GND, collector to buzzer(negative) - so this pin drives the beeper.
is if feasible to make the display, buzzer, rotary switch work on EXT1 ? (it's mechanically compatible, fits right in, the question is whatever it is a major task to support that hardware)
I could give it a shot by modifying pins_ANET_10.h , but one of my problems now is the correlation between EXT1 pin 5 and pin number in "defines" , aka, I need to know the firmware pin number of all EXT1 pins..
What controller are you using?
What display are you using?
The controller is an CR-10S upgrade (apparently fully RAMPS_14_EFB compatible)
https://www.ebay.com/itm/Creality-Upgrade-CR-10S-S4-S5-3D-Printer-Motherboard-Circuit-Control-Board-B2Q8/183101852072?hash=item2aa1b889a8:g:QXUAAOSwL7ValXTX
The display comes with A10 printers: (basically a CR-10 clone)
These are the pin names you'll need to use, assuming it's a clone/derivative of the REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
Marlin name The pinout on EXT1 (the only one) is:
1: +5v , positive side of the buzzer, backlit
2: GND , used for misc devices/switches.
LCD_PINS_D4 3: RW (5th pin of LCD module)
LCD_PINS_RS 4: RS (4th pin of LCD module)
LCD_PINS_ENABLE 5: E (6th pin of LCD module)
BTN_EN1 6: rotary switch rotation data
KILL_PIN 7: switch two (reset ?) - not used
BTN_EN2 8: rotary switch rotation data
BTN_ENC 9: rotary switch button
BEEPER_PIN 10: via resistor to gate of Q1, emitter of Q1
If the encoder direction is reversed then switch BTN_EN1 & BTN_EN2.
None of these signals are special. they can be assigned to any pin except SCK, MOSI & MISO. Those are usually reserved for the SD card.
If you don't know the logical pin numbers on the controller connector you can use the M43 commands to figure that out. M43 is enabled by the PINS_DEBUGGING flag in Configuration_adv.h
(sorry still editing)
M43 is a great tool.
changed pins_ANET_10.h like this:
#elif ENABLED(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER) || ENABLED(ANET_FULL_GRAPHICS_LCD)
// Pin definitions for the Anet A6 Full Graphics display and the RepRapDiscount Full Graphics
// display using an adapter board // https://go.aisler.net/benlye/anet-lcd-adapter/pcb
// See below for alternative pin definitions for use with https://www.thingiverse.com/thing:2103748
#define SERVO0_PIN 30//29 // free for BLTouch/3D-Touch
#define BEEPER_PIN 37//17
#define LCD_PINS_RS 27
#define LCD_PINS_ENABLE 25//28
#define LCD_PINS_D4 29//30
#define BTN_EN1 23//11
#define BTN_EN2 17//10
#define BTN_ENC 35//16
#define ST7920_DELAY_1 DELAY_0_NOP
#define ST7920_DELAY_2 DELAY_1_NOP
#define ST7920_DELAY_3 DELAY_2_NOP
#define STD_ENCODER_PULSES_PER_STEP 4
#define STD_ENCODER_STEPS_PER_MENU_ITEM 1
#endif
I should have it working now, but something isn't
still, M43 displays BTN_EN1/2 input as:
PIN: 17 Port: H0 LCD_PINS_ENABLE
PIN: 23 Port: A1 LCD_PINS_D4
my display is defined as REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER , so I fail to see how this is possible..
attaching my configuration.h
Configuration.zip
I've measured everything end-to-end, If I were able to define pins correctly - it should have worked.
those defines, if they have been actually compiled, would work:
I find the "LCD_PINS_D4" name to be a strange label for RW on ST7920 , assuming it's a cosmetic issue only.
#define BEEPER_PIN 37
#define LCD_PINS_RS 27 //"RS" on display
#define LCD_PINS_ENABLE 25 // "E" on display
#define LCD_PINS_D4 29 // "R/W" on display
#define BTN_EN1 23
#define BTN_EN2 17
#define BTN_ENC 35
I've tried to cram them in the beginning of Configuration.h without success
I've tried to cram them in the beginning of
Configuration.hwithout success
It's cleaner if you put them into the pins file for your board. The compiler will complain if they are given values in config and then the pins file tries to define them again with different values.
As you can see from previous post, I already tried to modify correct LCD
defines.
Du you mean to change the board (like ramps) ? I can do, did not found LCD
related pins there, and knew it would cause redefine-warnings too.
Those printers I try to update are cheap and popular, hope to first
succeed, then maki it correct as more people will surely want the support.
On Sun, 20 May 2018, 19:00 Scott Lahteine, notifications@github.com wrote:
I've tried to cram them in the beginning of Configuration.h without
successIt's cleaner if you put them into the pins file for your board. The
compiler will complain if they are given values in config and then the pins
file tries to define them again with different values.—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/MarlinFirmware/Marlin/issues/10785#issuecomment-390496066,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABZpqiuJUq-t8JmS-sove4uGsJPEu7JXks5t0aEQgaJpZM4UFyJY
.
Do you have the logical pin numbering for the controller side?
A pin diagram will do. A schematic is even better.
Without those then you can use the M43 W I and M43 T I commands to figure out the logical pin mapping.
I'd start with *M43 W I *. This command just watches the pins and reports any changes of state. What I do is plug one end of a jumper into ground and then touch the unknown pins with the other. 75% of the time the display will report the logical pin number and the signals assigned to it.
The M43 T I command toggles pins. I attach an LED to the unknown pin and then start the command toggling pins. When I see the LED flash I look at the display and note the number. Usually I'm too slow to catch the correct number so I'll re-start the test over a much smaller range at a slower rate.
```
*
After much narrowing-down by looking at other displays, I realized that this display is already supported as CR10_STOCKDISPLAY
:)
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.