[HowTo] Update the firmware of the uNav/RoboController board

[Last update 2015 Jun 20]

The firmware of the motor control board mounted on MyzharBot (uNav starting from v4, RoboController up to v3) is constantly updated to introduce improvements.
The firmware is the same for both uNav and RoboController boards.

This is the procedure to get the firmware from Github, to compile it under MplabX and finally to upload it to the board.

Note: The following procedure is related to a Linux Operating system (Ubuntu), but can be replicated also under windows, replacing the Github phase with the correct one.

  1. If you do not have MplabX installed on your system go to Microchip website and get the last one, install MplabX IDE (currently v3.05) and Mplab XC16 compiler (currently v1.24)
  2. Install “git” on your system if you do not have it
    sudo apt-get install git
    
  3. If this is the first time that you upload the firmware on the control board follow step “A” else follow step “B”
    1. [To get the last source code] Go to your development folder (i.e. cd ~/devel) and insert the following commands to get the latest working firmware:
      $ mkdir uNAV
      $ cd uNAV 
      $ git clone https://github.com/officinerobotiche/or_bus_c.X.git 
      $ cd or_bus_c.X 
      $ git checkout develop 
      $ cd ..
      $ git clone https://github.com/officinerobotiche/or_common_c.X.git 
      $ cd or_common_c.X 
      $ git checkout develop 
      $ cd ..
      $ git clone https://github.com/officinerobotiche/uNAV.X.git 
      $ cd uNAV.X 
      $ git checkout develop
    2. [To update the source code to last changes] Go to your development folder (i.e. cd ~/devel) and insert the following commands to get the latest working firmware:
      $ cd uNAV
      $ cd or_bus_c.X
      $ git pull
      $ git checkout develop
      $ cd ../or_common_c.X
      $ git pull
      $ git checkout develop
      $ cd uNAV.X 
      $ git pull
      $ git checkout develop
  4. At this point the code is updated, so we can run MplabX IDE to compile it
  5. Open project “uNAV.X”
  6. Select the correct project according to your board: uNAV_V1 or RoboController_V3

    MplabX IDE Project Type

    MplabX IDE Project Type

  7. Click on the “hammer” and compile the project [Build Project (uNAV)]
  8. Now connect your Microchip programmer to the board (I use PICkit 3 In-Circuit Debugger)
  9. Power on the board
  10. Upload the firmware using the command Make and Program Device (project uNAV)
  11. If no error messages are come out than the board is ready to drive the robot

 

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.