Commit Graph

1091 Commits

Author SHA1 Message Date
Gregg c7d82f74c6 Logic added to save setVal() status changes in NVS
Also created new Example 18 demonstrating NVS storage for an LED.
To do: Create CLI command to erase stored characteristics.
2021-06-13 10:55:06 -05:00
Gregg f4c9c430ef Replace restore() method with second optional parameter when instantiating Characteristic
To enable save/restore for a Characteristic, set second parameter to TRUE when instantiating.  Since first parameter was optional as well, this requires setting it as well.

Next up:  Must add logic to setVal() to store new value as well.
2021-06-13 09:20:13 -05:00
Gregg 40798b15cf Begin development of NVS Characteristic storage
Used method restore() to restore value.  To do:  Change this to a flag during instantiation of a new Characteristic instead of a separate method.
2021-06-13 08:45:11 -05:00
HomeSpan 49e3786618
Update Reference.md 2021-06-05 10:40:08 -05:00
Gregg 1dfd66bf25 Add homeSpan.enableAutoStartAP()
Enables auto-start of AccessPoint if WiFi Credentials not found.
2021-06-05 10:30:21 -05:00
HomeSpan d46fd3949d
Update FAQ.md 2021-05-30 21:07:15 -05:00
HomeSpan 571a350d5b
Update Reference.md 2021-05-30 20:57:25 -05:00
Gregg 83507abb41 Update src.ino 2021-05-30 13:48:28 -05:00
Gregg bda90c59ca Created SpanUserCommand()
Allows the user to add a command function to the Command Line Interface.  All User Commands are defined with a '@' prefix.

To Do:  Document this new feature.
2021-05-30 13:45:52 -05:00
HomeSpan 7ce04a70f4
Update Reference.md 2021-05-30 07:23:16 -05:00
HomeSpan 2309212d34
Update Extras.md 2021-05-30 07:21:19 -05:00
HomeSpan 5204eeaeef
Update Reference.md 2021-05-30 07:08:36 -05:00
HomeSpan 4dfb881780
Update README.md 2021-03-22 07:45:08 -05:00
HomeSpan da4665f44e
Update README.md 2021-03-21 22:52:42 -05:00
HomeSpan 52541d6be1
Update Extras.md 2021-03-21 22:51:43 -05:00
HomeSpan 9274f918f2
Update Extras.md 2021-03-21 22:50:22 -05:00
HomeSpan 165dffaebf
Update Extras.md 2021-03-21 22:49:28 -05:00
HomeSpan 76fcfc215c
Update Extras.md 2021-03-21 22:49:03 -05:00
HomeSpan 39fbed5526
Update Extras.md 2021-03-21 22:48:06 -05:00
HomeSpan 8ac275559a
Update Extras.md 2021-03-21 22:47:27 -05:00
HomeSpan 61e0b12cf1
Update Extras.md 2021-03-21 22:43:53 -05:00
HomeSpan 764b5fb06e
Update Extras.md 2021-03-21 22:40:08 -05:00
Gregg 03fcdac67e Merge branch 'dev' of https://github.com/HomeSpan/HomeSpan into dev 2021-03-21 22:37:41 -05:00
Gregg 8252c5390e Created ServoControl Example
Created in "Other Examples" and is based on Example 13 - WindowShade
2021-03-21 22:37:35 -05:00
HomeSpan bbf3650416
Update Extras.md 2021-03-21 22:34:05 -05:00
HomeSpan 2a4ebe9522
Update Tutorials.md 2021-03-21 18:26:12 -05:00
Gregg 54f7928204 Fixed bug in Example 13
WindowShade was incorrectly sending repeated event notifications to HomeKit!
2021-03-21 12:37:12 -05:00
Gregg 451a2885b1 Changed PwmPin to LedPin in all Tutorial Examples
Greatly simplifies use interface.  No need to specify or save channels.  And no need to even save pin number since that can be found using LedPin->getPin() method whenever needed.
2021-03-21 09:54:57 -05:00
Gregg d49bca9bbe Completed LedPin() and ServoPin()
Both classes check that total number of combined instantiations does not exceed 16.  ServoPin() has additional limit of only 8 instantiations.

DEPRECATED: PwmPin().  Keep for backwards compatibility only.
TO DO:  Update Tutorial Examples to replace PwmPin with LedPin, and update Extras.h documentations with LedPin and ServoPin.
2021-03-20 23:21:09 -05:00
Gregg a8dff0a7de Update PwmPin.cpp 2021-03-20 17:35:04 -05:00
Gregg 59e34fde05 Updated LedPin() 2021-03-20 17:19:47 -05:00
Gregg bc498c32e4 Created LedPin()
This is a replacement for PwmPin().   It keeps track of channel numbers internally, which greatly simplifies the user interface.  Starts by using the 8 Low Speed Timer channels and then moves to the 8 High Speed Timer channels if more than 8 LedPins are instantiated.  Throws a non-fatal error if more than 16 LedPins are instantiated, and ignores any attempts to set the duty cycle of those channels.
2021-03-20 17:14:19 -05:00
Gregg 65df97c563 Added ServoPin() class to PwmPin.h
Controls a 50-Hz servo motor using ESP32 built-in LED PWM.  Allows custom range for microseconds and degrees.
2021-03-20 12:20:43 -05:00
Gregg 61655845a9 Updated PWM
Removed need to include channel number in set() method.  Why was this ever there?  Need to update Examples and PwmPin docs.  But keep stub method that includes channel for backwards compatibility.
2021-03-19 06:38:41 -05:00
HomeSpan 6aba1a28e5
Merge pull request #63 from HomeSpan/release-1.2.1
Release 1.2.1
2021-03-13 07:29:59 -06:00
HomeSpan 01ae18e133
Update README.md 2021-03-13 07:23:39 -06:00
HomeSpan 6df48a32dd
Update README.md 2021-03-13 07:22:58 -06:00
HomeSpan 48127a3380
Update Reference.md 2021-03-13 07:03:18 -06:00
Gregg b90f173a6f Set version number to 1.2.1 in preparation for release 2021-03-13 06:31:18 -06:00
Gregg a89ddf3748 Updated Example 13 - Window Shade to show proper use of Characteristic Current Position
Also added discussion of why Characteristic Position State is not needed even though it is required.
2021-03-12 09:45:50 -06:00
Gregg 16aff0e855 Updated formatting of Accessory Database output to Serial Monitor
Used unicode arrows and symbols, and included more detailed information about each Service and Characteristic.
2021-03-10 22:44:59 -06:00
Gregg d2a7030640 Reclaimed memory from REQ and OPT vectors after they are no longer needed.
Lots more memory optimization to perform!
2021-03-09 21:47:52 -06:00
Gregg 8121146c6b Changed ERROR to WARNING when a required Characteristic is missing
Only throw a non-fatal warning instead of a fatal error if a Service is missing a required Characteristic.  This allows for user flexibility in leaving out required Characteristics for Services that don't seem to need them (contrary to the HAP docs).

Also, changed PositionState Characteristic back to Required (instead of Optional) in WindowCovering Service (as specified by HAP).  If PositionState is not included this will only throw an error instead of a warning as a result of the above change.

To Do: Update Example 13 to properly incorporate PositionState Characteristic.
2021-03-09 20:33:54 -06:00
HomeSpan da74066c70
Update Reference.md 2021-03-09 08:25:13 -06:00
HomeSpan a0e220356d
Update ServiceList.md 2021-03-09 08:08:39 -06:00
HomeSpan c6946891bb
Update Tutorials.md 2021-03-09 08:03:06 -06:00
HomeSpan c64c31f4cf
Update Reference.md 2021-03-07 17:41:41 -06:00
Gregg bcbe4c1d92 Merge branch 'dev-1.2.1' of https://github.com/HomeSpan/HomeSpan into dev-1.2.1 2021-03-07 17:39:44 -06:00
Gregg 53268127be Updated Examples to use `setRange()` instead of `new SpanRange()`
setRange() is preferred method.  SpanRange() is legacy only
2021-03-07 17:39:42 -06:00
HomeSpan 209836c170
Update Reference.md 2021-03-07 08:52:18 -06:00