October 14th, 2015
  • Stepper motor
  • 28BYJ-48
  • ULN2003

Stepper motor library

I've made it my quest to create OOP classes for Arduino. Read about that in this blogpost if you need some more context.

This library is created using the 28BYJ-48 stepper motor in combination with the ULN2003 driver board, but it will work with every 4 pin driver board for stepper motors.

  Scheme stepper motor  

This library lets you choose between three different step modes:

  • Half step mode
  • Full step single phase mode
  • Full step dual phase mode

If you want to know the differences between these modes, please look at this YouTube video explaining all three modes.

The 28BYJ-48 motor needs 512 full (inner) engine rotations to rotate the drive shaft once. In half-step mode these are 8 x 512 = 4096 steps for a full rotation, and in full-step mode these are 4 x 512 = 2048 steps for a full rotation.

Between every step the engine needs some time to move. You can specify this time as the step delay in milliseconds, which is 1ms by default. So when you increase the step delay, the motor turns slower.

When you've initialized the engine with a mode you can choose to let the motor run clockwise or counter clockwise continuously or only for a certain amount of steps. The library can call a method in the event the motor turned the requested amount of steps. See the example code which is in a subdirectory of the library.

Please note that full step mode may need an external power source in order to work. I use a PC power supply for this. You can use a red (5V) and a black wire from the power supply to power the driver board. To turn on a PC power supply you have to connect the green wire to one of the black wires. See my library to control a power supply here.

The stepper motor library can be found here on GitHub.
It uses the BaseTimedElement base class which can be found here on GitHub.

< Previous post Overview posts Next post >
К хронической тугоухости приводят: 1 https://smolsurdolog.ru/kontakty/g-voronezh/ Заушные слуховые аппараты (BTE) Важно понимать, что реабилитация — это не мгновенный процесс https://smolsurdolog.ru/katalog/zaushnye-slukhovye-apparaty/xtm-xp-p4-1-detail/ Даже после установки слухового аппарата или импланта человеку требуется адаптация и привыкание к новой форме поступления информации https://smolsurdolog.ru/novosti/372-s-nastupayushchim-mezhdunarodnym-zhenskim-dnem-8-marta/ Специа
ArturoLor, September 22nd, 2026
Чаще всего шаттерсы используют устанавливая их на окна, балконные и террасные двери, окна в пол, расположенные на южных, юго-западных и западных фасадах жилых и офисных зданий https://art-shutters.ru/info/gde-ispolzuyutsya-shattersy/ Но кроме этого их нередко используют в качеств ширмы для быстрого разделения пространства в кафе и ресторанах, переговорных комнатах, в частных домах https://art-shutters.ru/news/fotootchet-ustanovki-nashih-shattersov/ Часто шаттерсы ставят вместо дверей, а та
NathanPew, September 21st, 2026
Агрономы и садовники https://berezov-lsk.ru/ Подготовка и согласование сметы https://berezov-lsk.ru/ Цену нельзя определить просто отталкиваясь лишь от размера участка https://berezov-lsk.ru/ Необходимо в первую очередь проработать проект рассчитать смету на закупку материалов и выполнение услуг и т https://berezov-lsk.ru/ д https://berezov-lsk.ru/ Каждый подобный заказ индивидуален и однозначный ответ без точных данных дать невозможно https://berezov-lsk.ru/ Поэтому для начала стоит обратит
ScottWoupe, September 21st, 2026
Специалисты СЭС имеют допуск к работе с особо опасными ядами и разрешение на их утилизацию https://dez-spasatel.ru/dezinsekciya/klopy/ Мы максимально быстро приедем по вызову на разлив ртути и проведём демеркуризацию помещения https://dez-spasatel.ru/articles/klopy/kak-effektivno-izbavitsya-ot-klopov-v-matrase/ Также мы заберём использованные ртутьсодержащие приборы лампы для их утилизации https://dez-spasatel.ru/dezinfekciya/obrabotka-ot-gribka/ Услуги дезинсекции https://dez-spasatel.ru/dezi
MichaelQuito, September 21st, 2026

Leave a comment

= Thanks for your comment =