From 23c919f62ba1b1c7b1731776726d2f71febef9b7 Mon Sep 17 00:00:00 2001 From: fatimaxsen Date: Sat, 26 Apr 2025 13:25:51 +0300 Subject: [PATCH] Adding files --- LICENSE | 2 +- README.md | 35 ++++++++++++++++++++++------------- fablab_stepper_motor.png | Bin 0 -> 22119 bytes keywords.txt | 16 ---------------- library.properties | 9 +++++---- 5 files changed, 28 insertions(+), 34 deletions(-) create mode 100644 fablab_stepper_motor.png delete mode 100644 keywords.txt diff --git a/LICENSE b/LICENSE index 7008d53..eee2da9 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2025 FABLAB Bahrain +Copyright (c) 2024 FABLAB BH Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index ffc95ed..891bb0f 100644 --- a/README.md +++ b/README.md @@ -1,20 +1,29 @@ -# Relay8I2C Library -**By Fatima @ FABLAB Bahrain** +# I2CStepper -![FABLAB Bahrain Logo](https://via.placeholder.com/150x50.png?text=FABLAB+Bahrain) - -Control Stepper via I2C with dynamic address configuration. Designed for ESP8266 and Arduino platforms. +Control a stepper motor via I2C using a master-slave microcontroller setup. ## Features -- I2C communication protocol -- Dynamic slave address configuration -- Master controller with serial interface -- Active LOW relay support -- EEPROM storage for persistent addressing + +- Control stepper motors (e.g., TMC2209 + NEMA 17) over I2C +- Change slave I2C address at runtime (persistent in EEPROM) +- Scan for available I2C devices +- Simple API for master and slave +- Example code included + +## Hardware Requirements + +- Two Arduino-compatible microcontrollers (e.g., Uno, ESP32, etc.) +- TMC2209 stepper driver or similar (STEP/DIR interface) +- NEMA 17 or compatible stepper motor +- I2C wiring between master and slave ## Installation -1. Download the library ZIP -2. Arduino IDE: Sketch > Include Library > Add .ZIP Library -3. Select the downloaded ZIP file + +1. Download or clone this repository. +2. Copy the folder to your Arduino `libraries` directory. +3. Open Arduino IDE and include `I2CStepper.h` in your project. ## Usage + +### Master Example + diff --git a/fablab_stepper_motor.png b/fablab_stepper_motor.png new file mode 100644 index 0000000000000000000000000000000000000000..5b76cd8c3bdedfc783d009c18d70fd9b37e7fa8f GIT binary patch literal 22119 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 C{LP2} literal 0 HcmV?d00001 diff --git a/keywords.txt b/keywords.txt deleted file mode 100644 index 9994740..0000000 --- a/keywords.txt +++ /dev/null @@ -1,16 +0,0 @@ -####################################### -# Syntax coloring for I2CStepper Library -####################################### - -# Classes -RelayI2CMaster KEYWORD1 -I2CMasterUtils KEYWORD1 - -# Methods -begin KEYWORD2 - -scanI2C KEYWORD2 -changeSlaveAddress KEYWORD2 - -# Constants -CMD_CHANGE_ADDR LITERAL1 diff --git a/library.properties b/library.properties index bdaaddb..5a49a11 100644 --- a/library.properties +++ b/library.properties @@ -1,9 +1,10 @@ -name=FABLAB Stepper +name=I2CStepper version=1.0.0 author=Fatima Idrees maintainer=Fatima Idrees -sentence=Control DC motors via I2C with scanning and configuration utilities. -paragraph=Provides easy control of stepper motor modules via I2C communication with dynamic address configuration. Includes master/slave implementation for ESP32C3/Arduino platforms. +sentence=Control a stepper motor via I2C using a master-slave microcontroller setup. +paragraph=I2CStepper allows you to control stepper motors (e.g., with TMC2209 drivers) over I2C, with address change and device scanning support. Designed for Arduino-compatible boards. category=Device Control -url=https://github.com/fablabbh/I2CMasterUtils +url=https://github.com/yourusername/I2CStepper architectures=* +includes=I2CStepper.h