Проще всего найти ошибку это проверить работу отдельных кусков скетча, убрав остальной код.
После этого, если все работает по отдельности, к одному куску добавляете второй кусок, если работает - добавляете следующий кусок, если перестало работать, разбиваете кусок на более мелкие куски, нп...