## For instruction on writing tutorials
## http://www.ros.org/wiki/WritingTutorials
####################################
##FILL ME IN
####################################
## for a custom note with links:
## note =
## for the canned note of "This tutorial assumes that you have completed the previous tutorials:" just add the links
## note.0=
## descriptive title for the tutorial
## title = Platform firmware update
## multi-line description to be displayed in search
## description = Here are the steps needed to flash the platform.
## the next tutorial description (optional)
## next =
## links to next tutorial (optional)
## next.0.link=
## next.1.link=
## what level user is this tutorial for
## level= IntermediateCategory
## keywords =
####################################
!<<IncludeCSTemplate(TutorialCSHeaderTemplate)>>

## AUTOGENERATED DO NOT DELETE
## TutorialCategory
## FILL IN THE STACK TUTORIAL CATEGORY HERE
If this is not the first time programming the binary code then jump to  4.

== Install lm4flash ==
{{{
git clone https://github.com/utzig/lm4tools.git
cd lm4tools/lm4flash/
make
sudo cp lm4flash /usr/local/bin
}}}
== Give Ubuntu the correct permissions for programming the platform ==
{{{
echo 'ATTRS{idVendor}=="1cbe", ATTRS{idProduct}=="00fd", MODE="0660", GROUP="dialout"' | sudo tee /etc/udev/rules.d/61-tiva.rules
sudo adduser $USER dialout
}}}
== Hardware preparation steps ==
To properly detect the drivers please do the following:

 1. Remove USB cable
 1. Ubuntu / Linux logout
 1. Ubuntu / Linux login
 1. Reconnect USB cable

== Program the platform ==
Make sure your platform is fully charged and the computer used to flash the firmware has enough battery.
{{{
sudo lm4flash <directory_where_the_bin_file_is_located>/file_name.bin
}}}
Default firmware can be downloaded [[https://robosavvy.com/RoboSavvyPages/RSVPlatform/firmware_balance_10degrees_5kmh_v01.bin|here]]