Commit c06b249e authored by Alejandro Lopez Gestoso's avatar Alejandro Lopez Gestoso
Browse files

Update ReadMe.md

parent 538b2d85
# C++ Lidar Lite driver
Lidar\_lite library {#mainpage}
============
Driver for Garmin Lidar Lite v3.
## Description
### Hardware configuration
This library provides quick access to all the basic functions of [LIDAR-Lite](https://buy.garmin.com/es-ES/ES/p/557294)
using an [USB-I2C communications module](http://www.robot-electronics.co.uk/htm/usb_i2c_tech.htm).
This library provides quick access to all the basic functions of LIDAR-Lite using an USB-I2C communications module.
## Installation
For detailed specifications, pinout, and connection diagrams, please refer to the following manuals.
* Add the labrobotica repository if it is not already added:
- [Lidar Lite V3](http://static.garmin.com/pumac/LIDAR_Lite_v3_Operation_Manual_and_Technical_Specifications.pdf) (I2C connection diagrams)
- [USB-I2C module](http://www.robot-electronics.co.uk/htm/usb_i2c_tech.htm)
``` sudo sh -c 'echo "deb [arch=amd64] http://147.83.76.226/~irilabo/packages xenial main" > /etc/apt/sources.list.d/labrobotica_repo.list' ```
### Software dependencies
``` wget -O - http://147.83.76.226/~irilabo/labrobotica_repo.gpg.key | sudo apt-key add - ```
- [iriutils](https://gitlab.iri.upc.edu/labrobotica/algorithms/iriutils) - IRI C++ library
* Install the package:
- Download the library: `git clone https://gitlab.iri.upc.edu/labrobotica/algorithms/iriutils`
- Compile and install: `cd iriutils/build && cmake -D CMAKE_BUILD_TYPE=RELEASE .. && make -j $(nproc) && sudo make install`
``` sudo apt update && sudo apt install iri-lidar-lite-dev ```
- [comm](https://gitlab.iri.upc.edu/labrobotica/drivers/comm) - IRI C++ library
## Disclaimer
- Download the library: `git clone https://gitlab.iri.upc.edu/labrobotica/drivers/comm`
- Compile and install: `cd comm/build && cmake -D CMAKE_BUILD_TYPE=RELEASE .. && make -j $(nproc) && sudo make install`
Copyright (C) 2016-2019 Institut de Robòtica i Informàtica Industrial, CSIC-UPC.
Mantainer IRI labrobotics (labrobotica@iri.upc.edu)
- [usb_i2c_adapter](https://gitlab.iri.upc.edu/labrobotica/drivers/usb_i2c_adapter) - IRI C++ library
This package is distributed in the hope that it will be useful, but without any warranty. It is provided "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The entire risk as to the quality and performance of the program is with you. should the program prove defective, the GMR group does not assume the cost of any necessary servicing, repair or correction.
- Download the library: `git clone https://gitlab.iri.upc.edu/labrobotica/drivers/usb_i2c_adapter`
- Compile and install: `cd usb_i2c_adapter/build && cmake -D CMAKE_BUILD_TYPE=RELEASE .. && make -j $(nproc) && sudo make install`
In no event unless required by applicable law the author will be liable to you for damages, including any general, special, incidental or consequential damages arising out of the use or inability to use the program (including but not limited to loss of data or data being rendered inaccurate or losses sustained by you or third parties or a failure of the program to operate with any other programs), even if the author has been advised of the possibility of such damages.
- [FTDI driver](http://www.ftdichip.com/Drivers/D2XX.htm) - (Required only if not previously installed)
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>
- Download the FTDI driver depending on your ubuntu distribution: http://www.ftdichip.com/Drivers/D2XX.htm
- Install the driver: http://www.ftdichip.com/Support/Documents/AppNotes/AN_220_FTDI_Drivers_Installation_Guide_for_Linux.pdf
- Add the following line at the end of your `~/.bashrc` file: `export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH`
## For developers
### Installation
<details><summary>click here</summary>
<p>
- Clone the repository: `git clone https://gitlab.iri.upc.edu/asantamaria/LidarLite.git`
- Install: `cd LidarLite/build && cmake -D CMAKE_BUILD_TYPE=RELEASE .. && make -j $(nproc) && sudo make install`
## Dependencies
### Example of usage
his package requires of the following system libraries and packages
- Run `/bin/./lidar_lite_test`.
* [cmake](https://www.cmake.org "CMake's Homepage"), a cross-platform build system.
* [doxygen](http://www.doxygen.org "Doxygen's Homepage") and [graphviz](http://www.graphviz.org "Graphviz's Homepage") to generate the documentation.
* stdc++.
- Checkout [iri_lidar_lite](https://gitlab.iri.upc.edu/asantamaria/iri_lidar_lite) project to use this library within ROS framework.
Under linux all of these utilities are available in ready-to-use packages.
### Support material and multimedia
Under MacOS most of the packages are available via [fink](http://www.finkproject.org/ "Fink's Homepage")
This package also requires of the following IRI libraries:
* [iriutils](https://gitlab.iri.upc.edu/labrobotica/algorithms/iriutils "iriutils gitlab page"), a set of basic tools.
* [comm](https://gitlab.iri.upc.edu/labrobotica/drivers/comm "comm gitlab page"), a set of drivers for standard communication devices.
* [usb_i2c_adapter](https://gitlab.iri.upc.edu/labrobotica/drivers/usb_i2c_adapter), a driver for the usb-i2c adapter.
## Compilation and installation from source
Clone this repository and create a build folder inside:
``` mkdir build ```
Inside the build folder execute the following commands:
``` cmake .. ```
The default build mode is DEBUG. That is, objects and executables include debug information.
The RELEASE build mode optimizes for speed. To build in this mode execute instead
``` cmake .. -DCMAKE_BUILD_TYPE=RELEASE ```
The release mode will be kept until next time cmake is executed.
``` make -j $(nproc)```
In case no errors are reported, the generated libraries (if any) will be located at the
_lib_ folder and the executables (if any) will be located at the _bin_ folder.
In order to be able to use the library, it it necessary to copy it into the system.
To do that, execute
``` make install ```
as root and the shared libraries will be copied to */usr/local/lib/iri/lidar_lite* directory
and the header files will be copied to */usr/local/include/iri/lidar_lite* dierctory.
At this point, the library may be used by any user.
To remove the library from the system, exceute
``` make uninstall ```
as root, and all the associated files will be removed from the system.
To generate the documentation execute the following command:
``` make doc ```
## How to use it
To use this library in an other library or application, in the CMakeLists.txt file, first it is necessary to locate if the library has been installed or not using the following command
``` FIND_PACKAGE(lidar_lite) ```
In the case that the package is present, it is necessary to add the header files directory to the include directory path by using
``` INCLUDE_DIRECTORIES(${lidar_lite_INCLUDE_DIRS}) ```
and it is also necessary to link with the desired libraries by using the following command
``` TARGET_LINK_LIBRARIES(<executable name> ${lidar_lite_tilt_LIBRARIES}) ```
## Examples
There is one example called _lidar\_lite\_test_.
</p>
</details>
## Support material and multimedia
Please, visit: [**asantamaria's web page**](http://www.angelsantamaria.eu)
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment