From 6bf1b0af900c937a0c0eeb42ed61e7f6b3f9b166 Mon Sep 17 00:00:00 2001 From: HomeSpan Date: Tue, 20 Jun 2023 21:38:28 -0500 Subject: [PATCH 1/3] Update RMT.md --- docs/RMT.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/RMT.md b/docs/RMT.md index 00ecc0f..5be3d6e 100644 --- a/docs/RMT.md +++ b/docs/RMT.md @@ -15,9 +15,9 @@ Signals are defined as a sequence of HIGH and LOW phases that together form a pu Since most RF/IR signals repeat the same train of pulses more than once, the duration of the last LOW phase should be extended to account for the delay between repeats of the pulse train. Pulse trains are encoded as sequential arrays of 32-bit words, where each 32-bit word represents an individual pulse using the following protocol: * bits 0-14: the duration, in *ticks* from 0-32767, of the first part of the pulse to be transmitted - * bit 15: indicates whether the first part of the pulse to be trasnmitted is HIGH (1) or LOW (0) + * bit 15: indicates whether the first part of the pulse to be transmitted is HIGH (1) or LOW (0) * bits 16-30: the duration, in *ticks* from 0-32767, of the second part of the pulse to be transmitted - * bit 31: indicates whether the second part of the pulse to be trasnmitted is HIGH (1) or LOW (0) + * bit 31: indicates whether the second part of the pulse to be transmitted is HIGH (1) or LOW (0) HomeSpan provides two easy methods to create, store, and transmit a pulse train. The first method relies on the fact that each instance of RFControl maintains its own internal memory structure to store a pulse train of arbitrary length. The functions `clear()`, `add()`, and `pulse()`, described below, allow you to create a pulse train using this internal memory structure. The `start()` function is then used to begin transmission of the full pulse train. This method is generally used when pulse trains are to be created on-the-fly as needed, since each RFControl instance can only store a single pulse train at one time. From 44b0a878ec6ef2715c5ac4258ef024d922943591 Mon Sep 17 00:00:00 2001 From: HomeSpan Date: Tue, 20 Jun 2023 21:45:23 -0500 Subject: [PATCH 2/3] Update Stepper.md --- docs/Stepper.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/Stepper.md b/docs/Stepper.md index dbe73ff..18874a3 100644 --- a/docs/Stepper.md +++ b/docs/Stepper.md @@ -1,5 +1,7 @@ # Stepper Motor Control +HomeSpan includes dedicated classes that provide integrated control of popular stepper motor driver boards. These classes spawn dedicated background tasks for each stepper motor allowing parallel background...background allow for the simultaneous operation of one or more stepper motors in the background without blocking HomeSpan's normal operation. + The ESP32 has an on-chip signal-generator peripheral designed to drive an RF or IR transmitter. HomeSpan includes an easy-to-use library that interfaces with this peripheral so that with a few additional electronic components you can create a HomeSpan device that controls an RF or IR appliance directly from the Home App on your iPhone, or via Siri. The library is accessed by placing the following near the top of your sketch: `#include "extras/RFControl.h"` From 0fa0579578de86f8775811701f16f71e96956ab1 Mon Sep 17 00:00:00 2001 From: HomeSpan Date: Wed, 21 Jun 2023 06:06:08 -0500 Subject: [PATCH 3/3] Update Stepper.md --- docs/Stepper.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/Stepper.md b/docs/Stepper.md index 18874a3..a12a5ef 100644 --- a/docs/Stepper.md +++ b/docs/Stepper.md @@ -1,6 +1,8 @@ # Stepper Motor Control -HomeSpan includes dedicated classes that provide integrated control of popular stepper motor driver boards. These classes spawn dedicated background tasks for each stepper motor allowing parallel background...background allow for the simultaneous operation of one or more stepper motors in the background without blocking HomeSpan's normal operation. +HomeSpan includes dedicated classes that provide for easy control of stepper motors connected to an ESP32 via a stepper motor driver board. These classes allow stepper motors to operate smoothly and asynchronously in the background while HomeSpan continues to run in the foreground. On devices with dual processors, stepper-motor control can be run either on the same or a different processor from HomeSpan. To add stepper-motor control to your sketch, simply instantiate one or more of the classes below matching your motor driver board (or boards). + + The ESP32 has an on-chip signal-generator peripheral designed to drive an RF or IR transmitter. HomeSpan includes an easy-to-use library that interfaces with this peripheral so that with a few additional electronic components you can create a HomeSpan device that controls an RF or IR appliance directly from the Home App on your iPhone, or via Siri. The library is accessed by placing the following near the top of your sketch: