diff --git a/boards/beaglebone/ai-64/ch03.rst b/boards/beaglebone/ai-64/ch03.rst
index b35ad5b8cf6de8329265d445482f4df395d0fce9..5071a9bda9a9f55cbb2761335f5d03bc59e7f738 100644
--- a/boards/beaglebone/ai-64/ch03.rst
+++ b/boards/beaglebone/ai-64/ch03.rst
@@ -105,7 +105,7 @@ Connect the Cable to the Board
 
    Fig: USB Connection to the Board
 
-2.  Connect the USB-A end of thecable tp your PC or laptop USB port as shown in the :ref:`usb-a-connect-figure` below.
+2.  Connect the USB-A end of the cable to your PC or laptop USB port as shown in the :ref:`usb-a-connect-figure` below.
 
 .. _usb-a-connect-figure,USB Connection to the PC/Laptop figure:
 
diff --git a/boards/beaglebone/ai-64/ch05.rst b/boards/beaglebone/ai-64/ch05.rst
index 6d2b96414ccbb88bce62df0f53a2f09a4ee7ded2..f08a5441db0c166572a3dcd7c51714991310ae24 100644
--- a/boards/beaglebone/ai-64/ch05.rst
+++ b/boards/beaglebone/ai-64/ch05.rst
@@ -41,7 +41,7 @@ The SoC designed as a low power, high performance and highly integrated device a
 * One dual-core 64-bit Arm Cortex-A72 microprocessor subsystem at up to 2.0 GHz and up to 24K DMIPS (Dhrystone Million Instructions per Second)
 * Up to three Microcontroller Units (MCU), based on dual-core Arm Cortex-R5F processor running at up to 1.0 GHz, up to 12K DMIPS
 * Up to two TMS320C66x DSP CorePac modules running at up to 1.35 GHz, up to 40 GFLOPS
-* One C71x floating point, vector DSP running at up to up to 1.0 GHz, up to 80 GFLOPS
+* One C71x floating point, vector DSP running at up to 1.0 GHz, up to 80 GFLOPS
 * One deep-learning MMA, up to 8 TOPS (8b) at 1.0 GHz
 * Up to two gigabit dual-core Programmable Real-Time Unit and Industrial Communication Subsystems (PRU_ICSSG)
 * Two Navigator Subsystems (NAVSS) for data movement and control
@@ -173,7 +173,7 @@ Described in the following sections are the three memory devices found on the bo
 4GB LPDDR4
 ************
 
-A single (1024M x 16bits x 2channels) LPDDR4 4Gb memory device is used. The memory used is is:
+A single (1024M x 16bits x 2channels) LPDDR4 4Gb memory device is used. The memory used is:
 
 * Kingston Q3222PM1WDGTK-U
 
diff --git a/boards/beaglebone/ai-64/edge_ai_apps/configuration_file.rst b/boards/beaglebone/ai-64/edge_ai_apps/configuration_file.rst
index fa062aea0b3eb7c620b57e58770d86e845e18ea1..0654a3393e95fb49b8f8849035879508167e520a 100644
--- a/boards/beaglebone/ai-64/edge_ai_apps/configuration_file.rst
+++ b/boards/beaglebone/ai-64/edge_ai_apps/configuration_file.rst
@@ -29,7 +29,7 @@ Their properties like shown below.
     inputs:
         input0:                                         #Camera Input
             source: /dev/video2                         #Device file entry of the camera
-            format: jpeg                                #Input data format suported by camera
+            format: jpeg                                #Input data format supported by camera
             width: 1280                                 #Width and Height of the input
             height: 720
             framerate: 30                               #Framerate of the source
@@ -110,7 +110,7 @@ input section of config file.
         framerate: 30
 
     input2:
-        source: /dev/video2  #IMX219 raw sensor that nees ISP
+        source: /dev/video2  #IMX219 raw sensor that needs ISP
         format: rggb         #ISP will be added in the pipeline
         width: 1920
         height: 1080
@@ -118,7 +118,7 @@ input section of config file.
         subdev-id: 2         #needed by ISP to control sensor params via ioctls
 
     input3:
-        source: /dev/video2  #IMX390 raw sensor that nees ISP
+        source: /dev/video2  #IMX390 raw sensor that needs ISP
         width: 1936
         height: 1100
         format: rggb12       #ISP will be added in the pipeline
@@ -194,7 +194,7 @@ via RTSP server running on a remote PC can be provided as inputs to the demo.
 
    Usually video streams from any IP camera will be encrypted and cannot be
    played back directly without a decryption key. We tested RTSP source by
-   setting up an RTSP server on a Ubuntu 18.04 PC by refering to this writeup,
+   setting up an RTSP server on a Ubuntu 18.04 PC by referring to this writeup,
    `Setting up RTSP server on PC
    <https://gist.github.com/Santiago-vdk/80c378a315722a1b813ae5da1661f890>`_
 
diff --git a/boards/beaglebone/ai-64/edge_ai_apps/datasheet.rst b/boards/beaglebone/ai-64/edge_ai_apps/datasheet.rst
index ea8dfebdcbc57a0853b39bfc4be7fa1373fbc1c3..5bc1fbb263c39160539d3e674d74f1ccb52e9c41 100644
--- a/boards/beaglebone/ai-64/edge_ai_apps/datasheet.rst
+++ b/boards/beaglebone/ai-64/edge_ai_apps/datasheet.rst
@@ -13,7 +13,7 @@ command on target:
 
     debian@beaglebone:/opt/edge_ai_apps/tests# ./gen_data_sheet.sh
 
-The performence measurements includes the following
+The performance measurements includes the following
 
 #. **FPS** : Effective framerate at which the application runs
 #. **Total time** : Average time taken to process each frame, which includes
diff --git a/boards/beaglebone/ai-64/edge_ai_apps/docker_environment.rst b/boards/beaglebone/ai-64/edge_ai_apps/docker_environment.rst
index ed82a3a3575d42905c24cbcf306de9771aa33fb8..50894991b97359f01f5d7c3a98f49d76d6dbc4a0 100644
--- a/boards/beaglebone/ai-64/edge_ai_apps/docker_environment.rst
+++ b/boards/beaglebone/ai-64/edge_ai_apps/docker_environment.rst
@@ -186,7 +186,7 @@ The following steps outline the process for Docker root directory relocation
 assuming that the current Docker root is not at the desired location. If the
 current location is the desired location then exit this procedure.
 
-1. Run 'Docker info' command and inspect the output. Locate the line with
+1. Run 'Docker info' command inspect the output. Locate the line with
    content **Docker Root Dir**. It will list the current location.
 
 2. To preserve any existing images, export them to .tar files for importing
diff --git a/boards/beaglebone/ai-64/edge_ai_apps/getting_started.rst b/boards/beaglebone/ai-64/edge_ai_apps/getting_started.rst
index 9da457399b15bf33d06d9c31b13ceac5d2f441cc..11f016b82b4adf468c752bd4d55347f226c4cd58 100644
--- a/boards/beaglebone/ai-64/edge_ai_apps/getting_started.rst
+++ b/boards/beaglebone/ai-64/edge_ai_apps/getting_started.rst
@@ -10,7 +10,7 @@ Hardware setup
 
 BeagleBone® AI-64 has TI's TDA4VM SoC which houses dual core A72, high performance vision
 accelerators, video codec accelerators, latest C71x and C66x DSP, high bandwidth
-realtime IPs for capture and display, GPU, dedicated safety island and security
+realtime IPs for capture and display, GPU, dedicated safety island security
 accelerators. The SoC is power optimized to provide best in class performance
 for perception, sensor fusion, localization and path planning tasks in robotics,
 industrial and automotive applications.
@@ -92,7 +92,7 @@ Note that the headers have to be lifted up to connect the cameras
 
     Reboot the board after editing and saving the file.
 
-Two RPi cameras can be connected to 2 headers for multi camera usecases
+Two RPi cameras can be connected to 2 headers for multi camera use-cases
 
 Please refer :ref:`pub_edgeai_camera_sources` to know how to list all the cameras
 connected and select which one to use for the demo.
diff --git a/boards/beaglebone/ai-64/edge_ai_apps/inference_models.rst b/boards/beaglebone/ai-64/edge_ai_apps/inference_models.rst
index 91fbc396034d6688cec98b31f4cf8c87c214cfde..7075640c4a2433f43d727f253ee0fbed3720397d 100644
--- a/boards/beaglebone/ai-64/edge_ai_apps/inference_models.rst
+++ b/boards/beaglebone/ai-64/edge_ai_apps/inference_models.rst
@@ -79,7 +79,7 @@ Each DNN must have the following 3 components:
 Param file format
 -----------------
 
-Each DNN has it’s own pre-process, inference and post-process
+Each DNN has its own pre-process, inference and post-process
 parameters to get the correct output. This information is typically available in
 the training software that was used to train the model. In order to convey this
 information to the SDK in a standardized fashion, we have defined a set of
diff --git a/boards/beaglebone/ai-64/edge_ai_apps/sdk_components.rst b/boards/beaglebone/ai-64/edge_ai_apps/sdk_components.rst
index 36b1431cec980a2a69a43ea34f41656e27f019c4..59272e3d72331dcf6a83356e8e2d8b35bab6493c 100644
--- a/boards/beaglebone/ai-64/edge_ai_apps/sdk_components.rst
+++ b/boards/beaglebone/ai-64/edge_ai_apps/sdk_components.rst
@@ -52,7 +52,7 @@ for various computer vision tasks. A few example models are packaged as part of
 the SDK to run out-of-box demos. More can be downloaded using a download script
 made available in the edge_ai_apps repo.
 
-For more details on the the pre-imported models and related documentation please visit:
+For more details on the pre-imported models and related documentation please visit:
 https://github.com/TexasInstruments/edgeai-modelzoo
 
 
diff --git a/boards/beaglebone/ai/System-Reference-Manual.asciidoc b/boards/beaglebone/ai/System-Reference-Manual.asciidoc
index dc94cf18b124cec001171f47296f69165fab5a09..a931d87613780ce5a8761d2ebcc3c50d28f8e2dc 100644
--- a/boards/beaglebone/ai/System-Reference-Manual.asciidoc
+++ b/boards/beaglebone/ai/System-Reference-Manual.asciidoc
@@ -100,7 +100,7 @@ Proposed changes.
 
 * https://github.com/beagleboard/beaglebone-ai/issues/24[Add footprint for pull-down resistor on serial debug header RX line].
 * https://github.com/beagleboard/beaglebone-ai/issues/25[Move microSD card cage closer to microHDMI to fit cases better].
-* https://github.com/beagleboard/beaglebone-ai/issues/22[Connect AM5729 ball AB10 to to P9.13 to provide a GPIO].
+* https://github.com/beagleboard/beaglebone-ai/issues/22[Connect AM5729 ball AB10 to P9.13 to provide a GPIO].
 * https://github.com/beagleboard/beaglebone-ai/issues/19[HDMI hot-plug detection fixes].
 * https://github.com/beagleboard/beaglebone-ai/issues/20[Add additional CAN port to the expansion headers].
 * https://github.com/beagleboard/beaglebone-ai/issues/21[Fix JTAG connector to not require wire mods].
@@ -134,7 +134,7 @@ You will need to purchase:
 * Serial cable[https://github.com/beagleboard/beaglebone-ai/wiki/Frequently-Asked-Questions#serial-cable] (optional)
 
 More information or to purchase a replacement heat sink or antenna,
-please go to these web sites: 
+please go to these websites: 
 
 * https://bit.ly/2kmXAzF[Antenna]
 * https://bit.ly/2klxxJa[Heat Sink]
@@ -533,7 +533,7 @@ TODO: This text needs to go somewhere.
 |0x47    |U13        |HD3SS3220 USB Type-C DRP port controller
 |0x50    |U9         |24LC32 board ID EEPROM
 |0x58    |U3         |TPS6590379 PMIC power registers
-|0x5a    |U3         |TPS6590379 PMIC interfaces and auxilaries
+|0x5a    |U3         |TPS6590379 PMIC interfaces and auxiliaries
 |0x5c    |U3         |TPS6590379 PMIC trimming and test
 |0x5e    |U3         |TPS6590379 PMIC OTP
 |===
@@ -607,7 +607,7 @@ interface placement]
 *Figure 23* below shows how the USB-C power input is connected to the
 *TPS6590379*.
 
-TODO: (Schematic screenshoot)
+TODO: (Schematic screenshot)
 
 [[power-button]]
 ==== 6.1.3 Power Button
@@ -736,7 +736,7 @@ CPU's:
 * PRU-ICSS2 PRU1
 
 The programmable nature of the PRUs, along with their access to pins,
-events and all SoC resources, provides flexibility in implmenting fast
+events and all SoC resources, provides flexibility in implementing fast
 real-time responses, specialized data handling operations, peripheral
 interfaces and in off-loading tasks from the other processor cores of
 the SoC.
@@ -788,7 +788,7 @@ Resources
 https://beagleboard.org/pru
 * The PRU Cookbook provides examples and getting started information
 https://github.com/MarkAYoder/PRUCookbook
-* Detailed specification is availble at
+* Detailed specification is available at
 http://processors.wiki.ti.com/index.php/PRU-ICSS
 
 [[faq]]
@@ -2631,7 +2631,7 @@ l’autorité de l'utilisateur pour actionner l'équipement.
 
 The design materials referred to in this document are _*NOT SUPPORTED*_
 and *DO NOT* constitute a reference design. Support of the open source
-developer community is provided through the the resources defined at
+developer community is provided through the resources defined at
 https://beagleboard.org/support.
 
 THERE IS NO WARRANTY FOR THE DESIGN MATERIALS, TO THE EXTENT PERMITTED
diff --git a/boards/beaglebone/ai/ch02.rst b/boards/beaglebone/ai/ch02.rst
index 277998b3d94fb44f41161e77a0e88fd0e53bef42..a96c869faae2e693c10be2d633a0ec8a37ca6fea 100644
--- a/boards/beaglebone/ai/ch02.rst
+++ b/boards/beaglebone/ai/ch02.rst
@@ -55,7 +55,7 @@ Proposed changes.
 -  `Move microSD card cage closer to microHDMI to fit cases
    better <https://github.com/beagleboard/beaglebone-ai/issues/25>`__.
 
--  `Connect AM5729 ball AB10 to to P9.13 to provide a
+-  `Connect AM5729 ball AB10 to P9.13 to provide a
    GPIO <https://github.com/beagleboard/beaglebone-ai/issues/22>`__.
 
 -  `HDMI hot-plug detection
diff --git a/boards/beaglebone/ai/ch03.rst b/boards/beaglebone/ai/ch03.rst
index ae8e9e2eaf12dbc2f04b0828299bd3dba8e9c042..5d80936f9235dc49d89f4bdc656525fb9e9139da 100644
--- a/boards/beaglebone/ai/ch03.rst
+++ b/boards/beaglebone/ai/ch03.rst
@@ -28,7 +28,7 @@ You will need to purchase:
 -  MicroSD Card (optional)
 -  `Serial cable <https://github.com/beagleboard/beaglebone-ai/wiki/Frequently-Asked-Questions#serial-cable>`_ (optional)
 
-More information or to purchase a replacement heat sink or antenna, please go to these web sites:
+More information or to purchase a replacement heat sink or antenna, please go to these websites:
 
 -  `Antenna <https://bit.ly/2kmXAzF>`_
 -  `Heat Sink <https://bit.ly/2klxxJa>`_
diff --git a/boards/beaglebone/ai/ch05.rst b/boards/beaglebone/ai/ch05.rst
index b4ddaa5633c93b4953b6577e2d72906b34dfa878..0cfb3910d1919eaa61d868f4a3b23487bda1083e 100644
--- a/boards/beaglebone/ai/ch05.rst
+++ b/boards/beaglebone/ai/ch05.rst
@@ -269,37 +269,38 @@ functions that are not accessible which are: (TBD)
 TODO: This text needs to go somewhere.
 
 On-board I2C Devices
-***********************
-
-+--------+--------+-----------------+
-| A      | Iden   | Description     |
-| ddress | tifier |                 |
-+========+========+=================+
-| 0x12   | U3     | TPS6590379 PMIC |
-|        |        | DVS             |
-+--------+--------+-----------------+
-| 0x41   | U78    | STMPE811Q ADC   |
-|        |        | and GPIO        |
-|        |        | expander        |
-+--------+--------+-----------------+
-| 0x47   | U13    | HD3SS3220 USB   |
-|        |        | Type-C DRP port |
-|        |        | controller      |
-+--------+--------+-----------------+
-| 0x50   | U9     | 24LC32 board ID |
-|        |        | EEPROM          |
-+--------+--------+-----------------+
-| 0x58   | U3     | TPS6590379 PMIC |
-|        |        | power registers |
-+--------+--------+-----------------+
-| 0x5a   | U3     | TPS6590379 PMIC |
-|        |        | interfaces and  |
-|        |        | auxilaries      |
-+--------+--------+-----------------+
-| 0x5c   | U3     | TPS6590379 PMIC |
-|        |        | trimming and    |
-|        |        | test            |
-+--------+--------+-----------------+
-| 0x5e   | U3     | TPS6590379 PMIC |
-|        |        | OTP             |
-+--------+--------+-----------------+
+**********************
+
+.. table:: 
+
+   +---------+--------------+-----------------+
+   | Address | Identifier   | Description     |
+   +=========+==============+=================+
+   | 0x12    | U3           | TPS6590379 PMIC |
+   |         |              | DVS             |
+   +---------+--------------+-----------------+
+   | 0x41    | U78          | STMPE811Q ADC   |
+   |         |              | and GPIO        |
+   |         |              | expander        |
+   +---------+--------------+-----------------+
+   | 0x47    | U13          | HD3SS3220 USB   |
+   |         |              | Type-C DRP port |
+   |         |              | controller      |
+   +---------+--------------+-----------------+
+   | 0x50    | U9           | 24LC32 board ID |
+   |         |              | EEPROM          |
+   +---------+--------------+-----------------+
+   | 0x58    | U3           | TPS6590379 PMIC |
+   |         |              | power registers |
+   +---------+--------------+-----------------+
+   | 0x5a    | U3           | TPS6590379 PMIC |
+   |         |              | interfaces and  |
+   |         |              | auxiliaries     |
+   +---------+--------------+-----------------+
+   | 0x5c    | U3           | TPS6590379 PMIC |
+   |         |              | trimming and    |
+   |         |              | test            |
+   +---------+--------------+-----------------+
+   | 0x5e    | U3           | TPS6590379 PMIC |
+   |         |              | OTP             |
+   +---------+--------------+-----------------+
diff --git a/boards/beaglebone/ai/ch06.rst b/boards/beaglebone/ai/ch06.rst
index 12adf16f2f16af7f87c384cb000cb95678333a31..601a57c125c7f78b37da6d42f339514aae642294 100644
--- a/boards/beaglebone/ai/ch06.rst
+++ b/boards/beaglebone/ai/ch06.rst
@@ -69,7 +69,7 @@ analog-to-digital converter (GPADC) with three external input channels.
 **Figure 23** below shows how the USB-C power input is connected to the
 **TPS6590379**.
 
-TODO: (Schematic screenshoot)
+TODO: (Schematic screenshot)
 
 Power Button
 ==============
@@ -224,7 +224,7 @@ CPU’s:
 -  PRU-ICSS2 PRU1
 
 The programmable nature of the PRUs, along with their access to pins,
-events and all SoC resources, provides flexibility in implmenting fast
+events and all SoC resources, provides flexibility in implementing fast
 real-time responses, specialized data handling operations, peripheral
 interfaces and in off-loading tasks from the other processor cores of
 the SoC.
@@ -262,7 +262,7 @@ Resources
 
 -  Great resources for PRU and BeagleBone® has been compiled here https://beagleboard.org/pru
 -  The PRU Cookbook provides examples and getting started information https://github.com/MarkAYoder/PRUCookbook
--  Detailed specification is availble at http://processors.wiki.ti.com/index.php/PRU-ICSS
+-  Detailed specification is available at http://processors.wiki.ti.com/index.php/PRU-ICSS
 
 FAQ
 
diff --git a/boards/beaglebone/ai/ch12.rst b/boards/beaglebone/ai/ch12.rst
index fefd7e1afcb59158fb10db1974a36ebc129f244f..a5700477854f832e1db2de3b50ab787da4c3eaf8 100644
--- a/boards/beaglebone/ai/ch12.rst
+++ b/boards/beaglebone/ai/ch12.rst
@@ -40,7 +40,7 @@ WARRANTY AND DISCLAIMERS
 
 The design materials referred to in this document are *\*NOT
 SUPPORTED\** and **DO NOT** constitute a reference design. Support of
-the open source developer community is provided through the the
+the open source developer community is provided through the
 resources defined at https://beagleboard.org/support.
 
 THERE IS NO WARRANTY FOR THE DESIGN MATERIALS, TO THE EXTENT PERMITTED
diff --git a/boards/beaglebone/black/System-Reference-Manual.asciidoc b/boards/beaglebone/black/System-Reference-Manual.asciidoc
index 3fcc160178a764cff17f2ee66fc9bc3fa0900230..c46cf6cb13b627600f4299e8b530afd799a92748 100644
--- a/boards/beaglebone/black/System-Reference-Manual.asciidoc
+++ b/boards/beaglebone/black/System-Reference-Manual.asciidoc
@@ -940,7 +940,7 @@ on the board.
 ==== 5.3.1 512MB DDR3L
 
 A single 256Mb x16 DDR3L 4Gb (512MB) memory device is used. The memory
-used is is one of two devices:
+used is one of two devices:
 
 * MT41K256M16HA-125 from Micron
 * D2516EC4BXGGB from Kingston
@@ -1537,7 +1537,7 @@ devices can support this voltage setting of 1.35V.
 
 The power up process is consists of several stages and events. <<figure-26>>
 describes the events that make up the power up process for the
-processer from the PMIC. This diagram is used elsewhere to convey
+processor from the PMIC. This diagram is used elsewhere to convey
 additional information. I saw no need to bust it up into smaller
 diagrams. It is from the processor datasheet supplied by Texas
 Instruments.
@@ -2464,7 +2464,7 @@ image:media/image67.png[media/image67.png,title="media/image67.png",width=427,he
 ==== 6.12.3 PRU-ICSS Pin Access
 
 Both PRU 0 and PRU1 are accessible from the expansion headers. Some may
-not be useable without first disabling functions on the board like LCD
+not be usable without first disabling functions on the board like LCD
 for example. Listed below is what ports can be accessed on each PRU.
 
 PRU0
@@ -5816,7 +5816,7 @@ for the display to catch up and show the image.
 [[audio]]
 ==== 11.4.6 AUDIO
 
-Audio will only work on TV resolutions. This is due to the the way the
+Audio will only work on TV resolutions. This is due to the way the
 specification was written. Some displays have built in speakers and
 others require external. Make sure you have a TV resolution and speakers
 are connected if they are not built in. The SW should default to a TV
diff --git a/boards/beaglebone/black/ch03.rst b/boards/beaglebone/black/ch03.rst
index 32370ed41994c1ecbe24bb3608c1226ebb792314..c4e6eb7ea6fcc8b2db933a106feb499d0d85eb1a 100644
--- a/boards/beaglebone/black/ch03.rst
+++ b/boards/beaglebone/black/ch03.rst
@@ -58,7 +58,7 @@ Each of these configurations is discussed in general terms in the
 following sections.
 
 For an up-to-date list of confirmed working accessories please go to
-`BeagleBone_Black_Accessories <http://elinux.org/BeagleBone_Black_Accessories_>`_
+`BeagleBone_Black_Accessories <https://elinux.org/Beagleboard:BeagleBone_Black_Accessories>`_
  
 
 
@@ -166,7 +166,7 @@ following accessories:
 * 1 x USB wireless keyboard and mouse combo.
 * 1 x USB HUB (OPTIONAL). The board has only one USB host port, so you may need to use a USB Hub if your keyboard and mouse requires two ports.
 
-For an up-to-date list of confirmed working accessories please go to `BeagleBone_Black_Accessories <http://elinux.org/BeagleBone_Black_Accessories_>`_
+For an up-to-date list of confirmed working accessories please go to `BeagleBone_Black_Accessories <https://elinux.org/Beagleboard:BeagleBone_Black_Accessories>`_
 
 Connecting Up the Board
 *****************************
diff --git a/boards/beaglebone/black/ch05.rst b/boards/beaglebone/black/ch05.rst
index 9ea7ffa22a55946ff52051efb7bc3eb50ee24b5f..cd5ab7c3d8f96a6c66a8e8066b4776e4dd2de165 100644
--- a/boards/beaglebone/black/ch05.rst
+++ b/boards/beaglebone/black/ch05.rst
@@ -33,7 +33,7 @@ on the board.
 *****************
 
 A single 256Mb x16 DDR3L 4Gb (512MB) memory device is used. The memory
-used is is one of two devices:
+used is one of two devices:
 
 * MT41K256M16HA-125 from Micron
 * D2516EC4BXGGB from Kingston
diff --git a/boards/beaglebone/black/ch06.rst b/boards/beaglebone/black/ch06.rst
index 9917ca9d01f8fa87416bb169f0d3b394d0e34e64..34afa1125e41ea51aa9ad812519ab533edf28e11 100644
--- a/boards/beaglebone/black/ch06.rst
+++ b/boards/beaglebone/black/ch06.rst
@@ -365,7 +365,7 @@ devices can support this voltage setting of 1.35V.
 
 The power up process is consists of several stages and events. *figure-26*
 describes the events that make up the power up process for the
-processer from the PMIC. This diagram is used elsewhere to convey
+processor from the PMIC. This diagram is used elsewhere to convey
 additional information. I saw no need to bust it up into smaller
 diagrams. It is from the processor datasheet supplied by Texas
 Instruments.
@@ -1429,7 +1429,7 @@ PRU-ICSS Pin Access
 **************************
 
 Both PRU 0 and PRU1 are accessible from the expansion headers. Some may
-not be useable without first disabling functions on the board like LCD
+not be usable without first disabling functions on the board like LCD
 for example. Listed below is what ports can be accessed on each PRU.
 
 * 8 outputs or 9 inputs
diff --git a/boards/beaglebone/black/ch11.rst b/boards/beaglebone/black/ch11.rst
index 289c40100d5ab5cc94c212b8d87b8ac6c4d8de80..0937c8c27950aea8023e6a2245f3a820b8b1139a 100644
--- a/boards/beaglebone/black/ch11.rst
+++ b/boards/beaglebone/black/ch11.rst
@@ -159,7 +159,7 @@ for the display to catch up and show the image.
 AUDIO
 ************
 
-Audio will only work on TV resolutions. This is due to the the way the
+Audio will only work on TV resolutions. This is due to the way the
 specification was written. Some displays have built in speakers and
 others require external. Make sure you have a TV resolution and speakers
 are connected if they are not built in. The SW should default to a TV
diff --git a/boards/beaglebone/blue/ssh.rst b/boards/beaglebone/blue/ssh.rst
index 42e5ea7dab589e042ead904cebc89b115180368d..3b8a39dae5888db455e16711967378404d59e052 100644
--- a/boards/beaglebone/blue/ssh.rst
+++ b/boards/beaglebone/blue/ssh.rst
@@ -7,7 +7,7 @@ If you don’t have ssh installed, install it. (google is your friend)
 Then `ssh debian@192.168.7.2` The board will tell you what the password
 is, on my it was `temppwd`.
 
-To change your password use the command passwd it will ask you what your
+To change your password use the command password it will ask you what your
 current password is, then ask for the replacement. Then it will say it
 was too simple and you have to do it again. Normal stuff.
 
@@ -18,10 +18,10 @@ If you want to insist on using your simple password, try this.
    sudo -s
    (become superuser/root)
    enter your password
-   passwd debian
+   password debian
     (put your simple password in)
    exit
    (exit from superuser/root) 
 
-When you are running as root, passwd is more compliant and will accept
+When you are running as root, password is more compliant and will accept
 simple password
diff --git a/boards/beagleconnect/freedom/index.rst b/boards/beagleconnect/freedom/index.rst
index 3d1180027569f8b1fbba6fb2470d2dffc20e850b..f5d6eb42b5ccfc29197c8babeb237dbd0f48c8b1 100644
--- a/boards/beagleconnect/freedom/index.rst
+++ b/boards/beagleconnect/freedom/index.rst
@@ -99,7 +99,7 @@ they want. Maintenance of the code is centralized in a small reusable set of
 microcontroller firmware and the Linux kernel, which is highly peer reviewed 
 under a `highly-regarded governance model <https://wiki.p2pfoundation.net/Linux_-_Governance>`_. 
 
-On-going maintenance
+ongoing maintenance
 ====================
 
 Because there isn't code specific to any given network-of-devices configuration
diff --git a/boards/beagleconnect/freedom/usage.rst b/boards/beagleconnect/freedom/usage.rst
index 862e89741edf6889ba77c2e9f3a30194f14665ce..c98d213f99f565a10966776173baec8224e94a74 100644
--- a/boards/beagleconnect/freedom/usage.rst
+++ b/boards/beagleconnect/freedom/usage.rst
@@ -20,7 +20,7 @@ Enable a Linux host with BeagleConnect
 
 Log into a host system running Linux that is BeagleConnectâ„¢ enabled. Enable a
 Linux host with BeagleConnectâ„¢ by plugging a **BeagleConnectâ„¢ gateway device**
-into it’s USB port. You’ll also want to have a **BeagleConnect™ node device**
+into its USB port. You’ll also want to have a **BeagleConnect™ node device**
 with a sensor, actuator or indicator device connected.
 
 .. note::
diff --git a/boards/beagleconnect/technology/index.rst b/boards/beagleconnect/technology/index.rst
index 06196ee5de47d7ac2ca3931c5483f821c1bd70dd..d7e2668f4851749c5dfeadd53f5196871b26ac38 100644
--- a/boards/beagleconnect/technology/index.rst
+++ b/boards/beagleconnect/technology/index.rst
@@ -326,7 +326,7 @@ Flashing via a Linux Host
 If flashing the Freedom board via the BeagleBone fails here's a trick you can try to flash from a Linux host.
 
 Use :code:`sshfs` to mount the Bone's files on the Linux host. This assumes the
-Bone is plugged in the the USB and appears at :code:`192.168.7.2`:
+Bone is plugged in the USB and appears at :code:`192.168.7.2`:
 
 .. code-block:: bash
 
@@ -454,7 +454,7 @@ are 2 critical pieces of information:
 
 #. **The RF Channel**: As you may have guessed, IEEE 802.15.4 devices are only 
    able to communicate with each other if they are using the same frequency to 
-   transmit and recieve data. This information is part of the Physical Layer.
+   transmit and receive data. This information is part of the Physical Layer.
 
 #. The `PAN identifier <https://www.silabs.com/community/wireless/proprietary/knowledge-base.entry.html/2019/10/04/connect_tutorial6-ieee802154addressing-rapc>`_: 
    IEEE 802.15.4 devices are only be able to communicate with one another if 
@@ -580,9 +580,9 @@ Cloning the repository
 ^^^^^^^^^^^^^^^^^^^^^^
 
 This repository utilizes `git submodules <https://git-scm.com/book/en/v2/Git-Tools-Submodules>`_ 
-to keep track of all of the projects required to reproduce the on-going work. 
+to keep track of all of the projects required to reproduce the ongoing work. 
 The instructions here only cover checking out the :code:`demo` branch which 
-should stay in a tested state. On-going development will be on the 
+should stay in a tested state. ongoing development will be on the 
 :code:`master` branch.
 
 Note: The parent directory :code:`~` is simply used as a placeholder for testing. 
diff --git a/boards/pocketbeagle/original/System-Reference-Manual.wiki b/boards/pocketbeagle/original/System-Reference-Manual.wiki
index 15521e70682d79f8e202184753158c41a6b50714..ab05fa7adc983113e6ad4977a6561ab9a7de2fbf 100644
--- a/boards/pocketbeagle/original/System-Reference-Manual.wiki
+++ b/boards/pocketbeagle/original/System-Reference-Manual.wiki
@@ -347,9 +347,9 @@ This section covers the specifications and features of the board in a chart and
 |-
 | UART||3 UARTs accessible with 2 enabled by default
 |-
-| I2C||2 I2C busses enabled by default
+| I2C||2 I2C buses enabled by default
 |-
-| SPI||2 SPI busses with single chip selects enabled by default
+| SPI||2 SPI buses with single chip selects enabled by default
 |-
 | PWM||4 Pulse Width Modulation outputs accessible with 2 enabled by default
 |-
@@ -586,7 +586,7 @@ The tables below show the power related pins available on PocketBeagle's Expansi
 | GND
 |}
 
-'''Note''':  A comprehensive tutorial for Power Inputs and Outputs for the OSD335x System in Package is available in the [https://octavosystems.com/app_notes/osd335x-design-tutorial/bare-minimum-boot/power-input-ouput/ 'Tutorial Series'] on the Octavo Systems website.
+'''Note''':  A comprehensive tutorial for Power Inputs and Outputs for the OSD335x System in Package is available in the [https://octavosystems.com/app_notes/osd335x-design-tutorial/bare-minimum-boot/power-input-output/ 'Tutorial Series'] on the Octavo Systems website.
 
 === 5.5 JTAG Pads  ===
 
diff --git a/boards/pocketbeagle/original/ch04.rst b/boards/pocketbeagle/original/ch04.rst
index 71faaa153770259f4dd38b2335226ed0d80eb2ea..2e3c7f0c074231784e3d5d30a318ced424bb2c3e 100644
--- a/boards/pocketbeagle/original/ch04.rst
+++ b/boards/pocketbeagle/original/ch04.rst
@@ -91,9 +91,9 @@ interfaces that make up the board.
     | UART                  | 3 UARTs accessible with 2 enabled by        |
     |                       | default                                     |
     +-----------------------+---------------------------------------------+
-    | I2C                   | 2 I2C busses enabled by default             |
+    | I2C                   | 2 I2C buses enabled by default             |
     +-----------------------+---------------------------------------------+
-    | SPI                   | 2 SPI busses with single chip selects       |
+    | SPI                   | 2 SPI buses with single chip selects       |
     |                       | enabled by default                          |
     +-----------------------+---------------------------------------------+
     | PWM                   | 4 Pulse Width Modulation outputs accessible |
diff --git a/boards/pocketbeagle/original/ch05.rst b/boards/pocketbeagle/original/ch05.rst
index cd6e1fd274ff2f2b040b95963ca451209a2f7432..6900a91dbd5920ee16883d3e4c7ae076f82827ba 100644
--- a/boards/pocketbeagle/original/ch05.rst
+++ b/boards/pocketbeagle/original/ch05.rst
@@ -222,7 +222,7 @@ Expansion Headers.
     | P2.21       | GND         |             |             | GND         |
     +-------------+-------------+-------------+-------------+-------------+
 
-.. Note:: A comprehensive tutorial for Power Inputs and Outputs for the OSD335x System in Package is available in the `'Tutorial Series' <https://octavosystems.com/app_notes/osd335x-design-tutorial/bare-minimum-boot/power-input-ouput/>`__ on the Octavo Systems website.
+.. Note:: A comprehensive tutorial for Power Inputs and Outputs for the OSD335x System in Package is available in the `'Tutorial Series' <https://octavosystems.com/app_notes/osd335x-design-tutorial/bare-minimum-boot/power-input-output/>`__ on the Octavo Systems website.
 
 .. _jtag_pads:
 
diff --git a/books/beaglebone-cookbook/01basics/basics.rst b/books/beaglebone-cookbook/01basics/basics.rst
index 892733833516e138e21689c3c4f956cb3082e710..95744e6564802b20fe7ff4c4079a9b8d9f65f347 100644
--- a/books/beaglebone-cookbook/01basics/basics.rst
+++ b/books/beaglebone-cookbook/01basics/basics.rst
@@ -175,7 +175,7 @@ Connect your Bone to the Internet and log into it.  From the command line run:
     bone$ ls
 
 You can look around from the command line, or explore from Visual Sudio Code. 
-If you ar using VSC, go to the *File* menu and select *Open Folder ...* and 
+If you are using VSC, go to the *File* menu and select *Open Folder ...* and 
 select beaglebone-cookbook-code. Then explore.
 
 .. _basics_wire_breadboard:
diff --git a/books/beaglebone-cookbook/02sensors/sensors.rst b/books/beaglebone-cookbook/02sensors/sensors.rst
index d5e6400db18980febaa6fb0b9149e99b1ebd56aa..79a3bf0e519f35da02ab7c93e50eb4a30d03f51d 100644
--- a/books/beaglebone-cookbook/02sensors/sensors.rst
+++ b/books/beaglebone-cookbook/02sensors/sensors.rst
@@ -725,7 +725,7 @@ Assuming the TMP101 is on bus 2 (the last digit is the bus number)
 
   bone$ cd /sys/class/i2c-adapter/
   bone$ ls
-  i2c-0  i2c-1  i2c-2			# Three i2c busses (bus 0 is internal)
+  i2c-0  i2c-1  i2c-2			# Three i2c buses (bus 0 is internal)
   bone$ cd i2c-2	# Pick bus 2
   bone$ ls -ls
   0 --w--w---- 1 root gpio 4096 Jul  1 09:24 delete_device
diff --git a/books/beaglebone-cookbook/03displays/displays.rst b/books/beaglebone-cookbook/03displays/displays.rst
index dcd7c689e60c1af0f47748dd2a4e88f3aeda78bf..b6d254b836adf69ca0a871a61d4584160bfde6bd 100644
--- a/books/beaglebone-cookbook/03displays/displays.rst
+++ b/books/beaglebone-cookbook/03displays/displays.rst
@@ -367,7 +367,7 @@ LED matrix display (matrixLEDi2c.py)
 
 5. Now, we are ready to display the various patterns. After each pattern is displayed, we sleep a certain amount of time so that the pattern can be seen.
 
-6. Finally, send commands to the LED matrix to set the brightness. This makes the disply fade out and back in again.
+6. Finally, send commands to the LED matrix to set the brightness. This makes the display fade out and back in again.
 
 .. _displays_drive5V:
 
diff --git a/books/beaglebone-cookbook/05tips/tips.rst b/books/beaglebone-cookbook/05tips/tips.rst
index 97f1607b4cf82521678da5a72cdec76a1092cd25..573cdfe8e1ec479addac24fb7a58bcbfec022697 100644
--- a/books/beaglebone-cookbook/05tips/tips.rst
+++ b/books/beaglebone-cookbook/05tips/tips.rst
@@ -160,12 +160,12 @@ connect by using the following command to log in as user *debian*, (note the *$*
 
 .. code-block:: bash
 
-   bone$ passwd
+   bone$ password
    Changing password for debian.
    (current) UNIX password: 
    Enter new UNIX password: 
    Retype new UNIX password: 
-   passwd: password updated successfully
+   password: password updated successfully
 
 
 .. _tips_serial:
@@ -606,9 +606,9 @@ To find the IP address, open a terminal window and run the *ip* command:
          valid_lft forever preferred_lft forever
       inet6 fe80::747e:49ff:fe46:1b78/64 scope link 
          valid_lft forever preferred_lft forever
-   5: can0: <NOARP,ECHO> mtu 16 qdisc noop state DOWN group default qlen 10
+   5: can0: <NOARP,ECHO> mtu 16 qdisc no-op state DOWN group default qlen 10
       link/can 
-   6: can1: <NOARP,ECHO> mtu 16 qdisc noop state DOWN group default qlen 10
+   6: can1: <NOARP,ECHO> mtu 16 qdisc no-op state DOWN group default qlen 10
       link/can
 
 
diff --git a/books/beaglebone-cookbook/06iot/iot.rst b/books/beaglebone-cookbook/06iot/iot.rst
index 9bcb806fe2cd2352193d5b8b996a1917d60eb36a..343e8b85210ee0c30e59698c21cfb2b8cb4a81e6 100644
--- a/books/beaglebone-cookbook/06iot/iot.rst
+++ b/books/beaglebone-cookbook/06iot/iot.rst
@@ -1101,4 +1101,4 @@ Discussion
 
 When you run the script in :ref:`js_launchPadBeagle_code`, the Bone opens up the 
 serial port and every second sends a new command, either *r* or *g*. 
-The LaunchPad waits for the command and, when it arrives, responds by toggling the corresponding LED.
+The LaunchPad waits for the command, when it arrives, responds by toggling the corresponding LED.
diff --git a/books/beaglebone-cookbook/07kernel/kernel.rst b/books/beaglebone-cookbook/07kernel/kernel.rst
index b57809bb6eccaa7189be53a671394add104b8d8d..2e3d18ed6896fdde2bc9fe811f0939aeb7cd5a55 100644
--- a/books/beaglebone-cookbook/07kernel/kernel.rst
+++ b/books/beaglebone-cookbook/07kernel/kernel.rst
@@ -26,7 +26,7 @@ Updating the Kernel
 Problem
 --------
 
-You have an out-of-date kernel and want to want to make it current.
+You have an out-of-date kernel and want to make it current.
 
 Solution
 ---------
@@ -363,7 +363,7 @@ This is easier than it sounds, thanks to some very powerful scripts.
 
 .. warning:: 
     Be sure to run this recipe on your host computer. The Bone has enough computational 
-    power to compile a module or two, but compiling the entire kernel takes lots of time and resourses.
+    power to compile a module or two, but compiling the entire kernel takes lots of time and resources.
 
 
 Downloading and Compiling the Kernel
@@ -380,7 +380,7 @@ To download and compile the kernel, follow these steps:
     host$ ./build_kernel.sh # <4>
 
 1. The first command clones a repository with the tools to build the kernel for the Bone.
-2. This command lists all the different versions of the kernel that you can build. You'll need to pick one of these. How do you know which one to pick? A good first step is to choose the one you are currently running.  *uname -a* will reveal which one that is. When you are able to reproduce the current kernel, go to `Linux Kernel Newbies <http://kernelnewbies.org/>`_ to see what features are available in other kernels. `LinuxChanges <http://bit.ly/1AjiL00>`_ shows the features in the newest kernel and `LinuxVersions <http://bit.ly/1MrIHx3>`_ links to features of pervious kernels.
+2. This command lists all the different versions of the kernel that you can build. You'll need to pick one of these. How do you know which one to pick? A good first step is to choose the one you are currently running.  *uname -a* will reveal which one that is. When you are able to reproduce the current kernel, go to `Linux Kernel Newbies <http://kernelnewbies.org/>`_ to see what features are available in other kernels. `LinuxChanges <http://bit.ly/1AjiL00>`_ shows the features in the newest kernel and `LinuxVersions <http://bit.ly/1MrIHx3>`_ links to features of previous kernels.
 3. When you know which kernel to try, use *git checkout* to check it out. This command checks out at tag *3.8.13-bone60* and creates a new branch, *v3.8.13-bone60*.
 4. *build_kernel* is the master builder. If needed, it will download the cross compilers needed to compile the kernel (`linaro <http://www.linaro.org/>`_ is the current cross compiler). If there is a kernel at ``~/linux-dev``, it will use it; otherwise, it will download a copy to ``bb-kernel/ignore/linux-src``. It will then patch the kernel so that it will run on the Bone. 
 
diff --git a/books/beaglebone-cookbook/08realtime/realtime.rst b/books/beaglebone-cookbook/08realtime/realtime.rst
index c306a7b460749635c4dee5f837afbbfe3491177f..cba4820d7c752f563b1f1ece414893b4a124e8bf 100644
--- a/books/beaglebone-cookbook/08realtime/realtime.rst
+++ b/books/beaglebone-cookbook/08realtime/realtime.rst
@@ -466,7 +466,7 @@ Congratulations you are running the RT kernel.
     If the Beagle appears to be running (the LEDs are flashing) but you are having trouble connecting 
     via *ssh 192.168.7.2*, you can try connecting using the approach shown in :ref:`tips_FTDI`.
 
-Now run the scipt again (note it's being saved in *rt.hist* this time.)
+Now run the script again (note it's being saved in *rt.hist* this time.)
 
 .. code-block:: bash
 
@@ -493,7 +493,7 @@ This will generate the file *cyclictest.png* which contains your plot.  It shoul
     Histogram of Non-RT and RT kernels running cyclictest
 
 Notice the NON-RT data have much longer latenices. They may not happen often (fewer than 10 times in each bin), 
-but they are occuring and may be enough to miss a real-time deadline.
+but they are occurring and may be enough to miss a real-time deadline.
 
 The PREEMPT-RT times are all under a 150s. 
 
diff --git a/books/beaglebone-cookbook/09capes/capes.rst b/books/beaglebone-cookbook/09capes/capes.rst
index 5a0c988d687f76d2cb9c1178b7aca919f4943518..8374b0a92043e6f9fa88579527f6a114ea929eb3 100644
--- a/books/beaglebone-cookbook/09capes/capes.rst
+++ b/books/beaglebone-cookbook/09capes/capes.rst
@@ -1036,9 +1036,9 @@ After Upverter is installed, run the file (``quickBot.fzz``) that generated :ref
     DEBUG:main:parsing quickBot.fzz in format fritzing
     host$ ls -l
     total 188
-    -rw-rw-r-- 1 ubuntu ubuntu  63914 Nov 25 19:47 quickBot-eaglexml.sch
-    -rw-r--r-- 1 ubuntu ubuntu 122193 Nov 25 19:43 quickBot.fzz
-    drwxrwxr-x 9 ubuntu ubuntu   4096 Nov 25 19:42 schematic-file-converter
+    -rw-rw-r-- 1 ubuntu  63914 Nov 25 19:47 quickBot-eaglexml.sch
+    -rw-r--r-- 1 ubuntu 122193 Nov 25 19:43 quickBot.fzz
+    drwxrwxr-x 9 ubuntu   4096 Nov 25 19:42 schematic-file-converter
 
 
 :ref:`caps_eagle` shows the output of the conversion.
diff --git a/books/beaglebone-cookbook/09capes/figures/quickBot-eaglexml.sch b/books/beaglebone-cookbook/09capes/figures/quickBot-eaglexml.sch
index 240eb3ed3cd2a143af469473ed096d03ebd93d79..b30431fd3790abb56091b35f38eccc809f98fa70 100644
--- a/books/beaglebone-cookbook/09capes/figures/quickBot-eaglexml.sch
+++ b/books/beaglebone-cookbook/09capes/figures/quickBot-eaglexml.sch
@@ -4,7 +4,7 @@
     <drawing>
         <layers>
             <layer name="Nets" color="2" number="91" visible="yes" active="yes" fill="1"/>
-            <layer name="Busses" color="1" number="92" visible="yes" active="yes" fill="1"/>
+            <layer name="buses" color="1" number="92" visible="yes" active="yes" fill="1"/>
             <layer name="Pins" color="2" number="93" visible="no" active="yes" fill="1"/>
             <layer name="Symbols" color="4" number="94" visible="yes" active="yes" fill="1"/>
             <layer name="Names" color="7" number="95" visible="yes" active="yes" fill="1"/>
diff --git a/books/pru-cookbook/01case/case.rst b/books/pru-cookbook/01case/case.rst
index 0500a5baca1edeb7e144dddbe914c856a7008e30..a07cfd58bc8680fe869532cf85231cade6a39a95 100644
--- a/books/pru-cookbook/01case/case.rst
+++ b/books/pru-cookbook/01case/case.rst
@@ -268,7 +268,7 @@ eQEP to pin mapping
 .. note::
 
    The I/O pins on the Beagles have a mutliplexer that lets you select what I/O 
-   appears on a given pin.  The Blue has the mux already configured to to run these
+   appears on a given pin.  The Blue has the mux already configured to run these
    examples.  Follow the instructions in 
    :ref:`details_configure_encoders` 
    to configure the pins for the Black and the Pocket.
diff --git a/books/pru-cookbook/01case/code/main_pru1.c b/books/pru-cookbook/01case/code/main_pru1.c
index 8d751b3e65e06a8dd4e47c9ef6f28f370d60ca24..2216a9ed79efeba68e5400519ff246e08734a246 100644
--- a/books/pru-cookbook/01case/code/main_pru1.c
+++ b/books/pru-cookbook/01case/code/main_pru1.c
@@ -39,8 +39,8 @@
 #include "resource_table_pru1.h"
 
 // The function is defined in pru1_asm_blinky.asm in same dir
-// We just need to add a declaration here, the defination can be
-// seperately linked
+// We just need to add a declaration here, the definition can be
+// separately linked
 extern void start(void);
 
 void main(void)
diff --git a/books/pru-cookbook/02start/code/hello.pru0.c b/books/pru-cookbook/02start/code/hello.pru0.c
index ab61e79eaafed3a7198532358d9ae3415559048f..239a7ad04f17611a30d75d87d735a0ac6cc3ef23 100644
--- a/books/pru-cookbook/02start/code/hello.pru0.c
+++ b/books/pru-cookbook/02start/code/hello.pru0.c
@@ -15,7 +15,7 @@ void main(void) {
 	CT_CFG.SYSCFG_bit.STANDBY_INIT = 0;
 
 	for(i=0; i<10; i++) {
-		gpio1[GPIO_SETDATAOUT]   = USR3;	// The the USR3 LED on
+		gpio1[GPIO_SETDATAOUT]   = USR3;	// the USR3 LED on
 
 		__delay_cycles(500000000/5);    	// Wait 1/2 second
 
diff --git a/books/pru-cookbook/02start/code/hello.pru1_1.c b/books/pru-cookbook/02start/code/hello.pru1_1.c
index 8cb8146f74c88ee890a5a251108c19642cdb0c75..51a1b351f45c3128a4e81b8dbaec39ec11b54259 100644
--- a/books/pru-cookbook/02start/code/hello.pru1_1.c
+++ b/books/pru-cookbook/02start/code/hello.pru1_1.c
@@ -15,7 +15,7 @@ void main(void) {
 	CT_CFG.SYSCFG_bit.STANDBY_INIT = 0;
 
 	for(i=0; i<10; i++) {
-		gpio3[GPIO_SETDATAOUT]   = USR3;	// The the USR3 LED on
+		gpio3[GPIO_SETDATAOUT]   = USR3;	// the USR3 LED on
 
 		__delay_cycles(500000000/5);    	// Wait 1/2 second
 
diff --git a/books/pru-cookbook/02start/code/hello2.pru0.c b/books/pru-cookbook/02start/code/hello2.pru0.c
index d268d33b637cb9d51a9928589a69ce158101a4e2..a9be0143cf80b8a933197d8ceabd95e4353a76fa 100644
--- a/books/pru-cookbook/02start/code/hello2.pru0.c
+++ b/books/pru-cookbook/02start/code/hello2.pru0.c
@@ -15,7 +15,7 @@ void main(void) {
 	CT_CFG.SYSCFG_bit.STANDBY_INIT = 0;
 
 	for(i=0; i<10; i++) {
-		gpio1[GPIO_SETDATAOUT]   = USR1;			// The the USR3 LED on
+		gpio1[GPIO_SETDATAOUT]   = USR1;			// the USR3 LED on
 		gpio1[GPIO_CLEARDATAOUT] = USR2;
 		
 		// __R30 |= gpio;		// Set the GPIO pin to 1
diff --git a/books/pru-cookbook/02start/code/hello2.pru1.c b/books/pru-cookbook/02start/code/hello2.pru1.c
index 15df54495ecf681b3707a42dfaa6dfae65990559..c34558708b22da2109f5520bab9d631550f89f0b 100644
--- a/books/pru-cookbook/02start/code/hello2.pru1.c
+++ b/books/pru-cookbook/02start/code/hello2.pru1.c
@@ -15,7 +15,7 @@ void main(void) {
 	CT_CFG.SYSCFG_bit.STANDBY_INIT = 0;
 
 	for(i=0; i<10; i++) {
-		gpio1[GPIO_SETDATAOUT]   = USR1;			// The the USR3 LED on
+		gpio1[GPIO_SETDATAOUT]   = USR1;			// the USR3 LED on
 		gpio1[GPIO_CLEARDATAOUT] = USR2;
 		
 		// __R30 |= gpio;		// Set the GPIO pin to 1
diff --git a/books/pru-cookbook/04debug/debug.rst b/books/pru-cookbook/04debug/debug.rst
index 42a54d4a220c75e8db8ac7b1a98a480fd1dcda0c..38e34cb9cc6fbfa1c4b456993c598c1482c427ab 100644
--- a/books/pru-cookbook/04debug/debug.rst
+++ b/books/pru-cookbook/04debug/debug.rst
@@ -61,7 +61,7 @@ Solution
 ---------
 
 The command ``dmesg`` outputs useful information when dealing with the kernel.
-Simplying running ``dmesg -Hw`` can tell you a lot.  The ``-H`` flag puts the
+Simply running ``dmesg -Hw`` can tell you a lot.  The ``-H`` flag puts the
 dates in the human readable form, the ``-w`` tells it to wait for more information.
 Often I'll have a window open running ``dmesg -Hw``.
 
@@ -253,7 +253,7 @@ Here we see some values on the heap.
   [0x0220] 0x0a4fe833 0xb222ebda 0xe5575236 0xc50cbefd 
   [0x0230] 0xb037c0d7 0xf48bbe23 0x88c460f0 0x011550d4
 
-Data written explicity to ``0x0200`` of the DRAM.
+Data written explicitly to ``0x0200`` of the DRAM.
 
 .. code-block:: bash
 
@@ -270,7 +270,7 @@ Here's the shared memory.
 You can also use ``prudebug`` to set breakpoints and single step, 
 but I haven't used that feature much.
 
-:ref:`memory_allocation` gives examples of how you can control where your vaiables are stored in memory.
+:ref:`memory_allocation` gives examples of how you can control where your variables are stored in memory.
 
 UART
 ******
diff --git a/books/pru-cookbook/05blocks/blocks.rst b/books/pru-cookbook/05blocks/blocks.rst
index c1df1d842c693b9781d9ab61ee3d8017848aa9f3..21fa40967ca178fb6cc55c43294152ebd746b4a6 100644
--- a/books/pru-cookbook/05blocks/blocks.rst
+++ b/books/pru-cookbook/05blocks/blocks.rst
@@ -986,11 +986,11 @@ Discussion
 The figure below shows the two PRUs are synchronized, though there is some extra
 overhead in the process so the period is longer.
 
-.. figure:: figures/pwm8_prus_sycned.png
+.. figure:: figures/pwm8_prus_synced.png
   :align: center
   :alt: pwm8.pru0 PRUs synced
 
-  pwm8.pru0 PRUs sycned
+  pwm8.pru0 PRUs synced
 
 This isn't much different from the previous examples.
 
diff --git a/books/pru-cookbook/05blocks/code/pwm8.pru0.c b/books/pru-cookbook/05blocks/code/pwm8.pru0.c
index c566573f6f681f7642e61d5c159c8558d3895d33..25499c3cd679d7df3c9ba20db331948700157862 100644
--- a/books/pru-cookbook/05blocks/code/pwm8.pru0.c
+++ b/books/pru-cookbook/05blocks/code/pwm8.pru0.c
@@ -31,7 +31,7 @@ volatile unsigned int *pru0_dram = (unsigned int *) (PRU0_DRAM + 0x200);
 volatile register uint32_t __R30;
 volatile register uint32_t __R31;
 
-// Initialize interupts so the PRUs can be syncronized.
+// Initialize interrupts so the PRUs can be synchronized.
 // PRU1 is started first and then waits for PRU0
 // PRU0 is then started and tells PRU1 when to start going
 void configIntc(void) {	
diff --git a/books/pru-cookbook/05blocks/code/pwm8.pru1.c b/books/pru-cookbook/05blocks/code/pwm8.pru1.c
index cf5c241c99addc0d8b958724554e078f9a53412c..7d4da138d6595ae4380655c3fffb3b8cdfb854ca 100644
--- a/books/pru-cookbook/05blocks/code/pwm8.pru1.c
+++ b/books/pru-cookbook/05blocks/code/pwm8.pru1.c
@@ -31,7 +31,7 @@ volatile unsigned int *pru0_dram = (unsigned int *) (PRU0_DRAM + 0x200);
 volatile register uint32_t __R30;
 volatile register uint32_t __R31;
 
-// Initialize interupts so the PRUs can be syncronized.
+// Initialize interrupts so the PRUs can be synchronized.
 // PRU1 is started first and then waits for PRU0
 // PRU0 is then started and tells PRU1 when to start going
 
diff --git a/books/pru-cookbook/06io/io.rst b/books/pru-cookbook/06io/io.rst
index 80f20a5398e1a92a1e3877d5bc5489136bb06b62..ad4fdd59f5c96d2b6298f1d9e84e44f9aa63ba20 100644
--- a/books/pru-cookbook/06io/io.rst
+++ b/books/pru-cookbook/06io/io.rst
@@ -39,7 +39,7 @@ On the images for the BeagleBone Black, the HDMI display driver is enabled by de
 and uses many of the ``P8`` pins.  If you are not using HDMI video (or the HDI audio, 
 or even the eMMC) you can disable it by editing ``/boot/uEnv.txt``
 
-Open ``/boot/uEnv.txt`` and scroll down aways until you see:
+Open ``/boot/uEnv.txt`` and scroll down always until you see:
 
 .. code-block:: bash
     :caption: /boot/uEnv.txt
@@ -104,7 +104,7 @@ This code will toggle ``P9_11`` on and off. Here's the setup file.
 :download:`setup.sh <code/setup.sh>`
 
 Notice in the code ``config-pin`` set ``P9_11`` to ``gpio``, not ``pruout``. This is because
-are are using the OCP interface to the pin, not the usual PRU interface.
+are using the OCP interface to the pin, not the usual PRU interface.
 
 Set your exports and make.
 
diff --git a/books/pru-cookbook/07more/code/cycle.pru0.c b/books/pru-cookbook/07more/code/cycle.pru0.c
index 73055d9f0662483f6e9cc03ef266b670f571e1f0..3217c2eb33c1f881da1fdba6e158b6caac974772 100644
--- a/books/pru-cookbook/07more/code/cycle.pru0.c
+++ b/books/pru-cookbook/07more/code/cycle.pru0.c
@@ -12,7 +12,7 @@ void main(void)
 {
 	uint32_t gpio = P9_31;	// Select which pin to toggle.;
 
-	// These will be kept in registers and never witten to DRAM
+	// These will be kept in registers and never written to DRAM
 	uint32_t cycle, stall;
 
 	// Clear SYSCFG[STANDBY_INIT] to enable OCP master port
diff --git a/books/pru-cookbook/07more/code/cycle.pru0.lst b/books/pru-cookbook/07more/code/cycle.pru0.lst
index f2e131765eaf0e5bd13c719287eeb04b82b8d2cd..d10187efb7c80bfef7e2a56a92f066133bf606ad 100644
--- a/books/pru-cookbook/07more/code/cycle.pru0.lst
+++ b/books/pru-cookbook/07more/code/cycle.pru0.lst
@@ -79,7 +79,7 @@ Tools Copyright (c) 2012-2017 Texas Instruments Incorporated
       69;----------------------------------------------------------------------
       70;  13 | void main(void)                                                        
       71;  15 | uint32_t gpio = P9_31;  // Select which pin to toggle.;                
-      72;  17 | // These will be kept in registers and never witten to DRAM            
+      72;  17 | // These will be kept in registers and never written to DRAM            
       73;  18 | uint32_t cycle, stall;                                                 
       74;  20 | // Clear SYSCFG[STANDBY_INIT] to enable OCP master port                
       75;----------------------------------------------------------------------
diff --git a/books/pru-cookbook/07more/code/delay-test.pru0.c b/books/pru-cookbook/07more/code/delay-test.pru0.c
index 337ecbb23cb0920a687b30b3e50dcdbf5ae86f86..9061e2562e2620260e90062a4494009a96a405f4 100644
--- a/books/pru-cookbook/07more/code/delay-test.pru0.c
+++ b/books/pru-cookbook/07more/code/delay-test.pru0.c
@@ -5,8 +5,8 @@
 #include "prugpio.h"
 
 // The function is defined in delay.asm in same dir
-// We just need to add a declaration here, the defination can be
-// seperately linked
+// We just need to add a declaration here, the definition can be
+// separately linked
 extern void my_delay_cycles(uint32_t);
 
 volatile register uint32_t __R30;
diff --git a/books/pru-cookbook/07more/code/delay-test2.pru0.c b/books/pru-cookbook/07more/code/delay-test2.pru0.c
index 763b3a7d7b0452139cb817b0d56bf5e13688e0f6..7830ab9a06ec8d18d1dea25ddecea7eec4e198fb 100644
--- a/books/pru-cookbook/07more/code/delay-test2.pru0.c
+++ b/books/pru-cookbook/07more/code/delay-test2.pru0.c
@@ -7,8 +7,8 @@
 #define	TEST	100
 
 // The function is defined in delay.asm in same dir
-// We just need to add a declaration here, the defination can be
-// seperately linked
+// We just need to add a declaration here, the definition can be
+// separately linked
 extern uint32_t my_delay_cycles(uint32_t);
 
 uint32_t ret;
diff --git a/books/pru-cookbook/07more/code/delay2.pru0.asm b/books/pru-cookbook/07more/code/delay2.pru0.asm
index e1f1da03d37ece54ca7c577b4244bd8abbbc921f..a66aa74de8e479f839736b0420b1bfeed1957597 100644
--- a/books/pru-cookbook/07more/code/delay2.pru0.asm
+++ b/books/pru-cookbook/07more/code/delay2.pru0.asm
@@ -1,4 +1,4 @@
-; This is an example of how to call an assembly routine from C with a retun value.
+; This is an example of how to call an assembly routine from C with a return value.
 ;	Mark A. Yoder, 9-July-2018
 
 	.cdecls "delay-test2.pru0.c"
diff --git a/books/pru-cookbook/07more/more.rst b/books/pru-cookbook/07more/more.rst
index d62996fcad6ae0b0141fbec544c6d5ef70ba63b4..5965b10ddae227012653438913f6ec413e7d0c30 100644
--- a/books/pru-cookbook/07more/more.rst
+++ b/books/pru-cookbook/07more/more.rst
@@ -70,7 +70,7 @@ and :ref:`more_delay`. If you look in the local ``Makefile`` you'll see:
 
 :download:`Makefile <code/Makefile>`
 
-This Makefle includes a common Makfile at  ``/var/lib/cloud9/common/Makefile``, this the Makefile 
+This Makefle includes a common Makefile at  ``/var/lib/cloud9/common/Makefile``, this the Makefile 
 you need to edit. Edit ``/var/lib/cloud9/common/Makefile`` and go to line 195.
 
 .. code-block:: bash
@@ -409,7 +409,7 @@ Discussion
   |       | `PRU Optimizing C/C++ Compiler, v2.2, User's Guide <http://www.ti.com/lit/ug/spruhv7b/spruhv7b.pdf>`_   | 
   |       | shows how to use `xout()`. The first argument, 14, says to do a direct transfer to PRU 1.  If the       |
   |       | first argument is 10, 11 or 12, the data is transferred to one of three scratchpad memories that        |
-  |       | PRU 1 can access later. The second argument, 5, says to start transfering with register ``r5``          |
+  |       | PRU 1 can access later. The second argument, 5, says to start transferring with register ``r5``          |
   |       | and use as many registers as needed to transfer all of ``dmemBuf``. The third argument, 0,              |
   |       | says to not use remapping. (See the User's Guide for details.)                                          |
   |       | The final argument is the data to be transferred.                                                       |
diff --git a/index.rst b/index.rst
index 2ee59f8257fc064e266aa5dd84b694cc1df7eb09..6c81fc71f3d344fc5e835ec3647ceac913959002 100644
--- a/index.rst
+++ b/index.rst
@@ -38,7 +38,7 @@ Get started engaging the BeagleBoard.org developer community by reading our :ref
 Boards
 ******
 
-This is is where you will find the System Reference Manuals (SRMs) for all of the boards.
+This is where you will find the System Reference Manuals (SRMs) for all of the boards.
 
 All Beagles are `open-hardware <https://www.oshwa.org/definition/>`__ with documentation on the
 design, including the
diff --git a/intro/contribution/git-usage.rst b/intro/contribution/git-usage.rst
index cf6f936c6dbba95fa5e2a25a68ef1f1c5270a33e..0607ed22f5e2cbfc9c2ff3ee51938dea4124bfe2 100644
--- a/intro/contribution/git-usage.rst
+++ b/intro/contribution/git-usage.rst
@@ -585,6 +585,6 @@ There are a lot of different nice guides to using Git on the web:
 -   https://docs.scipy.org/doc/numpy-1.15.1/dev/gitwash/development_workflow.html Numpy is also
     evaluating git
 -   https://github.github.com/training-kit/downloads/github-git-cheat-sheet
--   https://lab.github.com/courses
+-   https://skills.github.com/
 -   `Pro Git <https://git-scm.com/book/en/v2>`_
 
diff --git a/intro/contribution/linux-upstream.rst b/intro/contribution/linux-upstream.rst
index e2129ca628ce2d6c737158319dcd5d8313edfdd4..da9a740aeec567ad1812d7817e44563501e29e94 100644
--- a/intro/contribution/linux-upstream.rst
+++ b/intro/contribution/linux-upstream.rst
@@ -23,7 +23,7 @@ The following are the skills that are needed before you actually start to contri
     - :ref:`linux-upstream-more-git`
     - :ref:`linux-upstream-c-programming`
     - :ref:`linux-upstream-cross-arch`
-    - :ref:`linux-upstream-embedded-busses`
+    - :ref:`linux-upstream-embedded-buses`
     - :ref:`linux-upstream-drivers`
     - :ref:`linux-upstream-device-trees`
 
@@ -126,9 +126,9 @@ What you'd do instead is pick a much powerful machine like a Desktop PC or lapto
 then use cross arch compilers like the arm-gcc for instance to compile the kernel for your
 target device.
 
-.. _linux-upstream-embedded-busses:
+.. _linux-upstream-embedded-buses:
 
-Basics of embedded busses (I2C, UART, SPI, etc.)
+Basics of embedded buses (I2C, UART, SPI, etc.)
 ************************************************
 
 In the world of embedded, you often need to communicate with peripherals over very low level protocols.
diff --git a/intro/contribution/rst-cheat-sheet.rst b/intro/contribution/rst-cheat-sheet.rst
index db3626dac75aebc243d43e7f1353d7f388951037..1adb70a9cb5c089fd4989922b916ac59acab1a38 100644
--- a/intro/contribution/rst-cheat-sheet.rst
+++ b/intro/contribution/rst-cheat-sheet.rst
@@ -3,7 +3,7 @@
 ReStructuredText Cheat Sheet
 ############################
 
-BeagleBoard docs is mostly writted with ReStructuredText (r)
+BeagleBoard docs is mostly written with ReStructuredText (r)
 
 Headings
 *********
@@ -20,8 +20,8 @@ matching overline and underline to indicate a heading.
 .. note::
     You can include only one (H1) ``#`` in a single documentation page.
 
-Make sure the length of your heading symbol is atleast (or 
-more) the lenth of the heading text, for example:
+Make sure the length of your heading symbol is at least (or 
+more) the at least of the heading text, for example:
 
 
 .. callout::
diff --git a/intro/contribution/style.rst b/intro/contribution/style.rst
index e80d76156dd036feb4018da19c98276b49e53a05..6e5592df4e10ebefd18736bc1d86557dc28df32a 100644
--- a/intro/contribution/style.rst
+++ b/intro/contribution/style.rst
@@ -5,7 +5,7 @@ Documentation Style Guide
 
 .. note:: 
     This is currently a work-in-progress placeholder for some notes
-    on how to style the BeagleBoard Documenation Project.
+    on how to style the BeagleBoard Documentation Project.
 
 See the `Zephyr Project Documentation Guidelines <https://docs.zephyrproject.org/latest/contribute/documentation/guidelines.html>`__ as a starting point.
 
diff --git a/intro/index.rst b/intro/index.rst
index 8001002d4a5959de10a5989b680e70d44a462bd2..5dad0f9ab3505beaa0509bb622dfd9133eb08066 100644
--- a/intro/index.rst
+++ b/intro/index.rst
@@ -16,7 +16,7 @@ and engage the developer community.
 
 Don't forget that this is an open-source project! Your contributions are welcome. Learn about how
 to contribute to the BeagleBoard documentation project and any of the many open-source Beagle
-projects on-going on our :ref:`contribution` page.
+projects ongoing on our :ref:`contribution` page.
 
 .. toctree::
    :maxdepth: 2
diff --git a/intro/support/getting-started.rst b/intro/support/getting-started.rst
index a1890993c5349fb0df613057025c32a6efb436dd..7428e3dc2e740cce76c47e2df9ebfcfcb574a88f 100644
--- a/intro/support/getting-started.rst
+++ b/intro/support/getting-started.rst
@@ -15,13 +15,13 @@ but executing this step, the longest step, will ensure the rest will go as smoot
 Download the latest software image
 ============================================
 
-Download the lastest Debian image from `beagleboard.org/latest-images <https://beagleboard.org/latest-images>`_.
+Download the latest Debian image from `beagleboard.org/latest-images <https://beagleboard.org/latest-images>`_.
 The "IoT" images provide more free disk space if you don't need to use a graphical user interface (GUI).
 
 .. NOTE::
 	Due to sizing necessities, this download may take 30 minutes or more.
 
-The Debian distribution is provied for the boards. The file you download will have an .img.xz extension.
+The Debian distribution is provided for the boards. The file you download will have an .img.xz extension.
 This is a compressed sector-by-sector image of the SD card.
 
 |image0|
@@ -190,7 +190,7 @@ an older operating system or need additional drivers for serial access to older
 	For Windows (64-bit):
 
 	1. Windows Driver Certification warning may pop up two or three times. Click "Ignore", "Install" or "Run".
-	2. To check if you're running 32 or 64-bit Windows see this:  `support.microsoft.com/kb/827218 <https://support.microsoft.com/kb/827218>`_.
+	2. To check if you're running 32 or 64-bit Windows see `this <https://support.microsoft.com/en-us/topic/determine-whether-your-computer-is-running-a-32-bit-version-or-64-bit-version-of-the-windows-operating-system-1b03ca69-ac5e-4b04-827b-c0c47145944b>`_.
 	3. On systems without the latest service release, you may get an error (0xc000007b). In that case, please install the following and retry: https://www.microsoft.com/en-us/download/confirmation.aspx?id=13523
 	4. You may need to reboot Windows.
 	5. These drivers have been tested to work up to Windows 10
@@ -198,7 +198,7 @@ an older operating system or need additional drivers for serial access to older
 
 	Additional FTDI USB to serial/JTAG information and drivers are available from https://www.ftdichip.com/Drivers/VCP.htm
 
-	Additional USB to virtual Ethernet information and drivers are available from https://www.linux-usb.org/gadget/ and https://joshuawise.com/horndis
+	Additional USB to virtual Ethernet information and drivers are available from http://www.linux-usb.org/gadget/ and https://joshuawise.com/horndis
 
 	Visit https://beagleboard.org/support for additional debugging tips.
 
diff --git a/projects/bb-config/features.rst b/projects/bb-config/features.rst
index 4786467aa6a215eccceadab4465c741170ed8d22..855f194863e53710c2fa27195de566c1dfd16488 100644
--- a/projects/bb-config/features.rst
+++ b/projects/bb-config/features.rst
@@ -157,7 +157,7 @@ Hardware Display
    :alt: pinmux hardware
 
 
-Pin Table Refernce
+Pin Table References
 --------------------
 .. image:: images/pinmux2.png
    :align: center
diff --git a/projects/simppru/basics.rst b/projects/simppru/basics.rst
index 3939f88d0d4b12b24061ebf081fee4a5c849d132..f2719d5dc670496e4e09563b3ca758d5095fbf8c 100644
--- a/projects/simppru/basics.rst
+++ b/projects/simppru/basics.rst
@@ -35,7 +35,7 @@ What is simpPRU
 -  simpPRU is a procedural programming language.
 -  It is a statically typed language. Variables and functions must be
    assigned data types during compilation.
--  It is typesafe, and data types of variables are decided during
+-  It is type-safe, and data types of variables are decided during
    compilation.
 -  simpPRU codes have a ``.sim`` extension.
 -  simpPRU provides a console app to use Remoteproc functionality.
\ No newline at end of file
diff --git a/projects/simppru/examples/button_click_rpmsg.rst b/projects/simppru/examples/button_click_rpmsg.rst
index ac10f3f399e52bad8faa98c256338961bbe08b5d..35b89f25effeef05231b72dbbf48a895e3a7f05f 100644
--- a/projects/simppru/examples/button_click_rpmsg.rst
+++ b/projects/simppru/examples/button_click_rpmsg.rst
@@ -27,7 +27,7 @@ Code
 -  Following code works on PocketBeagle, to use on other boards, please
    change the pins accordingly.
 
-Explaination
+Explanation
 ------------
 
 ``init_message_channel`` is needed to setup communication channel
diff --git a/projects/simppru/examples/delay.rst b/projects/simppru/examples/delay.rst
index 2f04b3bb8e1c55423179e7e04fca4d66ec2f1a96..6e5f61d9f933f353c65320b2d3bb68589e9cbb44 100644
--- a/projects/simppru/examples/delay.rst
+++ b/projects/simppru/examples/delay.rst
@@ -22,7 +22,7 @@ Code
 -  Following code works on PocketBeagle, to use on other boards, please
    change the pins accordingly.
 
-Explaination
+Explanation
 ------------
 
 This code snippet writes HIGH to header pin P1_31, then waits for 2000ms
diff --git a/projects/simppru/examples/digital_read.rst b/projects/simppru/examples/digital_read.rst
index 9563db3a849fab8cb2a217fe1284c7e2b290753d..85c81127176858c43cfba9145ca4d01dd26cec78 100644
--- a/projects/simppru/examples/digital_read.rst
+++ b/projects/simppru/examples/digital_read.rst
@@ -24,7 +24,7 @@ Code
 -  Following code works on PocketBeagle, to use on other boards, please
    change the pins accordingly.
 
-Explaination
+Explanation
 ------------
 
 This code runs a never ending loop, since it is ``while : true``. Inside
diff --git a/projects/simppru/examples/digital_write.rst b/projects/simppru/examples/digital_write.rst
index 154ad1b1d5ea474ee2ea7a2f8b2f178f4da69384..a5fca9c85cf8e7ba542b015344a75b0a05c92a6d 100644
--- a/projects/simppru/examples/digital_write.rst
+++ b/projects/simppru/examples/digital_write.rst
@@ -19,7 +19,7 @@ Code
 -  Following code works on PocketBeagle, to use on other boards, please
    change the pins accordingly.
 
-Explaination
+Explanation
 ------------
 
 This code runs a never ending loop, since it is ``while : true``. Inside
diff --git a/projects/simppru/examples/hcsr04_example_rpmsg.rst b/projects/simppru/examples/hcsr04_example_rpmsg.rst
index 4f54acc201afa93194cc98d000e6b68aaa0b877a..d7b4aebd02650c21cb0c2c702731d128f663f9ef 100644
--- a/projects/simppru/examples/hcsr04_example_rpmsg.rst
+++ b/projects/simppru/examples/hcsr04_example_rpmsg.rst
@@ -64,7 +64,7 @@ Code
 -  Following code works on PocketBeagle, to use on other boards, please
    change the pins accordingly.
 
-Explaination
+Explanation
 ------------
 
 .. |image0| image:: images/hcsr04_pocket_beagle.png
diff --git a/projects/simppru/examples/hcsr04_sensor.rst b/projects/simppru/examples/hcsr04_sensor.rst
index f2005a9c024a1de79f0296144f29039197acddff..3edf2419243cbfb8c1f586f1b7e1aa87ca018861 100644
--- a/projects/simppru/examples/hcsr04_sensor.rst
+++ b/projects/simppru/examples/hcsr04_sensor.rst
@@ -68,7 +68,7 @@ Code
 -  Following code works on PocketBeagle, to use on other boards, please
    change the pins accordingly.
 
-Explaination
+Explanation
 ------------
 
 .. |image0| image:: images/hcsr04_pocket_beagle.png
diff --git a/projects/simppru/examples/led_blink.rst b/projects/simppru/examples/led_blink.rst
index 28f49776d6436afad17d1efdd76cc9c1c4858228..d79d581d49462b57d6cac840f8810922c81994e6 100644
--- a/projects/simppru/examples/led_blink.rst
+++ b/projects/simppru/examples/led_blink.rst
@@ -22,7 +22,7 @@ Code
 -  Following code works on PocketBeagle, to use on other boards, please
    change the pins accordingly.
 
-Explaination
+Explanation
 ------------
 
 This code runs a never ending loop, since it is ``while : true``. Inside
diff --git a/projects/simppru/examples/led_blink_button.rst b/projects/simppru/examples/led_blink_button.rst
index 915a813eb03f41b3fea488329b619a03467df827..0c88c935b0447b5d6df589d64278982368bdcfba 100644
--- a/projects/simppru/examples/led_blink_button.rst
+++ b/projects/simppru/examples/led_blink_button.rst
@@ -24,7 +24,7 @@ Code
 -  Following code works on PocketBeagle, to use on other boards, please
    change the pins accordingly.
 
-Explaination
+Explanation
 ------------
 
 This code runs a never ending loop, since it is ``while : true``. Inside
diff --git a/projects/simppru/examples/led_blink_counter.rst b/projects/simppru/examples/led_blink_counter.rst
index 3719694e21a3531b0b195ccd3dd52e8eec5e3e83..886e04175956fea80eee94d23a9f5e042c0c6861 100644
--- a/projects/simppru/examples/led_blink_counter.rst
+++ b/projects/simppru/examples/led_blink_counter.rst
@@ -29,7 +29,7 @@ Code
 -  Following code works on PocketBeagle, to use on other boards, please
    change the pins accordingly.
 
-Explaination
+Explanation
 ------------
 
 This code runs a never ending while loop, since it is ``while : true``.
diff --git a/projects/simppru/examples/led_blink_for.rst b/projects/simppru/examples/led_blink_for.rst
index 18a774cb76f922fd886223f3ca71d5779a38aef4..b1b7ee748b0396e04402e082fdd7e07a58b9d359 100644
--- a/projects/simppru/examples/led_blink_for.rst
+++ b/projects/simppru/examples/led_blink_for.rst
@@ -22,7 +22,7 @@ Code
 -  Following code works on PocketBeagle, to use on other boards, please
    change the pins accordingly.
 
-Explaination
+Explanation
 ------------
 
 This code runs for loop with 10 iterations, Inside ``for`` it sets
diff --git a/projects/simppru/examples/led_blink_while.rst b/projects/simppru/examples/led_blink_while.rst
index 4576780055edc94901dc69ac3fa1e34059643199..55059afb8748c22c9d285ab0c6fb8e4cf5cefdeb 100644
--- a/projects/simppru/examples/led_blink_while.rst
+++ b/projects/simppru/examples/led_blink_while.rst
@@ -22,7 +22,7 @@ Code
 -  Following code works on PocketBeagle, to use on other boards, please
    change the pins accordingly.
 
-Explaination
+Explanation
 ------------
 
 This code runs a never ending while loop, since it is ``while : true``.
diff --git a/projects/simppru/examples/read_counter.rst b/projects/simppru/examples/read_counter.rst
index a9e2c1932648a655a8cefc1b829d8cc1180f6a67..94411118b5b9866a682a66e447d1a3f597ab4564 100644
--- a/projects/simppru/examples/read_counter.rst
+++ b/projects/simppru/examples/read_counter.rst
@@ -15,7 +15,7 @@ Code
 -  Following code works on PocketBeagle, to use on other boards, please
    change the pins accordingly.
 
-Explaination
+Explanation
 ------------
 
 Since, PRU's hardware counter works at 200 MHz, it counts upto 2 x 108
diff --git a/projects/simppru/examples/rpmsg_example.rst b/projects/simppru/examples/rpmsg_example.rst
index 951f0fa2eec82265145b8c6cf99e9c137c31ad6b..2ff85ec8c47980424fc4d2562b6b7f8547d6eb71 100644
--- a/projects/simppru/examples/rpmsg_example.rst
+++ b/projects/simppru/examples/rpmsg_example.rst
@@ -19,7 +19,7 @@ Code
 -  Following code works on PocketBeagle, to use on other boards, please
    change the pins accordingly.
 
-Explaination
+Explanation
 ------------
 
 PRU has a functionality to communicate with the ARM core, it is called
diff --git a/projects/simppru/examples/rpmsg_pru_calculator.rst b/projects/simppru/examples/rpmsg_pru_calculator.rst
index 5449f1de3c864051b85b263f33d8a65c0f6d36ae..0f78d5b514d57c8b6ceeab4af1d84ca74bde86dd 100644
--- a/projects/simppru/examples/rpmsg_pru_calculator.rst
+++ b/projects/simppru/examples/rpmsg_pru_calculator.rst
@@ -39,7 +39,7 @@ Code
 -  Following code works on PocketBeagle, to use on other boards, please
    change the pins accordingly.
 
-Explaination
+Explanation
 ------------
 
 ``init_message_channel();`` starts the message channel for communication
diff --git a/projects/simppru/io.rst b/projects/simppru/io.rst
index fe2e84102b1ea9c1e043b0fdb5e52e7163db3a2d..421fc76b7fe54dcfdc44c413549a31de8ecdbc6f 100644
--- a/projects/simppru/io.rst
+++ b/projects/simppru/io.rst
@@ -5,7 +5,7 @@ IO Functions
    its value equal to respective R30/R31 register bit
 
    -  Example: ``P1_20`` is an constant integer variable with value
-      ``16``, similary ``P1_02`` is an constant integer variable with
+      ``16``, similarly ``P1_02`` is an constant integer variable with
       value ``9``
 
 Digital Write
@@ -159,7 +159,7 @@ Syntax
 
 ``start_counter()``
 
-Paramters
+Parameters
 ^^^^^^^^^
 
 -  n/a
@@ -194,7 +194,7 @@ Syntax
 
 .. _paramters-1:
 
-Paramters
+Parameters
 ^^^^^^^^^
 
 -  n/a
@@ -342,9 +342,9 @@ Example
 
    init_message_channel();
 
-   int emp := receive_message();
+   int temp := receive_message();
 
-   if : emp >= 0 {
+   if : temp >= 0 {
        digital_write(P1_29, true);
    }
    else {
diff --git a/projects/simppru/language.rst b/projects/simppru/language.rst
index 0dc4895b786aa35e918d0ef952a7f11f0f5dcda8..815a88196a1e15524f50690610fbb0e86f4a98ad 100644
--- a/projects/simppru/language.rst
+++ b/projects/simppru/language.rst
@@ -4,7 +4,7 @@ Language Syntax
 -  simpPRU is a procedural programming language.
 -  It is a statically typed language. Variables and functions must be
    assigned data types during compilation.
--  It is typesafe, and data types of variables are decided during
+-  It is type-safe, and data types of variables are decided during
    compilation.
 -  simPRU codes have a ``.sim`` extension.
 
@@ -551,7 +551,7 @@ statements.
    }     
    }
 
-- **Correct** :  ``return`` is not inside compound statments, It should be placed only at the end of function definition 
+- **Correct** :  ``return`` is not inside compound statements, It should be placed only at the end of function definition 
 
 .. code:: python