diff --git a/.github/lexicon.txt b/.github/lexicon.txt
index 8811e27..3263b08 100644
--- a/.github/lexicon.txt
+++ b/.github/lexicon.txt
@@ -994,7 +994,6 @@
 ldrbs
 ldub
 len
-lengh
 les
 lexpirecounters
 libc
@@ -1166,7 +1165,6 @@
 multidrvenable
 mutex
 mutexes
-mutexs
 mux
 muxes
 mv
@@ -2146,7 +2144,6 @@
 tgo
 thalt
 therad
-thie
 thr
 threadstate
 thu
@@ -2652,7 +2649,6 @@
 westat
 wfi
 winavr
-witin
 wizc
 wl
 wo
@@ -2912,7 +2908,6 @@
 xrbarconst
 xreceivedbytes
 xreceivedlength
-xrecievedbytes
 xregion
 xregions
 xregionssettings
diff --git a/include/message_buffer.h b/include/message_buffer.h
index b512f53..b1962fa 100644
--- a/include/message_buffer.h
+++ b/include/message_buffer.h
@@ -125,7 +125,7 @@
  *  // Create a message buffer that can hold 100 bytes.  The memory used to hold
  *  // both the message buffer structure and the messages themselves is allocated
  *  // dynamically.  Each message added to the buffer consumes an additional 4
- *  // bytes which are used to hold the lengh of the message.
+ *  // bytes which are used to hold the length of the message.
  *  xMessageBuffer = xMessageBufferCreate( xMessageBufferSizeBytes );
  *
  *  if( xMessageBuffer == NULL )
diff --git a/include/queue.h b/include/queue.h
index 262ad06..1030836 100644
--- a/include/queue.h
+++ b/include/queue.h
@@ -1420,7 +1420,7 @@
 
 /*
  * Utilities to query queues that are safe to use from an ISR.  These utilities
- * should be used only from witin an ISR, or within a critical section.
+ * should be used only from within an ISR, or within a critical section.
  */
 BaseType_t xQueueIsQueueEmptyFromISR( const QueueHandle_t xQueue ) PRIVILEGED_FUNCTION;
 BaseType_t xQueueIsQueueFullFromISR( const QueueHandle_t xQueue ) PRIVILEGED_FUNCTION;
diff --git a/include/semphr.h b/include/semphr.h
index ce46756..0784ac8 100644
--- a/include/semphr.h
+++ b/include/semphr.h
@@ -808,7 +808,7 @@
  * Creates a new recursive mutex type semaphore instance, and returns a handle
  * by which the new recursive mutex can be referenced.
  *
- * Internally, within the FreeRTOS implementation, recursive mutexs use a block
+ * Internally, within the FreeRTOS implementation, recursive mutexes use a block
  * of memory, in which the mutex structure is stored.  If a recursive mutex is
  * created using xSemaphoreCreateRecursiveMutex() then the required memory is
  * automatically dynamically allocated inside the
@@ -877,7 +877,7 @@
  * Creates a new recursive mutex type semaphore instance, and returns a handle
  * by which the new recursive mutex can be referenced.
  *
- * Internally, within the FreeRTOS implementation, recursive mutexs use a block
+ * Internally, within the FreeRTOS implementation, recursive mutexes use a block
  * of memory, in which the mutex structure is stored.  If a recursive mutex is
  * created using xSemaphoreCreateRecursiveMutex() then the required memory is
  * automatically dynamically allocated inside the
diff --git a/include/stream_buffer.h b/include/stream_buffer.h
index 8da4e1e..a00fd7c 100644
--- a/include/stream_buffer.h
+++ b/include/stream_buffer.h
@@ -495,7 +495,7 @@
  *
  *  if( xReceivedBytes > 0 )
  *  {
- *      // A ucRxData contains another xRecievedBytes bytes of data, which can
+ *      // A ucRxData contains another xReceivedBytes bytes of data, which can
  *      // be processed here....
  *  }
  * }
diff --git a/include/timers.h b/include/timers.h
index 70229d1..d255c39 100644
--- a/include/timers.h
+++ b/include/timers.h
@@ -1352,7 +1352,7 @@
  * configSUPPORT_STATIC_ALLOCATION is set.  For more information see this URI: https://www.FreeRTOS.org/a00110.html#configSUPPORT_STATIC_ALLOCATION
  *
  * @param ppxTimerTaskTCBBuffer   A handle to a statically allocated TCB buffer
- * @param ppxTimerTaskStackBuffer A handle to a statically allocated Stack buffer for thie idle task
+ * @param ppxTimerTaskStackBuffer A handle to a statically allocated Stack buffer for the idle task
  * @param pulTimerTaskStackSize   A pointer to the number of elements that will fit in the allocated stack buffer
  */
     void vApplicationGetTimerTaskMemory( StaticTask_t ** ppxTimerTaskTCBBuffer,
