Closed ASTuser1 closed 1 year ago
BTW: #define U8GLIB_SSD1306
results in: "Marlin\src\inc\Warnings.cpp:67:4: warning: #warning "Your Configuration provides no method to acquire user feedback!" [-Wcpp]"
Where idK if this caused by a missing input definition - Rotary encoder or in my case, simple buttons, which are not defined yet, because idk where to look at - or a hint that output cannot be shown to a display, Could be issued by both, as i read somewhere else.
results in no connection to the board via Serial (i suppose it hangs).
Just curious - i´ve redefinded u8glib_SSD1306 in configuration.h - according to STM32CubeIDE, loaded firmware-ELF - in this dropdown list (sorry for the quality) i cannot see any file that is called "u8glib" or "wire" - does that automatically mean that these librarys are not included at all at buildtime? If so, what could be the cause?
This issue has had no activity in the last 60 days. Please add a reply if you want to keep this issue active, otherwise it will be automatically closed within 10 days.
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.
Bug Description
Since i´m unable to register on reprap.org, i unfortunaly have to write down here my issue. On my Creality- CR-100 (not 10) i was trying to run an 16*2 HD44780, attached to an PCF8574 I/O-Extender, on I2C2 (PB10/11) of an original STM32F103RET6 by #define LCM1602 in configuration.h, but with no luck -there is no activity on PB10/11 on my logic analyzer. I2C1 cannot be used, its Pins are connected by default to the stepper drivers (PB8 to X-Axis DIR, PB9 to Y-Axis-STEP).
I use Marlin 2.1.2, VSCode & PlatformIO (both installed around one week ago), Marlin Autobuild, Board Creality_V422, Pins stm32F1/Pins_Creality_V422.h (adjusted to my board), Build for Environment STM32F103RE_creality (512k)
I was also trying to make adjustments in peripheralPins.c of Generic_F103Rx (edit 01/05/23: and Marlin_F103Rx), Section I2C, leaving only PinMap_I2C_SDA attached to PB11 and PinMap_I2C_SCL to PB10.
Originally it says there (sorry, my mistake, at first i had posted a modified Version of mine) :
`
ifdef HAL_I2C_MODULE_ENABLED
WEAK const PinMap PinMap_I2C_SDA[] = { {PB_7, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, AFIO_NONE)}, {PB_9, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, AFIO_I2C1_ENABLE)},
if defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)
{PB_11, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, AFIO_NONE)},
endif
{NC, NP, 0} };
endif
ifdef HAL_I2C_MODULE_ENABLED
WEAK const PinMap PinMap_I2C_SCL[] = { {PB_6, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, AFIO_NONE)}, {PB_8, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, AFIO_I2C1_ENABLE)},
if defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)
{PB_10, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, AFIO_NONE)},
endif
{NC, NP, 0} };
endif
`
What i also miss is a "AFIO_I2C2_ENABLE" or something in that direction.
BTW: In MarlinF103Rx\variant.h , Line 93, PB11 is assigned to LED-Builtin by default. `
ifndef LED_BUILTIN
define LED_BUILTIN PB11
endif
`
HAL-I2C-Module seems to be enabled, because if i write some pointless stuff inside #ifdef HAL_I2C_MODULE_ENABLED as shown above, compiling will stop.
Definitions in configuration.h /configuration_adv are as follows:
define DISPLAY_CHARSET_HD44780 JAPANESE
define LCD_INFO_SCREEN_STYLE 0
define SLIM_LCD_MENUS
define LCM1602 (or LCD_SAINSMART_I2C_1602, seems to be the same)
From factory this Board had an small 0,96-OLED Display with an SSD1306-Controller attached to I2C2 and was already running Marlin, but i have no clue which version. Defining U8GLIB_SSD1306 instead of LCM1602 in order to get at least the original Dispaly working doesn´t work either, no I2C-Activity.
Creality hasn´t / won´t give out the Sources (we know they actually have to; the Fimware Creator is called "BiSun"); i only have the already compiled original .bin-File available.
The Board is a very stripped down Version and "somehow" related to the Creality V422-Board, uses 4*A4988 Steppers, has the usual connectors, provides a CH340 für USB Communiction/Programming, has a SD Slot, but is missing components and connectors for a headbed, Fan-PWM-Control, has no external I2C-EEPROM and uses a different Pin for the Nozzle-Thermistor. It also uses PB14/13/12 for three control buttons and no rotary encoder.
IdK if this is a Bug or simply lack of my knowledge. I´m an long term Assembly-programmer (from 8 Bit up to Cortex), not a C++-Programmer, but i cannot debug the ELF-Debug-File down to the problem, since i don´t have a Hardware debugger for STM32 (i have only a simple CortexM3-Debugger in Software) and the output is too entangled for tracing.
BTW: Compiling with Serial Port set on 115200 doesn´t let me connect to the board, 250KBaud just works fine.
Best regards & thank you!
Bug Timeline
No response
Expected behavior
Having output on Display
Actual behavior
nothing
Steps to Reproduce
No response
Version of Marlin Firmware
2.1.2
Printer model
Creality CR-100
Electronics
Stock
Add-ons
No response
Bed Leveling
None
Your Slicer
None
Host Software
None
Don't forget to include
Configuration.h
andConfiguration_adv.h
.Additional information & file uploads
Marlin.zip