Доделал проект с дисковым телефоном (Arduino Nano + SIM800L).
При поднятии трубки звучит непрерывный сигнал 425Гц, если трубку положить сигнал прекращается.
Если при поднятой трубке начать набирать номер, то сигнал тоже прекращается и вводятся цифры. Можно ввести до 11 цифр (любое количество, хоть трехзначный, хоть шестизначный номер). Если пауза после ввода цифры превышает 4 секунды, то происходит его набор.
Если положить трубку, то происходит сброс номера и отбой линии. Цикл повторяется заново.
Есть возможность добавлять номера быстрого набора (например при наборе только "1" через 4 секунды происходит набор 11-ти значного номера забитого в скетче.
Так-же есть преобразование коротких номеров "01", "02", "03" в "101","102","103".
Функцию "хранения" цифр" при наборе номера реализовал через "счетчики", мне показалось это более универсальным.
Обмотку катушки звонка демонтировал, вместо нее подключил моторчик на 5В с эксцентриком, который толкает молоточек (фото).
При загрузке ардуины перезагружается SIM800L
Микрофон взял от старого мобильного телефона (перепробовал несколько разных- идут наводки, а в этом видимо есть какая-то защита) c ним наводок нет.