Commit Graph

102 Commits

Author SHA1 Message Date
Oleg Kalachev
4748d34fa2 Fix pi home directory permissions to make Monkey work 2024-05-07 01:53:01 +03:00
Oleg Kalachev
afe46ab7e5 Clean initial scripts, fix UART setup 2024-05-07 01:01:40 +03:00
Oleg Kalachev
00fb98c0c2 Create Wi-Fi AP using NetworkManager 2024-04-27 00:55:11 +03:00
Oleg Kalachev
249800bc87 Fix config.txt path to the new 2024-04-27 00:54:43 +03:00
Oleg Kalachev
465bdd743b Enable ssh using raspi-config 2024-04-27 00:54:18 +03:00
Oleg Kalachev
4517cdf595 Merge branch 'cleanup-build' into bookworm 2024-04-18 07:46:34 +03:00
Oleg Kalachev
dc2293e960 More build scripts cleanup 2024-04-18 06:51:11 +03:00
Oleg Kalachev
1b191d9cf0 Major build scripts cleanup
Including removing echo_stamp, which is not needed
2024-04-18 06:49:46 +03:00
Oleg Kalachev
a41004d294 Merge remote-tracking branch 'origin/master' into bookworm 2024-04-13 23:56:50 +03:00
Oleg Kalachev
e788bf3d4d Merge noetic-bookworm into noetic-rosdep-clover, remove noetic-bullseye 2024-04-13 23:54:40 +03:00
Oleg Kalachev
62cade7404 Add correct librocos resolve to rosdep 2024-04-13 22:38:35 +03:00
Oleg Kalachev
c55e0cb7e1 Fix geographiclib dependency 2024-04-13 19:06:44 +03:00
Oleg Kalachev
d9d85f5979 Skip python3-catkin-pkg-modules and python3-rosdep-modules via rosdep file 2024-04-12 20:54:18 +03:00
Oleg Kalachev
f16273c1ae Add rosserial_server to noetic-bookworm.yaml 2024-04-10 21:21:22 +03:00
Oleg Kalachev
c91da69552 Add some correct dependencies resolves for bookworm 2024-04-05 18:47:22 +03:00
Oleg Kalachev
1154969af2 Merge branch 'master' into bookworm 2024-02-06 16:09:52 +03:00
Oleg Kalachev
d6acb0a202 Base Debian version is update to bookworm 2024-02-06 15:48:25 +03:00
Oleg Kalachev
808726b4b7 Try to tix the build 2023-04-11 13:33:35 +03:00
Oleg Kalachev
bd25818aa7 Add rosdep file to help bloom-generate resolve Bullseye dependencies 2022-10-07 14:34:30 +06:00
Oleg Kalachev
7a1f09da98 image: log all clover service output to /var/log/clover.log 2021-07-08 09:25:29 +03:00
Oleg Kalachev
921084504e Make gitbook installation script
commit f83207848fafa302d6385f4814386c433aeb9686
Author: Oleg Kalachev <okalachev@gmail.com>
Date:   Wed Jun 23 17:35:01 2021 +0300

    Make gitbook installation script
2021-06-23 19:00:32 +03:00
Oleg Kalachev
c36279e536 image: move examples to clover package 2021-06-09 15:40:22 +03:00
Oleg Kalachev
f77843f4a5 Move ROS Noetic (#327)
* builder: Use 64-bit Raspberry Pi OS

* travis: Use 64-bit builder

* builder: Don't try to install Melodic packages on Noetic

* clover: Use package version 3, update dependencies

* travis: Enable Noetic build

* standalone_install: Auto-select Python, ROS distro

* builder: Use variable substitution for ROS_DISTRO

* builder: Add Noetic package definitions

* builder: Use variable substitution for validation

* aruco_pose, clover: Allow compiling against OpenCV 3 and 4

* builder: Add proper Noetic repository

* builder: Don't force Tornado version

Assume rosbridge_suite depends on the right one.

* builder: Install packages for Python 3

* builder/test: Use Python3 interpreter for ROS tests

TODO (?): add tests for Python2?

* builder: Use Python 3 syntax for Python 3 tests

* builder: Install rpi_ws281x for Python3

* standalone_install: Use proper Python for pytest

* builder: Install espeak for python3

* builder: Use proper path for roscore

* builder: Install rosdep, etc. for python3

* builder: Run Clever/Clover test with Python3

* builder: Use Python3 for Clever compat layer

* builder: Enable OpenCV 4.2 repository

* builder: Force versions for ROS packages that use OpenCV

Also, hold their versions so that they don't get updated for no reason.

* aruco_pose/draw: Replace OpenCV projection code with a rewrite

* builder: Don't try to install compressed_transport twice

* clover: Fix importing urllib for Python3

* aruco_pose, clover: Expose Python scripts through CMake

* clover/selfcheck: Be more python3-compatible

This is basically commit a01d199890 from buster-python3, not sure if it aged well.

* roswww_static: Add python script installation

* clover_blocks: Use Python3 syntax for exec

* aruco_pose: Remove unused code

* Melodic => Noetic in some docs

* docs: add 0.22 migration article

* docs: remove unneeded comment

* docs: python 3 updates

* docs: python 3 update in auto_setup article

* docs: add ROS Noetic transition note

* aruco.launch: add placement, length and map arguments

* genmap.py: add -o argument for output file name

* docs: use -o argument of genmap.py

* simple_offboard: correctly check manual control timeout, separate it from kill switch check

* blocks: force led_leds index to int

* docs: update and fix 0.22 migration articles

* blocks: fix set_leds with color-typed argument

* aruco_gen: Open file in binary mode for Python3 compatibility

* clover: Use proper variable in aruco.launch

* led: change default number of leds to 72

* aruco_pose: Make sure there are no undefined symbols

Also, compile in apriltag_quad_thresh.cpp - it contains some of the functions referenced
in aruco.cpp, which would otherwise be undefined.

* aruco_pose: Make vendored library compatible with older OpenCVs

* aruco_pose, clover: Reduce the amount of OpenCV libs requested

* aruco_pose, clover: Move subscriptions to the end of init

* aruco_pose: Don't expose vendored library symbols

* aruco_pose: Simplify dynamic parameter callback setting

* builder: Build with debug symbols

* clover: Attempt to respawn dying nodelets

* Change Raspberry Pi OS to latest armhf, use packages.coex.tech as a source

* Add CRYPTOGRAPHY_DONT_BUILD_RUST=1

* Fix Node.js installation

* image: use older CMake (3.13.4-1)
Fixing https://travis-ci.org/github/CopterExpress/clover/jobs/764367665#L6984

* image: update Raspberry Pi OS to 2021-03-04

* image: bring back moving ld.so.preload out of the way while building

* Fix pthreads ld error

* Try to fix pthreads ld error

* Another attempt to fix pthreads ld error

* Yet another attempt to fix pthreads ld error

* Try to fix

* Be verbose

* Temporarily disable rc and camera_markers building

* Fix standalone-install

* Revert "Temporarily disable rc and camera_markers building"

This reverts commit e119220e91.

* Try to fix

* Try to fix

* Revert "image: use older CMake (3.13.4-1)"

This reverts commit df28da0060.

* Revert "Revert "image: use older CMake (3.13.4-1)""

This reverts commit a28c774e8f.

* Verbosity

* Debugging

* More debugging

* Display all CMake variables

* Try to fix

* Another try to fix

* Revert "Another try to fix"

This reverts commit 5a4c3a0da7.

* Another try to fix

* And another

* And yet another

* Continue...

* Cleanup

* Sources lists cleanup

* More cleanup

* Restore .git directory in clover repo

* Fix building documentation

* Fix documentation building in image

* Trigger build to update ws281x package

* Test

* Disable unneeded hack

* Disable hack

* image: add cmake-modules package

* www: add viewing clover.err file from web interface

* Remove hacks

* Show nodelet version

* docs: add packages article

* image: add image-view package for recording video from topics

* Minor fix

* CI: add Docker authentication on image build

* CI: fix Bash syntax

* CI: fix authentication in Docker

* CI: move Melodic build and editorconfig-lint to GitHub Actions (#331)

* Create main.yml

* Update main.yml

* Disable native Melodic build in Travis

* Run editorconfig-lint in Actions

* Let wget be less verbose

* Test

* Test ok

* Disable editorconfig-lint in Travis

* docs: add links to hardware sources

* CI: move image building to GitHub actions (#335)

* Start working on building image in GitHub actions

* Trigger GitHub on push to any branch

* Fix TRAVIS_TAG

* Add compress image step

* Disable image build in Travis

* Add upload image step

* Fix compress image

* Fix

* Fix

* Minor fix

* Trigger build on tag

* Show images sizes not in human format

* Upload only built image

* Make prerelease

* Upload assets on release not on tags

* readme: change build badge to GitHub Actions

* readme: add support chat badge

* CI: move documentation building to GitHub Actions (#337)

* CI: change docs target branch to actions

* CI: change docs target branch to master

* CI: use gh-pages target branch for docs

* CI: split up to several workflows

* CI: remove .travis.yml

* CI: change apt to apt-get

* CI: push documentation site to the main repo

* builder: less verbosity

* CI: add new key for apt
Fixing https://github.com/CopterExpress/clover/runs/2700356960#step:3:74

* Add Noetic building to CI

* Add test for QR recognition

* Fix

* Move QR recognition test to a separate file

* Fix QR recognition code for Python 3

* Import SetLEDs, LEDStateArray, LEDState in tests

* Add more imports to tests
(from documentation)

* Fix permissions

* Fix standalone-install for Python 2

* Fix QR recognition test

* Don’t use ROS for QR recognition test

* docs: remove non-working example

* Make v4l2 device file an argument in main_camera.launch

* Wait for v4l2 device before launching the camera driver

* Use exec in waitfile

* Transfer main camera nodelet manager to main_camera.launch

* Update cv_camera version to 0.5.1

* docs: minor fix

* Revert cv_camera to 0.5.0

* Update Raspberry Pi OS to 2021-05-07

* docs: add link to the last ROS Melodic version.

Co-authored-by: Alexey Rogachevskiy <sfalexrog@gmail.com>
2021-06-08 20:13:46 +03:00
Oleg Kalachev
dfdaf3aa4f image: add get_telemetry example 2021-04-13 08:50:10 +03:00
Oleg Kalachev
b1f104ce5e image: set pi3-disable-bt overlay correctly
The previous method replaced all the dtoverlay variables to pi3-disable-bt, which is incorrect
2021-03-30 21:17:38 +03:00
Oleg Kalachev
a088524468 docs: change /led redirect to English version, shortened links in examples 2020-11-27 03:06:57 +03:00
Oleg Kalachev
2075fa52ef examples: make leds.py more verbose 2020-10-24 21:52:34 +03:00
Oleg Kalachev
d4d25c61a2 docs: rework and simplify navigate_wait snippet, move it on top 2020-08-21 18:16:25 +03:00
Oleg Kalachev
bcb7351a90 roswww_static: infrastructure for web-based Clover plugins (#230)
* Package for generating static web sites for ROS

* rosstatic: add CMakeLists.txt

* rosstatic: utilize rospkg, store static directory in ROS_HOME

* rosstatic: default_package param

* rosstatic: fix URLs in docs

* clover.launch: make clover the default package for www

* Unused import

* Rename rosstatic to roswww_static

* Fixes
2020-06-13 02:08:00 +03:00
Alexey Rogachevskiy
f041b6125b Add Avahi services broadcasting (#231)
* Builder: Add Avahi services broadcasting

* avahi-services: Remove http.service

* builder: Expose sftp-ssh instead of just ssh, fix build
2020-06-03 22:35:48 +03:00
Alexey Rogachevskiy
c7e7edec70 builder: Enable ROS services after first boot (#208)
Merging this into master, this should not break anything.
2020-05-06 13:24:53 +03:00
Oleg Kalachev
387d2c2341 Update documentation links 2020-05-01 00:39:38 +03:00
Oleg Kalachev
90049182cf image: add navigate_wait example 2020-04-09 15:44:48 +03:00
Oleg Kalachev
3811cbff3e examples: fix markers example link 2020-03-19 13:10:05 +03:00
Oleg Kalachev
2d49f58fb8 image: add markers flight example 2020-03-19 13:09:31 +03:00
Oleg Kalachev
6879723771 image: add some examples (#222)
* image: add some examples

* Rename 'fligth' node to 'leds'

* image: copy examples to /home/pi/examples

* examples: add information links

Co-authored-by: Alamoris <gonzalez1139@gmail.com>
2020-03-12 20:20:27 +03:00
Alexey Rogachevskiy
770a76a450 init_rpi: Place wpa_supplicant.conf to /boot 2020-02-20 22:11:24 +03:00
Alexey Rogachevskiy
4c940f0b8b init_rpi: Unblock wi-fi on first boot 2020-02-19 17:00:49 +03:00
Alexey Rogachevskiy
f7934554e4 builder: Move wpa_supplicant configuration to init_rpi (#207) 2020-02-04 13:18:28 +03:00
Oleg Kalachev
89ccf9c2b9 Rename package to clover (#179) 2020-01-31 03:24:21 +03:00
Alexey Rogachevskiy
0fb22e817d rsyslog: Don't try to set rate limits
The way this was implemented didn't work anyway and produced spurious errors, we can probably live without that for now.
2019-12-09 19:50:03 +03:00
Alexey Rogachevskiy
e1ab0e63b5 Limit syslog size (#195)
* builder: Put file size limits in rsyslog.conf

* rsyslog: Add simple log rotation script

* rsyslog: Add rate limiting
2019-12-06 21:29:52 +03:00
Alexey Rogachevskiy
4a23a9274a Move to Raspbian Buster (#193)
* builder: Build against Buster

* builder: Use correct repository specifications

* builder: Move ld.so.preload to have less errors

* builder: Use coex repo to install Monkey

* builder: Search for buster ROS packages

* aruco_pose: Vendor in aruco library from OpenCV 3.4.6

* builder: Move to ROS Melodic

* builder: Update kernel version

* aruco_pose, clever: Remove opencv3 ROS dependency

* builder: Update rosdep

* travis: Disable eclint for vendored aruco library

* tests: Don't try to locate opencv in ros

* roscore: Use melodic distribution

* Revert "aruco_pose: Vendor in aruco library from OpenCV 3.4.6"

This reverts commit 9c14a8c002bb3396f9a7d9b2ba39969207f066ba.

* aruco_pose: Vendor opencv_contrib/aruco again

* builder: Add led packages

* builder: Remove unused builder code

* travis: Add native tests

* builder: Set permissions for standalone-install

* builder: Use -y for package installation

* builder: Add repo for standalone build

* builder: Use correct file types for standalone install

* aruco_pose: Accept rgb8 map images

* builder: Disable mjpg_streamer test

* aruco_pose: Allow rgb8 map images (again)

* builder: Re-add mjpgstreamer

* builder: Install tornado==4.2.1 for rosbridge_suite

* builder: Use more recent base image

* builder: Use default kernel

* builder: Move ld.so.preload back after tests

* builder: Disable catkin tests

These tests fail on a remote machine but seem to pass just fine on real hardware. Something must have changed between Kinetic and Melodic, and we must investigate more, but for now we just need a working image.

* aruco_pose: Remove unused vendored code

* selfcheck: Update systemd-analyze regex

* builder: Add opencv repository

* rosdep: Update package definitions for Melodic

* rosdep: Use proper yaml formatting

* travis: Remove unnecessary space

* docs: Reference Melodic wherever possible
2019-12-06 21:25:19 +03:00
Oleg Kalachev
45e6f396d0 image: remove after=network.target from service files to speed up booting 2019-11-20 17:31:05 +03:00
sfalexrog
1af20c0869 clever.service: Add line buffering 2019-09-05 21:03:52 +03:00
Oleg Kalachev
fda030e539 clever.service: pipe all errors to /tmp/clever.err (#176)
* clever.service: pipe all errors to /tmp/clever.err

* clever.service: run with Bash

* selfcheck: parse node errors and group them
2019-09-05 20:45:00 +03:00
Oleg Kalachev
588ccaf314 Merge pull request #172 from CopterExpress/selfcheck_roslaunch
Show roslaunch errors in selfcheck
2019-09-02 20:12:49 +03:00
sfalexrog
1be06b8cee init_rpi: Use lower case hostname 2019-09-01 20:14:42 +03:00
Oleg Kalachev
cd63afe268 clever.service: remove service auto-restart 2019-08-31 22:20:05 +03:00
Oleg Kalachev
f9b1a82b5e Add LED strip support layer (#168)
Co-authored-by: sfalexrog <sfalexrog@gmail.com>
2019-08-29 22:17:49 +03:00