- CatPilot >
- Quick start manual
Quick start manual¶
Make sure you have toolchain installed and ready using Toolchain installation manual.
Get UAS-CatPilot project source and repo:
git clone --recurse-submodules git@github.com:ctlst-tech/uas-catpilot.git
cd uas-catpilot
Generate atomic functions supporting source code
make atomics
Embedded C-ATOM’s configuration files into C code by command:
make xmlinline
Build firmware:
make cube
Connect your device to a ST-LINK programmer. Make sure ST-LINK sees the device:
st-info --probe
Flash the device
make flash
8. Connect DBG/TELEM2 (depending on your setup) port of the device to your computer and connect to it via your favorite serial port interaction tool.
Check console response by pressing Enter and seeing #.
Ender command
version
, observe:
uas-catpilot 70be35cb dirty
catpilot 1c57a900 dirty
Enter command
log
, observe:
0.032 INFO BOARD Initialization successful
0.033 INFO ICM20649 Service started
0.033 DEBUG ICM20649 Period = 2 ms, priority = 20
0.236 INFO ICM20649 Initialization successful
0.237 INFO ICM20602 Service started
0.237 DEBUG ICM20602 Period = 2 ms, priority = 20
0.342 INFO ICM20602 Initialization successful
0.348 INFO ICM20948 Service started
0.348 DEBUG ICM20948 Period = 2 ms, priority = 20
0.552 INFO ICM20948 Initialization successful
0.569 INFO CUBEIO Service started
0.569 DEBUG CUBEIO Period = 0 ms, priority = 19
0.671 INFO CUBEIO Initialization successful
0.693 INFO MS5611_INT Service started
0.693 DEBUG MS5611_INT Period = 100 ms, priority = 18
0.793 INFO MS5611_EXT Service started
0.793 DEBUG MS5611_EXT Period = 100 ms, priority = 18
0.903 INFO MS5611_INT Initialization successful
0.918 INFO SYSTEM Configuration loading successful
1.003 INFO MS5611_EXT Initialization successful
Enter command
monitor
, observe:
------------------------ Threads ------------------------
Thread name Time, ms Load Priority
pthread 000001.400 <1% 1
IDLE 001533.000 41% 0
ICM20602 000233.400 6% 20
ICM20649 000252.700 6% 20
ICM20948 000248.000 6% 20
MS5611_EXT 000003.400 <1% 18
flw-nav_attitud 000026.500 <1% 10
flw-rc 000039.500 1% 8
CUBEIO 000229.700 6% 19
eqrb_server_thread 000003.300 <1% 4
flw-nav_imu_ali 000003.600 <1% 7
ebr-man_cont 000218.100 5% 5
flw-housekeepin 000004.000 <1% 6
ebr-nav 000007.000 <1% 5
ttyS0_read_thread 000000.000 <1% 2
ttyS4_read_thread 000000.300 <1% 1
ttyS4_wirte_thread 000000.900 <1% 1
MS5611_INT 000003.300 <1% 18
board_start_thread 000000.400 <1% 3
sdtl_rx_gcu_li 000000.100 <1% 3
ttyS0_wirte_thread 000001.500 <1% 2
flw-cont_angpos 000032.400 <1% 8
pthread 000000.600 <1% 1
flw-nav_attitud 000277.800 7% 11
flw-cont_angrat 000537.400 14% 9
Tmr Svc 000000.100 <1% 3
------------------------ Memory ------------------------
Total RAM 468104
Used RAM 391868
Free RAM 76236
Connect TELEM1 from the device to your computer.
14. Start python based GUI telemetry tool by a command
python3 gui.py --serdev /dev/ttyUSB0 --serbaud 57600
You shoud get this GUI started with RX/TX bytes flashing (check connection if they are not):

Congratulations! You are CatPiloted now :)
Have trouble? Check our discord or ask a question inside github project. Check Find help and support for additional directions.
What’s next?¶
- C-ATOM
Learn now to extend and tune CatPilot for your needs
- Atomic functions catalog
Learn available building blocks
- Quick graphical user interfaces creation
Learn how to extend GUI interface
- Build and debug reference
Understand building and debugging flow
- JetBrains Clion IDE setup or VS Code IDE setup
Setup your favorite IDE