zephyr/samples/boards/bbc_microbit/line_follower_robot
Tomasz Bursztyka e18fcbba5a device: Const-ify all device driver instance pointers
Now that device_api attribute is unmodified at runtime, as well as all
the other attributes, it is possible to switch all device driver
instance to be constant.

A coccinelle rule is used for this:

@r_const_dev_1
  disable optional_qualifier
@
@@
-struct device *
+const struct device *

@r_const_dev_2
 disable optional_qualifier
@
@@
-struct device * const
+const struct device *

Fixes #27399

Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2020-09-02 13:48:13 +02:00
..
src device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
CMakeLists.txt
README.rst
prj.conf
sample.yaml

README.rst

.. _microbit_line_follower_robot:

BBC micro:bit line-follower robot
#################################

Overview
********

This sample controls a stand-alone line-following DFRobot Maqueen
robot chassis containing a BBC micro:bit board.

Requirements
************

To build and run this sample you'll need a `DFRobot Maqueen robot
chassis (ROB0148) <https://www.dfrobot.com/product-1783.html>`_
with a BBC micro:bit board. Use black tape to create a line track
for the robot to follow. Build and flash the program to the BBC
micro:bit board (described below), turn on the robot,
and put it on the black line track.

Building and running
********************

Build and flash this sample project using these commands:

.. zephyr-app-commands::
   :zephyr-app: samples/boards/bbc_microbit/line_follower_robot
   :board: bbc_microbit
   :goals: build flash
   :compact:

Sample Output
*************

The sample program controls the robot to follow a line track and does
not write to the console. You can watch this `robot video`_
to see it in action.

.. _robot video:
   https://youtu.be/tIvoHQjo8a4