________          ___       __   ________  ________  ___  __            ___  ________           ________  ________  ________  ________  ________  _______   ________   ________      
|\   __  \        |\  \     |\  \|\   __  \|\   __  \|\  \|\  \         |\  \|\   ___  \        |\   __  \|\   __  \|\   __  \|\   ____\|\   __  \|\  ___ \ |\   ____\ |\   ____\     
\ \  \|\  \       \ \  \    \ \  \ \  \|\  \ \  \|\  \ \  \/  /|_       \ \  \ \  \\ \  \       \ \  \|\  \ \  \|\  \ \  \|\  \ \  \___|\ \  \|\  \ \   __/|\ \  \___|_\ \  \___|_    
 \ \   __  \       \ \  \  __\ \  \ \  \\\  \ \   _  _\ \   ___  \       \ \  \ \  \\ \  \       \ \   ____\ \   _  _\ \  \\\  \ \  \  __\ \   _  _\ \  \_|/_\ \_____  \\ \_____  \   
  \ \  \ \  \       \ \  \|\__\_\  \ \  \\\  \ \  \\  \\ \  \\ \  \       \ \  \ \  \\ \  \       \ \  \___|\ \  \\  \\ \  \\\  \ \  \|\  \ \  \\  \\ \  \_|\ \|____|\  \\|____|\  \  
   \ \__\ \__\       \ \____________\ \_______\ \__\\ _\\ \__\\ \__\       \ \__\ \__\\ \__\       \ \__\    \ \__\\ _\\ \_______\ \_______\ \__\\ _\\ \_______\____\_\  \ ____\_\  \ 
    \|__|\|__|        \|____________|\|_______|\|__|\|__|\|__| \|__|        \|__|\|__| \|__|        \|__|     \|__|\|__|\|_______|\|_______|\|__|\|__|\|_______|\_________\\_________\
                                                                                                                                                               \|_________\|_________|
________          ___       __   ________  ________  ___  __            ___  ________      
|\   __  \        |\  \     |\  \|\   __  \|\   __  \|\  \|\  \         |\  \|\   ___  \    
\ \  \|\  \       \ \  \    \ \  \ \  \|\  \ \  \|\  \ \  \/  /|_       \ \  \ \  \\ \  \   
 \ \   __  \       \ \  \  __\ \  \ \  \\\  \ \   _  _\ \   ___  \       \ \  \ \  \\ \  \  
  \ \  \ \  \       \ \  \|\__\_\  \ \  \\\  \ \  \\  \\ \  \\ \  \       \ \  \ \  \\ \  \ 
   \ \__\ \__\       \ \____________\ \_______\ \__\\ _\\ \__\\ \__\       \ \__\ \__\\ \__\
    \|__|\|__|        \|____________|\|_______|\|__|\|__|\|__| \|__|        \|__|\|__| \|__|
                                                                                            
                                                                                            
                                                                                            
           ________  ________  ________  ________  ________  _______   ________   ________      
          |\   __  \|\   __  \|\   __  \|\   ____\|\   __  \|\  ___ \ |\   ____\ |\   ____\     
          \ \  \|\  \ \  \|\  \ \  \|\  \ \  \___|\ \  \|\  \ \   __/|\ \  \___|_\ \  \___|_    
           \ \   ____\ \   _  _\ \  \\\  \ \  \  __\ \   _  _\ \  \_|/_\ \_____  \\ \_____  \   
            \ \  \___|\ \  \\  \\ \  \\\  \ \  \|\  \ \  \\  \\ \  \_|\ \|____|\  \\|____|\  \  
             \ \__\    \ \__\\ _\\ \_______\ \_______\ \__\\ _\\ \_______\____\_\  \ ____\_\  \ 
              \|__|     \|__|\|__|\|_______|\|_______|\|__|\|__|\|_______|\_________\\_________\
                                                                         \|_________\|_________|

Useful snippets for ROS

Set CMake options in catkin build

To pass CMake options to the catkin build tool simply use the —cmake-args command line switch. For example to set the CMAKE_BUILD_TYPE I would use:

catkin build --cmake-args -DCMAKE_BUILD_TYPE=Debug

To save the so that they are added for every call you can use the —save-config command line option :

catkin build --save-CONFIG --cmake-args -DCMAKE_BUILD_TYPE=Debug

Build a single package

To build a single package just specify its name at after catkin build, e.g.

catkin build my_package

There is also an even more convenient form. If you are in the package directory then you …


Common shortcuts for Bash

Keys

Action

Ctrl R

reverse-i-search

Ctrl I

i-search

Ctrl A

Move to start of line

Ctrl E

Move to end of line

Ctrl B

Move backward one word

Ctrl F

Move forward one word

Ctrl K

Delete everything from the cursor to the end of the line

Ctrl U

Delete everything from the cursor to the start of the line


Matlab Live Script Keyboard Shortcuts

Keys

Action

Ctrl Alt L

Insert Title (#)

Ctrl Alt H

Insert Heading (##)

Ctrl Alt Enter

Insert Section Break (%%)

Ctrl I

Italic

Ctrl B

Bold

Ctrl U

Underline

Ctrl M

Monospaced

Ctrl K

Hyperlink

Ctrl Alt G

Latex/Equation

Ctrl Alt Enter

Toggle Code/Text Mode

Title, Heading and Section Break can be triggered without the shortcut by typing #, ## and %% respectively.


Virtual Reference Feedback Tuning

Virtual Reference Feedback Tuning is a data driven method used to design a controller for an unknown plant based on input/output measurements. The method uses a single set of input/output data generated by the plant without the need for specific experiments or model identification.


Quick Tip: Receive a pushbullet notification when a ssh login is successful

Pushbullet is a service that allows you to push notifications to your devices. We will be using it to send us a notification any-time somebody successfully connects to our server with ssh.

The cleanest way to run a script when on ssh logins is through PAM. PAM or “Pluggable Authentication Module” is a library called by all the authentication related functions in Linux that provides a way to hook into the authentication process.