Compile and upload code: Difference between revisions

From Rsewiki
Line 31: Line 31:


  help
  help
  # Available commands from Basebot:
  % Available commands from Basebot:
  # State settings -------
  %% Robot settings -------
  # --    setidx N        Set ID to N (sets robot name) (id=52)
  % --    setidx N        Set ID to N (sets robot name) (id=42)
  # --    start  Start (activate something)
  % --    sethw P        Set PCB version to P (is=9) 9=PCB6.3
  # --    version        Get version in SVN (is 16807) (of file urobot.cpp)
% --    start  Start (same as start button)
  # --    help    Send on-line help
  % --    version        Get version in SVN (is 37)
  # USB -------
% --    power 0/1      12V power 1=on (is 1)
  # --    echo A  Send received characters back as received. A=0 not, A=1 yes (is=0)
  % --    reboot  Reboot Teensy
  # Motor -------
% --    log    Print log
  # --    motv m1 m2      Set motor voltage -12.0..12.0 - and enable motors
% --    help    Send on-line help
  # --    motfrq  Set motor PWM frequency [100..50000], is 68000
  %% USB -------
  # Encoder settings -------
  % --    echo A  Send received characters back as received. A=0 not, A=1 yes (is=1)
  # --    confw ppr      Set configuration (ppr: pulse per revolution)
  %% Motor -------
  # IMU -------
  % --    motv m1 m2      Set motor voltage -12.0..12.0 - and enable motors
  # --    gyroc  Start gyro calibration (finished=1)
  % --    motfrq  Set motor PWM frequency [100..100000], is 80000
% --    stop    Calls the function stop(0.02)
  %% Encoder settings -------
  % --    confw ppr      Set configuration (ppr: pulse per revolution, is 48)
% --    encf F C        Use fast estimate (F=0 delay but cleaner, F=1 faster, is 0; C=0 don't compensate, U=1 compensate, is=0)
  %% IMU -------
  % --    gyroc  Start gyro calibration (finished=1)
%% EE (configuration flash) --------
% --    eew    Save configuration to EE-Prom (flash)
% --    eer    Read configuration from EE-Prom

Revision as of 16:31, 30 August 2025

Back to Basebot.

Compile the code

Use the PlatformIO -> PROJECT TASKS -> teensy 4.1 -> General -> build to compile the project.

It should now compile with a "SUCCESS" result, something like the one shown here:

Click on the "explorer" and find the source code:

Connect the robot using a USB. Turning on the robot is not strictly needed, as the USB will provide sufficient power to make the upload.

Use the PlatformIO -> PROJECT TASKS -> teensy 4.1 -> General -> Upload and Monitor

This should open the loader app, find the correct USB port, upload the code and start the serial monitor.

Note that at the bottom, there are two lines from the robot (marked in blue), something like:

% Robot 52 Adriana (PCB version 6.3)
% UImu2:: gyro offset: 2.20459 -0.896149 0.737335

This indicates that the firmware is running (and that the gyro is calibrated).

There are a few commands available from the command line, e.g. type help and return to get:

help
% Available commands from Basebot:
%% Robot settings -------
% --    setidx N        Set ID to N (sets robot name) (id=42)
% --    sethw P         Set PCB version to P (is=9) 9=PCB6.3
% --    start   Start (same as start button)
% --    version         Get version in SVN (is 37)
% --    power 0/1       12V power 1=on (is 1)
% --    reboot  Reboot Teensy
% --    log     Print log
% --    help    Send on-line help
%% USB -------
% --    echo A  Send received characters back as received. A=0 not, A=1 yes (is=1)
%% Motor -------
% --    motv m1 m2      Set motor voltage -12.0..12.0 - and enable motors
% --    motfrq  Set motor PWM frequency [100..100000], is 80000
% --    stop    Calls the function stop(0.02)
%% Encoder settings -------
% --    confw ppr       Set configuration (ppr: pulse per revolution, is 48)
% --    encf F C        Use fast estimate (F=0 delay but cleaner, F=1 faster, is 0; C=0 don't compensate, U=1 compensate, is=0)
%% IMU -------
% --    gyroc   Start gyro calibration (finished=1)
%% EE (configuration flash) --------
% --    eew     Save configuration to EE-Prom (flash)
% --    eer     Read configuration from EE-Prom