{"id":20586790,"url":"https://github.com/sparkfun/sparkfun_iot_brushless_motor_driver","last_synced_at":"2026-02-26T09:15:43.174Z","repository":{"id":198768341,"uuid":"604687826","full_name":"sparkfun/SparkFun_IoT_Brushless_Motor_Driver","owner":"sparkfun","description":"The hardware repository for an IoT motor driver development board using the ESP32","archived":false,"fork":false,"pushed_at":"2024-07-23T16:30:08.000Z","size":50205,"stargazers_count":10,"open_issues_count":2,"forks_count":1,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-10-27T08:45:13.729Z","etag":null,"topics":["sparkfun-boards","sparkfun-products","sparkfun-tutorial"],"latest_commit_sha":null,"homepage":"https://docs.sparkfun.com/SparkFun_IoT_Brushless_Motor_Driver/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sparkfun.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-21T15:29:39.000Z","updated_at":"2025-10-01T11:34:51.000Z","dependencies_parsed_at":null,"dependency_job_id":"f9501339-40e5-4866-bed5-58526f155552","html_url":"https://github.com/sparkfun/SparkFun_IoT_Brushless_Motor_Driver","commit_stats":null,"previous_names":["sparkfun/sparkfun_iot_brushless_motor_driver"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/sparkfun/SparkFun_IoT_Brushless_Motor_Driver","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sparkfun%2FSparkFun_IoT_Brushless_Motor_Driver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sparkfun%2FSparkFun_IoT_Brushless_Motor_Driver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sparkfun%2FSparkFun_IoT_Brushless_Motor_Driver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sparkfun%2FSparkFun_IoT_Brushless_Motor_Driver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sparkfun","download_url":"https://codeload.github.com/sparkfun/SparkFun_IoT_Brushless_Motor_Driver/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sparkfun%2FSparkFun_IoT_Brushless_Motor_Driver/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29855200,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-26T08:51:08.701Z","status":"ssl_error","status_checked_at":"2026-02-26T08:50:19.607Z","response_time":89,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["sparkfun-boards","sparkfun-products","sparkfun-tutorial"],"created_at":"2024-11-16T07:13:11.282Z","updated_at":"2026-02-26T09:15:43.149Z","avatar_url":"https://github.com/sparkfun.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"SparkFun IoT Brushless Motor Driver (ESP32 WROOM, TMC6300)\n========================================\n\n[![SparkFun IoT Brushless Motor Driver (ESP32 WROOM, TMC6300)](https://cdn.sparkfun.com/assets/parts/2/1/9/9/5/22132-_01.jpg)](https://www.sparkfun.com/products/22132)\n\n[*SparkFun IoT Brushless Motor Driver (ESP32 WROOM, TMC6300) (ROB-22132)*](https://www.sparkfun.com/products/22132)\n\nThe SparkFun IoT Brushless Motor Driver is an all-in-one development platform. It includes all the components to create a simple IoT device or learn about [control systems](https://en.wikipedia.org/wiki/Control_system). On the boaard, users will find an ESP32 microcontroller, a TMC6300 motor driver, a [gimbal motor](https://www.sparkfun.com/products/20441), a TMAG5273 hall-effect sensor, three INA240A1 inline current sensors, an MCP6021T low-side current sensor, two user buttons, a Qwiic connector, a 3-pin JST connector (for the gimbal motor), and a WS2812 RGB LED.\n\nThe TMC6300 from [ADI + Trinamic](https://www.trinamic.com/) is a powerful and easy-to-use three-phase motor driver with up to 2A (1.4A\u003csub\u003eRMS\u003c/sub\u003e) of total drive current. Separate high-side and low-side control of the three half-bridges allows for incredible control of each phase of the [motor commutation](https://fab.cba.mit.edu/classes/865.21/topics/power_electronics/commutation/#bldc-commutation). We've found the [*Arduino Simple Field Oriented Control*](https://docs.simplefoc.com/) library to work well with the TMC6300 motor driver.\n\nHowever, a field-oriented control (FOC) algorithm requires some feedback to close and optimize the control loop. Therefore, we integrated a TMAG5273 hall-effect sensor and INA240A1 current sensor amplifiers *(both manufactured by [Texas Instruments](https://www.ti.com/))* into the design of the IoT motor driver board. This allows users to incorporate a [position sensor](https://docs.simplefoc.com/position_sensors) and [current sensing](https://docs.simplefoc.com/current_sense) into the FOC algorithm or any feedback control loop they choose to implement.\n\nRepository Contents\n-------------------\n\n* **[/docs](/docs/)** - Online documentation files\n    * [assets](/docs/assets/) - Assets files\n        * [arduino_examples](/docs/assets/arduino_examples/) - Example code\n        * [board_files](/docs/assets/board_files/) - Files for the product design\n            * [Eagle design files](/docs/assets/board_files/eagle_files.zip) (.zip)\n            * [Schematic](/docs/assets/board_files/schematic.pdf) (.pdf)\n            * [Dimensions](/docs/assets/board_files/dimensions.pdf) (.pdf)\n        * [component_documentation](/docs/assets/component_documentation/) - Datasheets for hardware components\n        * [img/hookup_guide/](/docs/assets/img/hookup_guide/) - Images for hookup guide documentation\n* **[/Hardware](/Hardware/)** - Eagle design files (.brd, .sch)\n* **[/Production](/Production/)** - Production files\n\nDocumentation\n--------------\n\n* **[Hookup Guide (mkdocs)](http://docs.sparkfun.com/SparkFun_IoT_Brushless_Motor_Driver/)** - Hookup guide for the IoT Brushless Motor Driver hosted by GitHub pages.\n\n*Need to download or print our hookup guide?*\n\n* [Print *(Print to PDF)* from Single-Page View](http://docs.sparkfun.com/SparkFun_IoT_Brushless_Motor_Driver/print_view)\n\nProduct Variants\n----------------\n\n* [ROB-22132](https://www.sparkfun.com/products/22132)- v1.0, Initial Release\n\nVersion History\n---------------\n\n* [v10](https://github.com/sparkfun/SparkFun_IoT_Brushless_Motor_Driver/releases/tag/v10) - Initial Release\n\n\nLicense Information\n-------------------\n\nThis product is ***open source***!\n\nPlease review the [`LICENSE.md`](./LICENSE.md) file for license information.\n\nIf you have any questions or concerns about licensing, please contact technical support on our [SparkFun forums](https://forum.sparkfun.com/viewforum.php?f=152).\n\nDistributed as-is; no warranty is given.\n\n- Your friends at SparkFun.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsparkfun%2Fsparkfun_iot_brushless_motor_driver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsparkfun%2Fsparkfun_iot_brushless_motor_driver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsparkfun%2Fsparkfun_iot_brushless_motor_driver/lists"}