diff --git a/README.md b/README.md
index a87d6fa..4a25c9a 100644
--- a/README.md
+++ b/README.md
@@ -32,7 +32,7 @@ HomeSpan requires version 2.0.0 or later of the [Arduino-ESP32 Board Manager](ht
* Integrated access to the ESP32's on-chip Remote Control peripheral for easy generation of IR and RF signals
* Dedicated classes to control one- and two-wire addressable RGB and RGBW LEDs and LED strips
* Dedicated classes to control stepper motors that can run smoothly in the background without interfering with HomeSpan
-* Dedicated class that faciliates seemless point-to-point communication between ESP32 devices using ESP-NOW
+* Dedicated class that faciliates seamless point-to-point communication between ESP32 devices using ESP-NOW
* Integrated Web Log for user-defined log messages
* Extensively-commented Tutorial Sketches taking you from the very basics of HomeSpan through advanced HomeKit topics
* Additional examples and projects showcasing real-world implementations of HomeSpan
diff --git a/docs/ServiceList.md b/docs/ServiceList.md
index 416ecee..1416fd6 100644
--- a/docs/ServiceList.md
+++ b/docs/ServiceList.md
@@ -56,7 +56,8 @@ Additionally, when first starting up, HomeSpan begins by validating the device's
|StatelessProgrammableSwitch|ProgrammableSwitchEvent|Name
ServiceLabelIndex|
|Switch|On|Name|
|Television|Active|ConfiguredName
ActiveIdentifier
RemoteKey
PowerModeSelection|
-|TelevisionSpeaker|VolumeControlType
VolumeSelector||TemperatureSensor|CurrentTemperature|Name
StatusActive
StatusFault
StatusTampered
StatusLowBattery|
+|TelevisionSpeaker|VolumeControlType
VolumeSelector|
+|TemperatureSensor|CurrentTemperature|Name
StatusActive
StatusFault
StatusTampered
StatusLowBattery|
|Thermostat|CurrentHeatingCoolingState
TargetHeatingCoolingState
CurrentTemperature
TargetTemperature
TemperatureDisplayUnits|CoolingThresholdTemperature
CurrentRelativeHumidity
HeatingThresholdTemperature
Name
TargetRelativeHumidity|
|Valve|Active
InUse
ValveType|SetDuration
RemainingDuration
IsConfigured
ServiceLabelIndex
StatusFault
Name|
|Window|CurrentPosition
TargetPosition
PositionState|Name
HoldPosition
ObstructionDetected|
diff --git a/examples/15-RealPushButtons/15-RealPushButtons.ino b/examples/15-RealPushButtons/15-RealPushButtons.ino
index 491a97f..25f3fd1 100644
--- a/examples/15-RealPushButtons/15-RealPushButtons.ino
+++ b/examples/15-RealPushButtons/15-RealPushButtons.ino
@@ -248,7 +248,7 @@ void loop(){
// For example, if you were using an MCP I/O Port Expander with the Adafruit mcp library, you could create a triggerType function for a pin
// on the MCP device that is connected to ground through a pushbutton as such:
//
- // boolean MCP_READ(int mcpPin) { return ( !mcp.digitalRead(mcpPin); ) }
+ // boolean MCP_READ(int mcpPin) { return ( !mcp.digitalRead(mcpPin) ); }
//
// And then simply pass MCP_READ to SpanButton as the triggerType parameter using any of the SpanButton constuctors:
//
@@ -258,7 +258,7 @@ void loop(){
//
// Alternatively, you can use a lambda function as the triggerType parameter, thus creating your function on the fly when instantiating a SpanButton:
//
- // new SpanButton(23,[](int mcpPin)->boolean{ return ( !mcp.digitalRead(mcpPin); ) }
+ // new SpanButton(23,[](int mcpPin)->boolean{ return ( !mcp.digitalRead(mcpPin) ); });
//
// Note: If you create your own triggerType function, don't forget to perform any initialization of the "pin", or setup/configuration of a
// pin extender, etc., prior to instantiating a SpanButton that uses your custom function. HomeSpan cannot do this for you.