Skip to content

Commit

Permalink
docs: add levski note, remove nats docs from levski (#192)
Browse files Browse the repository at this point in the history
* docs: add note about stable levski release

Signed-off-by: Anthony Casagrande <[email protected]>

* docs: add note to checkout levski edgex-compose

Signed-off-by: Anthony Casagrande <[email protected]>

* docs: change location of nats documentation (#168)


Signed-off-by: Darr, Christian <[email protected]>

* docs: made some formatting changes

Signed-off-by: preethi-satishcandra <[email protected]>

---------

Signed-off-by: Anthony Casagrande <[email protected]>
Signed-off-by: Darr, Christian <[email protected]>
Signed-off-by: preethi-satishcandra <[email protected]>
Co-authored-by: ChristianDarr-personal <[email protected]>
Co-authored-by: preethi-satishcandra <[email protected]>
  • Loading branch information
3 people authored Mar 22, 2023
1 parent e8fb29a commit 16af8f3
Show file tree
Hide file tree
Showing 5 changed files with 55 additions and 26 deletions.
15 changes: 2 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,26 +2,15 @@
[![Build Status](https://jenkins.edgexfoundry.org/view/EdgeX%20Foundry%20Project/job/edgexfoundry/job/device-usb-camera/job/main/badge/icon)](https://jenkins.edgexfoundry.org/view/EdgeX%20Foundry%20Project/job/edgexfoundry/job/device-usb-camera/job/main/) [![Code Coverage](https://codecov.io/gh/edgexfoundry/device-usb-camera/branch/main/graph/badge.svg?token=K4V4LAJYYW)](https://codecov.io/gh/edgexfoundry/device-usb-camera) [![Go Report Card](https://goreportcard.com/badge/github.com/edgexfoundry/device-usb-camera)](https://goreportcard.com/report/github.com/edgexfoundry/device-usb-camera) [![GitHub Latest Dev Tag)](https://img.shields.io/github/v/tag/edgexfoundry/device-usb-camera?include_prereleases&sort=semver&label=latest-dev)](https://github.com/edgexfoundry/device-usb-camera/tags) ![GitHub Latest Stable Tag)](https://img.shields.io/github/v/tag/edgexfoundry/device-usb-camera?sort=semver&label=latest-stable) [![GitHub License](https://img.shields.io/github/license/edgexfoundry/device-usb-camera)](https://choosealicense.com/licenses/apache-2.0/) ![GitHub go.mod Go version](https://img.shields.io/github/go-mod/go-version/edgexfoundry/device-usb-camera) [![GitHub Pull Requests](https://img.shields.io/github/issues-pr-raw/edgexfoundry/device-usb-camera)](https://github.com/edgexfoundry/device-usb-camera/pulls) [![GitHub Contributors](https://img.shields.io/github/contributors/edgexfoundry/device-usb-camera)](https://github.com/edgexfoundry/device-usb-camera/contributors) [![GitHub Committers](https://img.shields.io/badge/team-committers-green)](https://github.com/orgs/edgexfoundry/teams/device-usb-camera-committers/members) [![GitHub Commit Activity](https://img.shields.io/github/commit-activity/m/edgexfoundry/device-usb-camera)](https://github.com/edgexfoundry/device-usb-camera/commits)


> **Note**: This is the stable release branch compatible with **EdgeX Levski (v2.3.x)**. It is only compatible with the [levski branch of edgex-compose](https://github.com/edgexfoundry/edgex-compose/tree/levski).
## Overview
The USB Device Service is a microservice created to address the lack of standardization and automation of camera discovery and onboarding. EdgeX Foundry is a flexible microservice-based architecture created to promote the interoperability of multiple device interface combinations at the edge. In an EdgeX deployment, the USB Device Service controls and communicates with USB cameras, while EdgeX Foundry presents a standard interface to application developers. With normalized connectivity protocols and a vendor-neutral architecture, EdgeX paired with USB Camera Device Service, simplifies deployment of edge camera devices.

Specifically, the device service uses V4L2 API to get camera metadata, FFmpeg framework to capture video frames and stream them to an [RTSP server](https://github.com/aler9/rtsp-simple-server), which is embedded in the dockerized device service. This allows the video stream to be integrated into the [larger architecture](#how-it-works).

Use the USB Device Service to streamline and scale your edge camera device deployment.

## Build with NATS Messaging
Currently, the NATS Messaging capability (NATS MessageBus) is opt-in at build time.
This means that the published Docker image and Snaps do not include the NATS messaging capability.

The following make commands will build the local binary or local Docker image with NATS messaging
capability included.
```makefile
make build-nats
make docker-nats
```

The locally built Docker image can then be used in place of the published Docker image in your compose file.
See [Compose Builder](https://github.com/edgexfoundry/edgex-compose/tree/main/compose-builder#gen) `nat-bus` option to generate compose file for NATS and local dev images.

## How It Works

Expand Down
22 changes: 22 additions & 0 deletions docs/general-usage.md
Original file line number Diff line number Diff line change
Expand Up @@ -85,10 +85,32 @@ See the examples at `cmd/res/devices`
make build
```

<details>
<summary>[Optional] Build with NATS Messaging</summary>

Currently, the NATS Messaging capability (NATS MessageBus) is opt-in at build time. To build using NATS, run make build-nats:

```bash
make build-nats
```
</details>

### Build docker image
```shell
make docker
```
<details>
<summary>[Optional] Build with NATS Messaging</summary>

Currently, the NATS Messaging capability (NATS MessageBus) is opt-in at build time. This means that the published Docker image and Snaps do not include the NATS messaging capability. To build the docker image using NATS, run make docker-nats:

```bash
make docker-nats
```

See [Compose Builder](https://github.com/edgexfoundry/edgex-compose/tree/main/compose-builder#gen) `nat-bus` option to generate compose file for NATS and local dev images.

</details>

## Run device-usb-camera
- Docker
Expand Down
22 changes: 18 additions & 4 deletions docs/guides/CustomStartupGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ You must have administrator (sudo) privileges to execute the user guide commands

## Tested Devices
The following devices have been tested with EdgeX USB Camera Device Service:
> Note: Results may vary based on camera hardware/firmware version and operating system support.
> **NOTE:** Results may vary based on camera hardware/firmware version and operating system support.
<!-- sorted alphabetically -->
- AUKEY PC-LM1E Webcam
- HP w200 Webcam
Expand Down Expand Up @@ -73,7 +73,7 @@ The table below lists command line tools this guide uses to help with EdgeX conf

>Table 1: Command Line Tools
## Get the Source Code
> Note: This guide uses a assumes a working directory of `~/edgex`. The commands below will need to be updated if that is not the desired working directory.
> **NOTE:** This guide uses a assumes a working directory of `~/edgex`. The commands below will need to be updated if that is not the desired working directory.
### Download EdgeX Compose Repository

1. Create a directory for the EdgeX compose repository:
Expand Down Expand Up @@ -130,6 +130,20 @@ For example:
```bash
make docker
```

<details>
<summary>[Optional] Build with NATS Messaging</summary>

Currently, the NATS Messaging capability (NATS MessageBus) is opt-in at build time. This means that the published Docker image and Snaps do not include the NATS messaging capability. To build the docker image using NATS, run make docker-nats:

```bash
make docker-nats
```
See [Compose Builder](https://github.com/edgexfoundry/edgex-compose/tree/main/compose-builder#gen) `nat-bus` option to generate compose file for NATS and local dev images.

</details>

1. Navigate to the Edgex compose directory.

```shell
Expand Down Expand Up @@ -225,7 +239,7 @@ For example:
## OPTIONAL: Adding Devices using REST API

> **NOTE**: This section only needs to be performed if discovery is disabled.
> **NOTE:** This section only needs to be performed if discovery is disabled.
Devices can either be added to the service by defining them in a static configuration file, discovering devices dynamically, or with the REST API. For this example, the device will be added using the REST API.

Expand Down Expand Up @@ -406,4 +420,4 @@ In the case of Ubuntu 20.04, one is not available in the normal repositories, so
```
wget https://launchpad.net/~canonical-kernel-team/+archive/ubuntu/bootstrap/+build/20950478/+files/linux-libc-dev_5.10.0-14.15_amd64.deb
sudo dpkg -i linux-libc-dev_5.10.0-14.15_amd64.deb
```
```
4 changes: 2 additions & 2 deletions docs/guides/SimpleStartupGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ You must have administrator (sudo) privileges to execute the user guide commands

## Tested Devices
The following devices have been tested with EdgeX USB Camera Device Service:
> Note: Results may vary based on camera hardware/firmware version and operating system support.
> **NOTE:** Results may vary based on camera hardware/firmware version and operating system support.
<!-- sorted alphabetically -->
- AUKEY PC-LM1E Webcam
- HP w200 Webcam
Expand Down Expand Up @@ -72,7 +72,7 @@ The table below lists command line tools this guide uses to help with EdgeX conf

>Table 1: Command Line Tools
## Get the Source Code
> Note: This guide uses a assumes a working directory of `~/edgex`. The commands below will need to be updated if that is not the desired working directory.
> **NOTE:** This guide uses a assumes a working directory of `~/edgex`. The commands below will need to be updated if that is not the desired working directory.
### Download EdgeX Compose Repository

1. Create a directory for the EdgeX compose repository:
Expand Down
18 changes: 11 additions & 7 deletions docs/setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ Install the build, media streaming, and parsing tools:
sudo apt install build-essential jq curl
```

NOTE: The device service ONLY works on Linux with kernel v5.10 or higher.
>**NOTE:** The device service ONLY works on Linux with kernel v5.10 or higher.


Expand Down Expand Up @@ -117,6 +117,11 @@ The table below lists command line tools this guide uses to help with EdgeX conf
git clone https://github.com/edgexfoundry/edgex-compose.git
```

4. Checkout the stable `levski` branch
```bash
git checkout levski
```


## Get the Device USB Camera Source Code

Expand All @@ -126,17 +131,16 @@ The table below lists command line tools this guide uses to help with EdgeX conf
```

2. Clone the device-usb-camera repository:

```bash
git clone https://github.com/edgexfoundry/device-usb-camera.git
```

3. Checkout the stable `levski` branch
```bash
git checkout levski
```

## Next Steps
[General Usage](./general-usage.md)
[Device Discovery](./discovery.md)
[Advanced Options](./advanced-options.md)

## Next Steps
For a full walkthrough of using the default images, use this [guide.](./guides/SimpleStartupGuide.md)

For a full walkthrough of building custom images, use this [guide.](./guides/CustomStartupGuide.md)
Expand Down

0 comments on commit 16af8f3

Please sign in to comment.