diff --git a/boards/beagleplay/05-demos.rst b/boards/beagleplay/05-demos.rst index b81b0e7027a3c409017f630c7af2baebb5112be3..eb0c15bf96d568df5229b7a5f9babd1aedaff242 100644 --- a/boards/beagleplay/05-demos.rst +++ b/boards/beagleplay/05-demos.rst @@ -65,6 +65,18 @@ Demos and tutorials beginner + .. card:: + :link: beagleplay-nodered + :link-type: ref + + **Using NodeRed** + ^^^ + Learn how to use NodeRed with BeaglePlay for rapid and easy prototyping. + +++ + .. admonition:: Complexity level + + beginner + .. card:: :link: beagleplay-oldi :link-type: ref diff --git a/boards/beagleplay/demos-and-tutorials/iio_info_out.png b/boards/beagleplay/demos-and-tutorials/iio_info_out.png new file mode 100644 index 0000000000000000000000000000000000000000..fe5e8dd73497b87069f5fc3c0bc7a2a946b16806 Binary files /dev/null and b/boards/beagleplay/demos-and-tutorials/iio_info_out.png differ diff --git a/boards/beagleplay/demos-and-tutorials/nodered-base-flow-output.png b/boards/beagleplay/demos-and-tutorials/nodered-base-flow-output.png new file mode 100644 index 0000000000000000000000000000000000000000..95aa18bfa8fd696910e9a3c211829da5b4240580 Binary files /dev/null and b/boards/beagleplay/demos-and-tutorials/nodered-base-flow-output.png differ diff --git a/boards/beagleplay/demos-and-tutorials/nodered-base-flow.png b/boards/beagleplay/demos-and-tutorials/nodered-base-flow.png new file mode 100644 index 0000000000000000000000000000000000000000..d4a1abd9edecaa7a041c24ad772e8a9a3e31cf16 Binary files /dev/null and b/boards/beagleplay/demos-and-tutorials/nodered-base-flow.png differ diff --git a/boards/beagleplay/demos-and-tutorials/nodered-complete-gauges-flow.png b/boards/beagleplay/demos-and-tutorials/nodered-complete-gauges-flow.png new file mode 100644 index 0000000000000000000000000000000000000000..06440c3340422bc848012d90b3ec3a127a3f1fc5 Binary files /dev/null and b/boards/beagleplay/demos-and-tutorials/nodered-complete-gauges-flow.png differ diff --git a/boards/beagleplay/demos-and-tutorials/nodered-debug-logs.png b/boards/beagleplay/demos-and-tutorials/nodered-debug-logs.png new file mode 100644 index 0000000000000000000000000000000000000000..908471592a9f98bcb814287f0d43c17fdba106ea Binary files /dev/null and b/boards/beagleplay/demos-and-tutorials/nodered-debug-logs.png differ diff --git a/boards/beagleplay/demos-and-tutorials/using-nodered.rst b/boards/beagleplay/demos-and-tutorials/using-nodered.rst new file mode 100644 index 0000000000000000000000000000000000000000..f88773b9fcfdce85ba27f681e5c131cc53dc1d4e --- /dev/null +++ b/boards/beagleplay/demos-and-tutorials/using-nodered.rst @@ -0,0 +1,94 @@ +.. _beagleplay-nodered: + +Using Node-RED +############## + +Node-RED provides a browser-based editor that makes it easy to wire together +flows using the wide range of nodes in the palette that can be deployed to +its runtime in a single-click. + +.. youtube:: 2llY2ZnTmnw + +Pre-requisites +============== + +.. note:: + + If you're using the official Beagleplay debian image then you most likely can skip the Install Node-RED step. + +1. Install Node-RED using the `official guide here <https://nodered.org/docs/getting-started/beaglebone>`_ +2. MikroE `Accel click <https://www.mikroe.com/accel-click>`_ or any mikroBUS add-on + +Let's get started! +************************* + +First, we want to make sure the mikroBUSâ„¢ add-on board is connected and functioning as expected. +To do this, we make use of the `iio_info command <https://man.archlinux.org/man/iio_info.1.en>`_. + +Connecting mikroBUSâ„¢ add-on board +================================ + +``iio_info`` is a utility for displaying information about local or remote IIO devices, in this case it's the `Accel click board <https://www.mikroe.com/accel-click>`_. + +.. figure:: ./iio_info_out.png + :scale: 100 + :align: center + +Accessing Node-RED +===================== + +Once your BeaglePlay is booted up and connected to your computer, access it from your browser by typing +``192.168.7.2:1880`` in your address bar. + +Creating a basic flow +===================== + +In this flow we'll take a look at how we can get the accelerometer readings output on the node +red console. + +First, let's insert the exec function block. This will help us capture a linux command from +an entry like ``/sys/bus/iio/...``. + +Double click on the function block and in the command paste: + +.. code-block:: bash + + cat /sys/bus/iio/devices/iio\:device0.../in_accel_x_raw + +Give it some name and press Done. + +Next, we add the "Debug" node and connect it to the previous function block we made +to get the output. + +Optionally, as shown in the video we can also "Inject" a timestamp into the +function block which will then go into the debug console to give us the logs +with timestamps. + +.. figure:: ./nodered-debug-logs.png + :scale: 100 + :align: center + + +Adding a Gauge +============== + +.. figure:: ./nodered-base-flow.png + :scale: 100 + :align: center + +.. figure:: ./nodered-base-flow-output.png + :scale: 100 + :align: center + + +Adding a Graph and 3 Axis +========================= + +.. todo:: + * Add flow diagram + * Show the output + +.. figure:: ./nodered-complete-gauges-flow.png + :scale: 100 + :align: center +