Commit Graph

1420 Commits

Author SHA1 Message Date
Gregg 22cfa130b4 Created HomePeer
This is a self-contained library that is used for remote devices set up as HomeSpan Peers via ESP-NOW.
2022-09-24 16:49:32 -05:00
Gregg dbe4c268f4 Modified folder structure for "extras"
This allows the "src.ino" test file to once again properly compile without requiring modifications to any existing HomeSpan sketches.  This was needed to ensure src.ino can find object code in "extras", which is now required to use the new statusDevice() method.  Since the Arduino IDE only copies files that are in "src" folders, "extras" needed to be moved to "src/extras".  For backwards compatibility with all other sketches, the "extras" directory now contains stubs for the ".h" include files.
2022-09-24 08:20:22 -05:00
Gregg 66160e7c6c continued development of espnow 2022-09-22 20:26:34 -05:00
Gregg 4a4a5f8a6b Started development of ESP-NOW
Also, added WiFi.begin("none") to make sure all WiFi data is erased when requested.
2022-09-05 18:42:37 -05:00
HomeSpan 8975ec9922
Update Reference.md 2022-09-04 14:26:31 -05:00
Gregg 677b9b673c Update FeatherPins.h
Added BUILTIN_PIXEL for S2, C3, and S3 chips
2022-09-04 10:03:59 -05:00
Gregg 8b9487b9d4 Created homeSpan.setStatusPixel(float h=0, float s=100, float v=100)
This is now the official API method to set an RGB NeoPixel as the status LED.  It defaults to bright red unless an HSV color is specified.
2022-09-04 07:31:08 -05:00
Gregg 546c87e3ec Added setOnColor to Pixel
Allows user to set the color to be used for Blinker
2022-09-03 16:47:02 -05:00
Gregg 355a2dfd4d Updated rest of code to reflect latest version of statusLED
Removed all checks to see if statusLED is defined, since it will now ALWAYS be defined, even if the statusDevice is set to NULL.
2022-09-02 18:47:15 -05:00
Gregg f2e1f5bc70 Updated Blinker Class to allow for NULL Blinkable Device
If NULL, all functions are ignored and getPin() returns -1
2022-09-02 18:15:53 -05:00
Gregg 6fecf2c29f updating main code to incorporate new Blinkable class/interface 2022-08-28 18:32:52 -05:00
Gregg 294b8d8d71 Complete re-write of Blinker Class
Rather than use ESP32 timers, simply spawn a new task that turn on/off LED using simple delays.  By avoiding the use of the ESP32 timer, we are no longer limited by the number of Blinkers possible.  Also, Blinker relied on the timer interrupt, which crashed when it tried to call Pixel since Pixel in turn uses interrupts from the RMT.  Switching to spawned tasks is much cleaner and does not consume more CPU time since the timer interrupts were driven by CPU anyway.

Blinker class and generic LED class are now in extras.h.  Blinkable Interface is also in extras.h.

To Do:  Incorporate new Blinker class into HomeSpan code
2022-08-28 17:49:48 -05:00
Gregg fc76db092d started development of Blinkable Interface to allow generic LED to be used with Blinker 2022-08-27 17:33:08 -05:00
HomeSpan c286875640
Update README.md 2022-08-20 16:15:38 -05:00
HomeSpan 59aab1208b
Update README.md 2022-08-20 16:11:56 -05:00
HomeSpan d6d87c621d
Merge pull request #363 from HomeSpan/dev
Dev
2022-08-20 17:11:09 -04:00
HomeSpan 1f98388115
Update library.properties 2022-08-20 16:03:20 -05:00
HomeSpan 61f3c9ba81
Update README.md 2022-08-20 10:58:51 -05:00
HomeSpan ed6d2d1d46
Update README.md 2022-08-20 08:40:50 -05:00
Gregg f4698b8d59 Updated comments in Example 15 - RealPushButtons
Added description of different triggerTypes and the use of custom functions
2022-08-20 07:37:56 -05:00
HomeSpan a48746c2b3
Update FAQ.md 2022-08-17 21:05:17 -05:00
HomeSpan 30de6f8464
Update Reference.md 2022-08-17 06:45:44 -05:00
Gregg a11490e0a6 Merge branch 'dev' of https://github.com/HomeSpan/HomeSpan into dev 2022-08-17 06:29:29 -05:00
Gregg fbc60a67eb Added setTouchCycles() and setTouchThreshold() to SpanButton as static functions 2022-08-17 06:29:26 -05:00
HomeSpan b6973e1ac6
Update Reference.md 2022-08-16 06:36:45 -05:00
HomeSpan 6109eabf14
Update Reference.md 2022-08-15 21:47:10 -05:00
Gregg 3b2c36f179 Changed PushButton::pressType_t to triggerType_t and refreshed triggerType_t constants
Pre-selects are no defined in both PushButton and SpanButton as: TRIGGER_ON_LOW, TRIGGER_ON_HIGH, and TRIGGER_ON_TOUCH
2022-08-15 21:21:21 -05:00
Gregg a9b3b86695 Merge branch 'dev' of https://github.com/HomeSpan/HomeSpan into dev 2022-08-15 18:43:35 -05:00
Gregg 75e3df97f5 Bumped version number to 1.6.0 2022-08-15 18:43:04 -05:00
HomeSpan 7b93f6d33b
Update Reference.md 2022-08-15 08:53:59 -05:00
Gregg 754ffc7f34 Added PushButton::setTouchThreshold() and PushButton::setTouchCycles()
Not implemented for ESP32-C3
2022-08-15 07:15:19 -05:00
Gregg 16b71af6f7 Added button type to SpanButton HomeSpan Info 2022-08-14 18:14:41 -05:00
Gregg e8d40150ed Incorporated logic to auto-calibrate touch sensors
Works with ESP32, ESP32-S2, and ESP32-S3 (ESP32-C3 does not support Touch Sensors).
2022-08-14 18:03:59 -05:00
Gregg dbcd9e267b Added check to ignore PushButton::TOUCH is compiling on ESP32-C3
The C3 does not have touch capability.  Compiler will throw an error is PushButton::TOUCH is referenced when compiling for C3.
2022-08-13 10:06:33 -05:00
Gregg ee55f268bd Finalized new SpanButton and PushButton functionality
Streamlined interface for both functions.  To Do:  Update SpanButton documentation
2022-08-13 07:52:32 -05:00
Gregg 9191b8664e Adding generic SpanButton function 2022-08-12 23:15:02 -05:00
Gregg 7841081fda Added option to set SpanButton type
Types include: GROUNDED, POWERED, and TOUCH.
Also added configureTouch() to customize parameters used for touch sensors.
2022-08-12 21:56:45 -05:00
Gregg 54b8374573 begin update of PushButton to make it more generic
Eliminated constructor that had no pin parameter.  Pin parameter is now always required.  Since PushButton was not part of HomeSpan API, these changes should not impact any users.
2022-08-11 06:12:41 -05:00
Gregg 57d791178c starting update of ControlPin logic to make it more generic 2022-08-10 06:20:50 -05:00
HomeSpan d3ef339e1a
Update Tutorials.md 2022-08-08 06:24:32 -05:00
Gregg 3e88d69997 Added optional AccessoryFlags Characteristic to AccessoryInformation Service
This optional flag does not seem to have any affect on the Home App and does not produce any messages indicating that the device needs additional setup.  Was hopeful this would have prevented the "Not Supported" message on a Home App Tile that is configured as a bridge, but without any other Accessories.
2022-08-08 05:56:11 -05:00
Gregg 635bce26c2 Update ProgrammableHub.ino 2022-08-07 20:08:44 -05:00
Gregg e2a8d406da Delete ProgrammableHub2.ino 2022-08-07 19:57:31 -05:00
Gregg 999eb45e8a Created new version of ProgrammableHub with Dynamic Changes 2022-08-07 19:56:01 -05:00
Gregg df2154d048 Update ProgrammableHub2.ino 2022-08-07 19:54:34 -05:00
Gregg 59f60d8800 Update ProgrammableHub2.ino 2022-08-07 19:45:42 -05:00
Gregg 546f4445e5 Update ProgrammableHub2.ino 2022-08-07 19:22:01 -05:00
Gregg b29b43af0f Update ProgrammableHub2.ino 2022-08-07 09:47:22 -05:00
Gregg fd0046c7f2 Update ProgrammableHub2.ino 2022-08-04 18:34:46 -05:00
HomeSpan 26a41bb198 Update ProgrammableHub2.ino 2022-07-31 17:42:18 -05:00