dccharacter писал(а):Т.е. у тебя и эндстоп работает и проб?
Да. Нижний эндстоп работает только при тестах. На него выводишь датчик Холла.
В pins.h прописываешь
- Код: Выделить всё • Развернуть
#define Z_PROBE_PIN 14
Это бывший y min концевик, его соотв. делаешь -1:
- Код: Выделить всё • Развернуть
#define Y_MIN_PIN -1 //14
В Marlin_main.cpp в void setup() добавляешь инициализацию пина:
- Код: Выделить всё • Развернуть
pinMode(Z_PROBE_PIN, OUTPUT);
digitalWrite(Z_PROBE_PIN, LOW); // turn it off
Желательно везде удалить все что относится к хоббийным сервам: servo_init(), Servo.cpp, Servo.h. Этой жести не место в 3д принтере.
Функции static void engage_z_probe() и static void retract_z_probe() меняешь на:
- Код: Выделить всё • Развернуть
static void engage_z_probe() { //lower z probe
digitalWrite(Z_PROBE_PIN, HIGH);
delay(PROBE_SERVO_DEACTIVATION_DELAY);
}
static void retract_z_probe() { // raise z probe
digitalWrite(Z_PROBE_PIN, LOW);
delay(PROBE_SERVO_DEACTIVATION_DELAY);
}
А, да, PROBE_SERVO_DEACTIVATION_DELAY надо вытащить из "#ifdef ENABLE_AUTO_BED_LEVELING", или задержку цифрами вместо PROBE_SERVO_DEACTIVATION_DELAY
Если надо отдельно щупом управлять, то:
- Код: Выделить всё • Развернуть
case 31: //
{
engage_z_probe(); // Engage Z Servo
}
break;
case 32: //
{
retract_z_probe(); // Retract Z Servo
}
break;
Только проверяй чтоб не попадало в условную компиляция #ifdef...
А вот если делать без ENABLE_AUTO_BED_LEVELING, совсем долго рассказывать, легче причесать и где-нибудь выложить.
Это все описано в ссылках из этой темы, например:
http://community.robo3d.com/index.php?t ... k-r1.3864/