# Real-Time Robotics Framework

### Sidebar

getting_started:write_app:use_on_cb20

# Writing EEROS Applications for cb20 Board

Back to Use on a cb20 Board.

You will use C++ to develop your EEROS applications. For this you need at least some knowledge of the basic language features. A good starting point might be https://www.cplusplus.com/doc/tutorial/. Minimal help can also be found under C++ for Beginners.

What do you want to do next?

## Say Hello with EEROS

1. Fetch the EEROS scripts on your host and checkout the branch for the cb20 board
$git clone https://github.com/eeros-project/eeros-build-scripts.git eeros-project$ cd eeros-project
$git checkout sdk_cb20 2. Edit the file config.sh.in as follows custom_application=hello 3. Create a project directory and change into it with $ mkdir hello
$cd hello  4. Create a text file “main.cpp” and copy the following code into it #include <iostream> #include <eeros/logger/Logger.hpp> #include <eeros/logger/StreamLogWriter.hpp> int main() { using namespace eeros::logger; Logger::setDefaultStreamLogger(std::cout); Logger log = Logger::getLogger(); log.info() << "Hello, EEROS"; return 0; } 5. Create a text file “CMakeLists.txt” and copy the following text into it: cmake_minimum_required(VERSION 3.5.1) project(helloworld) set(CMAKE_CXX_STANDARD 14) find_package(EEROS REQUIRED) include_directories(${EEROS_INCLUDE_DIR})
link_directories(${EEROS_LIB_DIR}) add_executable(helloworld main.cpp) target_link_libraries(helloworld eeros ucl${CMAKE_DL_LIBS})
6. Change back into your parent directory and build the project with
$cd ..$ ./make.sh
7. Make changes to “main.cpp”, save them and rebuild with
$./make.sh In order to be able to write your own EEROS programs, you could use any text editor. However, we recommend to use an integrated development environment, see Use KDevelop with Existing Build Configuration. Continue with Deploy to cb20 Board. ## Use Existing Project As an example we use the Control a Single Motor demo program. 1. Edit the file config.sh.in as follows custom_application=simple-motor-control 2. Fetch the code of the application with $ ./clone.sh
3. Build the project with
$./make.sh Continue with Deploy to cb20 Board. ### Test Application There is a test application for the cb20 board in https://github.com/ntb-ch/cb20.git under the directory /Software. If you wish to use this you can alter config.sh.in as follows custom_application_name=cb20test and further down custom_application_git_remote_address=https://github.com/ntb-ch/cb20.git custom_application_git_version=master custom_application_source_dir="$wd/$custom_application_name/Software/$custom_application_name"
custom_application_build_dir="$build_dir/$custom_application_name"

After this you continue as given above in Use Existing Project.