dev2 and Rumba32, Servo pins not working after restructuring board files
Hello,
had a break in upgrading my selfmade cartesian from rumba to rumba32 board.
In my tests one year ago I downloaded the repetier firmware dated 2020_11_05.
A lot of the features including BLTouch and a second connected servo were working.
Now I downloaded the firmware at 2022_02_04, tried to merge the config files, an did some tests.
Both servo signals at the Board pins PA_4 and PD_14 are missing now (checked also with an oszilloscope).
I'm using one for BLTouch and one for a planned extruder lift.
Here are the relevant config parts regarding servos, I used them at both versions:
configuration_io.h, my adoptions 2020_11_05 based on Sample Delta with Rumba32:
// Servo for z-probe
IO_OUTPUT(Servo1Pin, 4)
SERVO_ANALOG(ZProbeServo, 0, Servo1Pin, 500, 2500, 1473)
// Servo for Extruderlift
IO_OUTPUT(Servo2Pin, PD14)
SERVO_ANALOG(ExtruderLiftServo, 1, Servo2Pin, 500, 2500, 1473)
configuration.h, my adoptions 2020_11_05
#define NUM_SERVOS 2
#define MOTHERBOARD MOTHERBOARD_RUMBA32
#define SERVO_LIST \
{ &ZProbeServo, &ExtruderLiftServo}
The rest of the files are original version 2022_02_04
Found, that in 2022_02_04\src\Repetier\buildroot\boardFiles\rumba32\variant.h there is:
#define HAL_DAC_MODULE_ENABLED
...and in 2022_02_04\src\Repetier\buildroot\boardFiles\rumba32\PeripheralPins.c there is a section:
#ifdef HAL_DAC_MODULE_ENABLED
const PinMap PinMap_DAC[] = {
{PA_4, DAC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // DAC_OUT1
{PA_5, DAC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // DAC_OUT2 - LD2
{ NC, NP, 0 }
};
#endif
Trying to set HAL_DAC_MODULE_ENABLED to undefined (like in version 20201105) produces compiler errors.
Tried to just comment the PA_4 line didn't help either.
So I need to ask for help.
had a break in upgrading my selfmade cartesian from rumba to rumba32 board.
In my tests one year ago I downloaded the repetier firmware dated 2020_11_05.
A lot of the features including BLTouch and a second connected servo were working.
Now I downloaded the firmware at 2022_02_04, tried to merge the config files, an did some tests.
Both servo signals at the Board pins PA_4 and PD_14 are missing now (checked also with an oszilloscope).
I'm using one for BLTouch and one for a planned extruder lift.
Here are the relevant config parts regarding servos, I used them at both versions:
configuration_io.h, my adoptions 2020_11_05 based on Sample Delta with Rumba32:
// Servo for z-probe
IO_OUTPUT(Servo1Pin, 4)
SERVO_ANALOG(ZProbeServo, 0, Servo1Pin, 500, 2500, 1473)
// Servo for Extruderlift
IO_OUTPUT(Servo2Pin, PD14)
SERVO_ANALOG(ExtruderLiftServo, 1, Servo2Pin, 500, 2500, 1473)
configuration.h, my adoptions 2020_11_05
#define NUM_SERVOS 2
#define MOTHERBOARD MOTHERBOARD_RUMBA32
#define SERVO_LIST \
{ &ZProbeServo, &ExtruderLiftServo}
The rest of the files are original version 2022_02_04
Found, that in 2022_02_04\src\Repetier\buildroot\boardFiles\rumba32\variant.h there is:
#define HAL_DAC_MODULE_ENABLED
...and in 2022_02_04\src\Repetier\buildroot\boardFiles\rumba32\PeripheralPins.c there is a section:
#ifdef HAL_DAC_MODULE_ENABLED
const PinMap PinMap_DAC[] = {
{PA_4, DAC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // DAC_OUT1
{PA_5, DAC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // DAC_OUT2 - LD2
{ NC, NP, 0 }
};
#endif
Trying to set HAL_DAC_MODULE_ENABLED to undefined (like in version 20201105) produces compiler errors.
Tried to just comment the PA_4 line didn't help either.
So I need to ask for help.
Do you recommend to use other pins to connect BLTouch and the extruderlift servo?
Thanks in advance!
Comments
In the github Version downloaded Nov 2020 the following pins can be used: PA4, PD12, PD13, PD14, PD15.
So if you have not set SERVO_TIMER_NUM in configration.h it is timer 9 and you should not use timer 9 for any pwm output. In docs you see which pins use that timer if hardware pwm is selected. From comment I guess it was 13 before. Any unused timer is allowed, so can you set it to that if 9 and 13 have conflicts. If that does not help I will try to find some time to test. Maybe my bltouch is not defect and I then have same problem.
As said, I have a working version and a non working version
If I can do some tests to find the reason, let me know