Skip to content

Service to handle Lidar Livox sensors data from models Mid-40, Mid-100, Horizon, Tele-15. lidar_livox is the software designed for all Livox products. It is developed based on Qt C++ following Livox SDK Communication logic, and provides easy-to-use Qt style API. With lidar_livox, users can quickly connect to Livox products, receive point cloud d…

Notifications You must be signed in to change notification settings

JSC-NIIAS/LivoxHandler

Repository files navigation

lidar_livox

Service to handle Lidar Livox sensors data from models Mid-40, Mid-100, Horizon, Tele-15.

lidar_livox is the software designed for all Livox products. It is developed based on Qt C++ following Livox SDK Communication logic, and provides easy-to-use Qt style API. With lidar_livox, users can quickly connect to Livox products, receive point cloud data and visualize them.


Installation

The installation procedures in Linux Ubuntu 16.04/14.04 32-bit LTS or Linux Mint 19.* 64-bit are shown here as examples.

Dependencies

Qt:

Service requires Qt 5 Qt 5.0.0+. You need to visit Qt downloads page an download a 32-bit or 64-bit Linux installation depending your version of Ubuntu. The installation file can be also downloaded latest version through the command line using wget. Visit Qt install wiki for more info Qt install wiki.

For data visualization go to lidar_livox.pro and change the flag from:

DEFINES -= WITH_GUI

to

DEFINES += WITH_GUI

and rebuild the project.

**Warning! Data visualization mode requires Qt Creator version 5.10.0 or more. **

ZCM:

ZCM is a micro-framework for message-passing and data-marshalling, designed originally for robotics systems where high-bandwidth and low-latency are critical and the variance in compute platforms is large. Installation here ZCM Repository.

Submodules:

Livox SDK requires CMake 3.0.0+, Apache Portable Runtime (APR) 1.61+ and Boost 1.54+ as dependencies. You need to install boost, cmake using apt:

sudo apt install cmake libboost-atomic-dev libboost-system-dev

And download the newest apr linux source file in Apache Portable Runtime (APR) 1.61+:

tar -zxvf apr-1.X.X.tar.gz
cd apr-1.X.X
./configure --prefix=/usr/local/apr --disable-lfs
make && sudo make install

Compile Livox SDK & ZCM Types

In the Livox SDK directory, run the following commands to compile the project:

git clone ssh://[email protected]:7999/ado/lidar_livox.git
cd lidar_livox
git checkout develop
./scripts/update_submodules.sh

Development setup

Describing how to install all development dependencies and how to run an automated test-suite of some kind. Potentially do this for multiple platforms.

cd lidar_livox
git checkout develop
./scripts/build_all.sh
./scripts/run.sh

Build project without updating submodules:

cd lidar_livox
git checkout develop
./scripts/build.sh

Or using Qt Creator:

Projects->Run-> and insert the code:

-c ../lidar_livox/cfg/lidar_livox.ini -p lidar_livox

Optional:

--vgit or -V or --version - print repository version (git hash). Example: hash=abe5cf73f7371cb2551505e78561fbff4021b98d, branch=develop, revcount=36, date=2020-02-04 21:12:41 +0300, author-name=Dmitrii Leliuhin, [email protected], comptime=Feb 5 2020T11:31:00

--print_conf - print config file and exit. --save_conf - save default config as file & exit.

Config file setup

Edit the cfg/lidar_livox.ini. You need to change the broadcast parameter in receive group according to your sensor broadcast code.

For setting up extrinsic sensor parameters got to offset group and change the values. Zcm channels parameters you can find in zcm_send group. The group main_params is responsible for data freequency to ZCM. Lidar params setting up in lidar_params group. If you want to filter lidar data from noise (rain/fog) set the

weather_suppress=true

Timestamp Synchronization

For sensor time synchro visit Livox SDK time synchro.


Release History

  • 0.0.1
    • Bare harness for sensor.
  • 1.0.0
    • Add pushing data to ZCM.

Contributing

  1. Clone it (ssh://[email protected]:7999/ado/lidar_livox.git)
  2. Create your feature branch (git checkout -b feature/fooBar)
  3. Commit your changes (git add . & git commit -m "Feature. Add some fooBar.")
  4. Push to the branch (git push origin feature/fooBar)
  5. Create a new Pull Request to develop

Support

Reach out to me at one of the following places!


About

Service to handle Lidar Livox sensors data from models Mid-40, Mid-100, Horizon, Tele-15. lidar_livox is the software designed for all Livox products. It is developed based on Qt C++ following Livox SDK Communication logic, and provides easy-to-use Qt style API. With lidar_livox, users can quickly connect to Livox products, receive point cloud d…

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •