diff --git a/boards/capes/cape-interface-spec.rst b/boards/capes/cape-interface-spec.rst index beb41b18707d31cdedc1bca21ea9a0e2f33b36a7..0db956cd59de6c1543a590007e8ed4b2876ef5d4 100644 --- a/boards/capes/cape-interface-spec.rst +++ b/boards/capes/cape-interface-spec.rst @@ -490,7 +490,7 @@ Cape interface specification provides |I2C| controller device links for userspac |I2C| overlay example ===================== -.. code-block:: devicetree +.. code-block:: dts :linenos: :caption: Example device tree overlay to enable I2C driver :name: bone_cape_spec_i2c_example @@ -584,7 +584,7 @@ SPI bone bus nodes allow creating compatible overlays for Black, AI and AI-64. Some boards may implement CS using a GPIO. -.. code-block:: +.. code-block:: dts :linenos: :caption: Example device tree overlay to enable SPI driver :name: bone_cape_spec_spi_example diff --git a/books/beaglebone-cookbook/02sensors/sensors.rst b/books/beaglebone-cookbook/02sensors/sensors.rst index 521f9bd147ed4e8c34eafda14df666993d9a05f9..87515f78c7312c5fec7f4deb82d18a6f3e24b20b 100644 --- a/books/beaglebone-cookbook/02sensors/sensors.rst +++ b/books/beaglebone-cookbook/02sensors/sensors.rst @@ -474,6 +474,7 @@ HC-SR04 to the Bone's 5 V power supply. .. _sensors_hc-sr04_code: .. literalinclude:: ../code/02sensors/hc-sr04-ultraSonic.js + :language: js :caption: Driving a HC-SR04 ultrasound sensor (hc-sr04-ultraSonic.js) :linenos: @@ -656,6 +657,7 @@ will print the current location every time the GPS outputs it. .. _digital_GPS_code: .. literalinclude:: ../code/02sensors/GPS.js + :language: js :caption: Talking to a GPS with UART 4 (GPS.js) :linenos: @@ -883,6 +885,7 @@ using the kernel driver. First you need to install the i2c module. .. _js_i2ctmp101_code: .. literalinclude:: ../code/02sensors/i2ctmp101.py + :language: py :caption: Reading an |I2C| device (i2cTemp.py) :linenos: diff --git a/books/beaglebone-cookbook/03displays/displays.rst b/books/beaglebone-cookbook/03displays/displays.rst index 5fe497ff4e40ec7170276a36ae8848b4a3fc792c..ce99608314e05c03c82cb68c39e426c69342f103 100644 --- a/books/beaglebone-cookbook/03displays/displays.rst +++ b/books/beaglebone-cookbook/03displays/displays.rst @@ -382,6 +382,7 @@ LED matrix display (matrixLEDi2c.py) ===================================== .. literalinclude:: ../code/03displays/matrixLEDi2c.py + :language: py :caption: LED matrix display (matrixLEDi2c.py) :linenos: diff --git a/books/beaglebone-cookbook/04motors/motors.rst b/books/beaglebone-cookbook/04motors/motors.rst index d28b0465c69566ceac13ec0e62edcacefb51ca27..94bd69f1aec2a8b7c70d999b8180f5f19ce10420 100644 --- a/books/beaglebone-cookbook/04motors/motors.rst +++ b/books/beaglebone-cookbook/04motors/motors.rst @@ -143,7 +143,7 @@ Combine the code from :ref:`digital_rotaryEncoder_js` and :ref:`motors_servo`. .. _py_servoEncoder_code: .. literalinclude:: ../code/04motors/servoEncoder.py - :language: python + :language: py :caption: Code for driving a servo motor with a rotary encorder(servoEncoder.py) :linenos: @@ -264,6 +264,7 @@ motor with a transistor (:ref:`motors_dcMotor_code`). The additional code specif .. _motors_h-bridge_code: .. literalinclude:: ../code/04motors/h-bridgeMotor.js + :language: js :caption: Code for driving a DC motor with an H-bridge (h-bridgeMotor.js) :linenos: @@ -304,6 +305,7 @@ Use the code in :ref:`motors_stepperMotor_code_py` to drive the motor. .. _motors_stepperMotor_code_py: .. literalinclude:: ../code/04motors/bipolarStepperMotor.py + :language: py :caption: Driving a bipolar stepper motor (bipolarStepperMotor.py) :linenos: diff --git a/books/beaglebone-cookbook/06iot/iot.rst b/books/beaglebone-cookbook/06iot/iot.rst index 3044fd247492093c8ae3876b454cec2bad58c810..fdf32cfa9f5da13fd68427541c5ef482a06d35b9 100644 --- a/books/beaglebone-cookbook/06iot/iot.rst +++ b/books/beaglebone-cookbook/06iot/iot.rst @@ -207,6 +207,7 @@ function. Now, let’s create a new Python script. We will name it app1.py: .. _flask_app1: .. literalinclude:: ../code/06iot/flask/app1.py + :language: py :caption: app1.py :linenos: @@ -271,6 +272,7 @@ Let’s use a new Python script named *app2.py*. .. _flask_app2: .. literalinclude:: ../code/06iot/flask/app2.py + :language: py :caption: A simple Flask-based web server to read a GPIO (app2.py) :linenos: @@ -333,6 +335,7 @@ Create a new Python script and name it *app3.py*. .. _flask_app3: .. literalinclude:: ../code/06iot/flask/app3.py + :language: py :caption: A simple Flask-based web server to read a GPIO (app3.py) :linenos: @@ -477,6 +480,7 @@ plots the buffer is **analogInContinuous.py**. .. _analog_code: .. literalinclude:: ../code/06iot/analogInContinuous.py + :language: py :caption: Code to read and plot a continuous analog input(analogInContinuous.py) :linenos: @@ -629,6 +633,7 @@ Then add the code in :ref:`networking_nodemailer_code` to a file named ``emailTe .. _networking_nodemailer_code: .. literalinclude:: ../code/06iot/emailTest.py + :language: py :caption: Sending email using nodemailer (emailtTest.py) :linenos: @@ -743,6 +748,7 @@ Because your Bone is on the network, it's not hard to access the current weather .. _networking_weather_code: .. literalinclude:: ../code/06iot/weather.py + :language: py :caption: Code for getting current weather conditions (``weather.py``) :linenos: @@ -865,6 +871,7 @@ The code in :ref:`networking_pushbutton_code` sends a tweet whenever a button is .. _networking_pushbutton_code: .. literalinclude:: ../code/06iot/twitterPushbutton.js + :language: js :caption: Tweet when a button is pushed (twitterPushbutton.js) :linenos: diff --git a/books/beaglebone-cookbook/07kernel/kernel.rst b/books/beaglebone-cookbook/07kernel/kernel.rst index 25f4a90d9142713863ac5c8d5d0fcf2498d39825..4c2e3618b112978abaca3f06e9cb40dc56355f0d 100644 --- a/books/beaglebone-cookbook/07kernel/kernel.rst +++ b/books/beaglebone-cookbook/07kernel/kernel.rst @@ -523,6 +523,7 @@ Solution .. _kernel_hello_patch: .. literalinclude:: ../code/07kernel/hello.patch + :language: patch :caption: Simple kernel patch file (hello.patch) :linenos: diff --git a/books/beaglebone-cookbook/11misc/misc.rst b/books/beaglebone-cookbook/11misc/misc.rst index a0681fecbfa14ea96b3341f6a561b4b81c9dcd2a..67a6b1f0c7c626abd4f6b6ca4b44be07cec9a48d 100644 --- a/books/beaglebone-cookbook/11misc/misc.rst +++ b/books/beaglebone-cookbook/11misc/misc.rst @@ -219,51 +219,65 @@ You can always sudo from debian, but sometimes it's nice to login as root. Here's how to setup root so you can login from your host without a password. .. code-block:: bash - - host$ ssh bone + host$ ssh bone bone$ sudo -i - root@bone# nano /etc/ssh/sshd_config Search for the line +.. code-block:: bash + #PermitRootLogin prohibit-password and change it to +.. code-block:: bash + PermitRootLogin yes (The # symbol indicates a comment and must be removed in order for the setting to take effect.) Save the file and quit the editor. Restart ssh so it will reread the file. +.. code-block:: bash + root@bone# systemctl restart sshd And assign a password to root. +.. code-block:: bash + root@bone# passwd Now open another window on your host computer and enter: +.. code-block:: bash + host$ ssh-copy-id root@bone and enter the root password. Test it with: +.. code-block:: bash + host$ ssh root@bone You should be connected without a password. Now go back to the Bone and turn off the root password access. +.. code-block:: bash + root@bone# nano /etc/ssh/sshd_config Restore the line: +.. code-block:: bash + #PermitRootLogin prohibit-password and restart sshd. -.. code-block:: +.. code-block:: bash root@bone# systemctl restart sshd root@bone# exit @@ -295,7 +309,7 @@ it display on the host. #. First ssh to the Beagle using the `-X` flag. -.. code-block:: +.. code-block:: bash host$ ssh -X debian@10.0.5.10 @@ -334,7 +348,7 @@ https://serverfault.com/questions/362529/how-can-i-sniff-the-traffic-of-remote-m First login to the Beagle and install tcpdump. Use your Beagle's IP address. -.. code-block:: +.. code-block:: bash host$ ssh 192.168.7.2 bone$ sudo apt update @@ -343,7 +357,7 @@ IP address. Next, create a named pipe and have wireshark read from it. -.. code-block:: +.. code-block:: bash host$ mkfifo /tmp/remote host$ wireshark -k -i /tmp/remote @@ -351,7 +365,7 @@ Next, create a named pipe and have wireshark read from it. Then, run tcpdump over ssh on your remote machine and redirect the packets to the named pipe: -.. code-block:: +.. code-block:: bash host$ ssh root@192.168.7.2 "tcpdump -s 0 -U -n -w - -i any not port 22" > /tmp/remote @@ -755,22 +769,15 @@ Run the following to download and setup Sphinx locally. bone$ sudo apt upgrade bone$ sudo apt install -y \ make git wget \ - doxygen graphviz librsvg2-bin\ + doxygen librsvg2-bin\ texlive-latex-base texlive-latex-extra latexmk texlive-fonts-recommended \ python3 python3-pip \ - python3-sphinx python3-sphinx-rtd-theme python3-sphinxcontrib.svg2pdfconverter \ - python3-pil \ imagemagick-6.q16 librsvg2-bin webp \ texlive-full texlive-latex-extra texlive-fonts-extra \ fonts-freefont-otf fonts-dejavu fonts-dejavu-extra fonts-freefont-ttf - bone$ python3 -m pip install --upgrade pip - bone$ pip install -U sphinx_design - bone$ pip install -U sphinxcontrib-images - bone$ pip install -U sphinx-serve - -These instructions came from `lorforlinux -<https://beagleboard.slack.com/archives/C8S7EKZC2/p1684940872699269>`_ -on the Beagleboard Slack channel. + bone$ ./venv-build-env.sh + +In case of any problems, checkout `Beagleboard Forum <https://forum.beagleboard.org/>`_. Now go to the cloned *docs.beagleboard.io* repository folder and do the following. To clean build directory: diff --git a/books/pru-cookbook/03details/details.rst b/books/pru-cookbook/03details/details.rst index 2a1fca7f40263c962a4e05c7e2159989366c8da0..03f6be3c86dcc20b552bce973e275916dbf6962e 100644 --- a/books/pru-cookbook/03details/details.rst +++ b/books/pru-cookbook/03details/details.rst @@ -214,6 +214,7 @@ and then configure the pins accordingly. .. literalinclude:: ../code/06io/setup.sh + :language: bash :caption: setup.sh :linenos: @@ -467,6 +468,7 @@ If you are on the Black or Pocket you'll need to run the following script. .. literalinclude:: ../code/03details/servos_setup.sh + :language: bash :caption: servos_setup.sh :linenos: @@ -497,6 +499,7 @@ everything is already configured for you. If you are on the Black or Pocket you'll need to run the following script. .. literalinclude:: ../code/03details/encoder_setup.sh + :language: bash :caption: encoder_setup.sh :linenos: diff --git a/books/pru-cookbook/05blocks/blocks.rst b/books/pru-cookbook/05blocks/blocks.rst index 8ffe9acc21eb48c9ce71236e68f89d9318121992..dcddf03b9444348eb2d3a5399f892f58044a65e5 100644 --- a/books/pru-cookbook/05blocks/blocks.rst +++ b/books/pru-cookbook/05blocks/blocks.rst @@ -313,6 +313,7 @@ the code work. Fortunately the Makefile always runs it. .. _blocks_write_init_pins: .. literalinclude:: ../code/05blocks/write_init_pins.sh + :language bash :caption: write_init_pins.sh :linenos: @@ -855,6 +856,7 @@ will make the period half as long. Here's the code (``pwm7.pru0.c``) .. literalinclude:: ../code/05blocks/pwm7.pru0.c + :language: c :caption: pwm7.pru0.c Using Both PRUs :linenos: @@ -863,6 +865,7 @@ Here's the code (``pwm7.pru0.c``) Be sure to run ``pwm7_setup.sh`` to get the correct pins configured. .. literalinclude:: ../code/05blocks/pwm7_setup.sh + :language: bash :caption: pwm7_setup.sh :linenos: @@ -1047,6 +1050,7 @@ These values came from :ref:`blocks_mapping_bits`. Configure the pins with ``input_setup.sh``. .. literalinclude:: ../code/05blocks/input_setup.sh + :language: bash :caption: input_setup.sh :linenos: @@ -1055,6 +1059,7 @@ Configure the pins with ``input_setup.sh``. The following code reads the input pin and writes its value to the output pin. .. literalinclude:: ../code/05blocks/input.pru0.c + :language: c :caption: input.pru0.c :linenos: @@ -1720,6 +1725,7 @@ high-level view of how to drive the display. .. _blocks_rgb_python: .. literalinclude:: ../code/05blocks/rgb_python.py + :language bash :caption: rgb_python.py - Python code for driving RGB LED matrix :linenos: @@ -1730,6 +1736,7 @@ Be sure to run the :ref:`blocks_rgb_setup` script before running the python code .. _blocks_rgb_setup: .. literalinclude:: ../code/05blocks/rgb_python_setup.sh + :language bash :caption: rgb_python_setup.sh :linenos: diff --git a/books/pru-cookbook/06io/io.rst b/books/pru-cookbook/06io/io.rst index e4a93302df9c6086f5c7c0e5972037bfe3a5408d..95a69ed4eb06e615478f5df5f706134fed1a8e73 100644 --- a/books/pru-cookbook/06io/io.rst +++ b/books/pru-cookbook/06io/io.rst @@ -98,6 +98,7 @@ GPIO pins, but it's a slower access. This code will toggle ``P9_11`` on and off. Here's the setup file. .. literalinclude:: ../code/06io/setup.sh + :language bash :caption: setup.sh :linenos: diff --git a/conf.py b/conf.py index 5acdb58f5c162175af2ed3380c2baec1f7b37adc..6c70e08c874116be18a1bb7b700ba7faeb75c078 100644 --- a/conf.py +++ b/conf.py @@ -40,6 +40,8 @@ extensions = [ "sphinx.ext.imgconverter", "sphinx.ext.graphviz", "sphinx.ext.todo", + "sphinx.ext.autodoc", + "sphinx.ext.autosummary", "sphinx_tabs.tabs", "breathe", "sphinx_copybutton", diff --git a/intro/beagle101/blinkLED.rst b/intro/beagle101/blinkLED.rst index 8cd4077b3cf62dfc0c1499b9d54ef9046f30229c..47e2ec70422c21ece5fa3a20836490456693c6c4 100644 --- a/intro/beagle101/blinkLED.rst +++ b/intro/beagle101/blinkLED.rst @@ -441,6 +441,7 @@ The following script uses evtest to wait for the USR button to be pressed and then turns on the LED. .. literalinclude:: buttonEvent.sh + :language: bash :caption: buttonEvent.sh :linenos: @@ -451,6 +452,7 @@ Try running it and pressing the USR button. The next script polls the USR button and toggles the LED. .. literalinclude:: buttonLED.sh + :language: bash :caption: buttonLED.sh :linenos: diff --git a/intro/beagle101/qwiic-stemma-grove-addons.rst b/intro/beagle101/qwiic-stemma-grove-addons.rst index 0b6e2d2faf34c51ce19b2bca26c21a70114a0ffe..f730868a340abff60f87983f991faeeb37ee0192 100644 --- a/intro/beagle101/qwiic-stemma-grove-addons.rst +++ b/intro/beagle101/qwiic-stemma-grove-addons.rst @@ -67,7 +67,7 @@ driver loaded. Finally, `in_illuminance0_input` comes from the for this type of device, a light sensor. The `Linux kernel ABI documentation for sysfs-bus-iio <https://www.kernel.org/doc/html/v5.19/admin-guide/abi-testing.html#abi-sys-iio-devicex-in-illuminance-input>`__ provides the definition of available data often provided by light sensor drivers. -.. code-block:: +.. code-block:: bash What: /sys/.../iio:deviceX/in_illuminance_input What: /sys/.../iio:deviceX/in_illuminance_raw diff --git a/intro/contribution/git-usage.rst b/intro/contribution/git-usage.rst index 10062fb01f89d6b47fbf78524c42feff7e0d7bf1..253802adc47173152e2ce4b385e66ec07ef1ac48 100644 --- a/intro/contribution/git-usage.rst +++ b/intro/contribution/git-usage.rst @@ -439,20 +439,20 @@ in your local repository, type: If Jason is adding more commits to his remote branch and you want to update your local copy, just do: -.. code-block:: +.. code-block:: bash git checkout awesomebranch # if you are not already in branch awesomebranch pull If you later want to remove the reference to this particular branch: -.. code-block:: +.. code-block:: bash git branch -r -d jkridner/awesomebranch Deleted remote branch jkridner/awesomebranch (#######) Or, to delete the references to all of Jason's branches: -.. code-block:: +.. code-block:: bash git remote rm jkridner diff --git a/projects/beagleconnect/index.rst b/projects/beagleconnect/index.rst index c9edd084a08f3fb7a0905d259f0a81e2bfb0015e..31f72fbaa94a0f9718ae04eadc0e68ee30a4cb02 100644 --- a/projects/beagleconnect/index.rst +++ b/projects/beagleconnect/index.rst @@ -216,7 +216,7 @@ that is required is a reliable transport. Every 1-2 minutes, you should see something like: -.. code-block:: +.. code-block:: bash ('fe80::3111:7a22:4b:1200%lowpan0', 52213, 0, 13) '2l:7.79;' ('fe80::3111:7a22:4b:1200%lowpan0', 52213, 0, 13) '4h:43.75;4t:23.11;' @@ -912,7 +912,7 @@ Ping Linux Similarly, we can ping the Linux host from the Zephyr shell. -.. code-block:: +.. code-block:: bash uart:~$ net ping --help ping - Ping a network host. diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..767efb557c21b578eddbd908547bc6c7696fe097 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,33 @@ +alabaster==0.7.13 +Babel==2.13.1 +breathe==4.35.0 +certifi==2023.11.17 +charset-normalizer==3.3.2 +docutils==0.18.1 +graphviz==0.20.1 +idna==3.6 +imagesize==1.4.1 +Jinja2==3.1.2 +MarkupSafe==2.1.3 +packaging==23.2 +Pillow==10.1.0 +Pygments==2.17.2 +requests==2.31.0 +setuptools==69.0.2 +snowballstemmer==2.2.0 +Sphinx==7.2.6 +sphinx-copybutton==0.5.2 +sphinx-rtd-theme==2.0.0 +sphinx-serve==1.0.1 +sphinx-tabs==3.4.4 +sphinx_design==0.5.0 +sphinxcontrib-applehelp==1.0.7 +sphinxcontrib-devhelp==1.0.5 +sphinxcontrib-htmlhelp==2.0.4 +sphinxcontrib-images==0.9.4 +sphinxcontrib-jquery==4.1 +sphinxcontrib-jsmath==1.0.1 +sphinxcontrib-qthelp==1.0.6 +sphinxcontrib-serializinghtml==1.1.9 +sphinxcontrib-svg2pdfconverter==1.2.2 +urllib3==2.1.0 diff --git a/venv-build-env.sh b/venv-build-env.sh index bcf495a0efcbcca3356069b1caf2b259e6aa189d..5993ce8fe0f73655fd882f6bd5a612b3c5867767 100755 --- a/venv-build-env.sh +++ b/venv-build-env.sh @@ -1,11 +1,8 @@ #!/bin/sh # Source this script like `. ./venv-build-env.sh` -if [ ! -e ./sphinx-env ]; then - python3 -m venv sphinx-env +if [ ! -e ./.venv ]; then + python3 -m venv .venv fi -source ./sphinx-env/bin/activate -python3 -m pip install --upgrade pip -python3 -m pip install sphinx==5.3.0 sphinx-rtd-theme sphinx_design sphinx-tabs sphinxcontrib.svg2pdfconverter sphinx-reredirects -python3 -m pip install sphinxcontrib-images sphinx-copybutton -python3 -m pip install breathe exhale -python3 -m pip install graphviz +source ./.venv/bin/activate +pip install --upgrade pip +pip install -r requirements.txt