-
Notifications
You must be signed in to change notification settings - Fork 45
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
JT edits pt 2 #3776
JT edits pt 2 #3776
Changes from 3 commits
e57cb6e
34f64b5
0a90ad6
8a2e840
b2a7b6b
eb99352
e8fdbd6
da38ae0
f2fa90a
01c15cb
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -8,11 +8,39 @@ no_list: true | |
description: "Install the software that drives hardware and connects your device to the cloud." | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. set no list to false. I think we should go from here to the next page with the navigation at the end of the page |
||
--- | ||
|
||
Get started by installing the open-source software that drives your hardware and connects your device to the cloud. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This page looks good. I think there are at least two more things that need covering - the platform requirements and the operating system installation that links to all of the pages in prepare |
||
The easiest way to do this is through the Viam app, so that your machines are automatically connected to configuration and remote operation tools. | ||
|
||
## Quickstart | ||
|
||
1. Create a [Viam app](https://app.viam.com) account. | ||
The Viam app is the online hub for configuring and managing devices as well as viewing data. | ||
1. Add a new _{{< glossary_tooltip term_id="machine" text="machine" >}}_ in the app. | ||
A machine represents your device. | ||
1. From the machine page, follow the setup instructions to install `viam-server` on your device and connect it to the cloud. | ||
1. From your machine's page in the Viam app, follow the setup instructions to install `viam-server` on your device and connect it to the cloud. | ||
`viam-server` is the executable binary that runs on your device and manages hardware drivers, software, and data capture and sync. | ||
Comment on lines
+20
to
21
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. All of this is viam-server specific and I think it shouldn't be. We don't cover the micro-rdk anywhere so this needs to be agnostic. Also we need to tell people to use the viam-agent install method I think. Or this needs to go in the content of this page somewhere There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm adding mention of viam-micro-server--see how you like the latest |
||
1. Use the **+** button on your machine's **CONFIGURE** tab to add [supported hardware components](/operate/get-started/supported-hardware/) so that `viam-server` can control your specific hardware. | ||
1. Use this same **+** button to configure software services such as [data capture and sync](/data-ai/capture-data/capture-sync/). | ||
|
||
As soon as you configure each component and save the configuration, you can use the **TEST** panel of the component's config card to, for example, view your camera's stream or turn your motor. | ||
|
||
## Concepts | ||
|
||
### What is a machine? | ||
|
||
A _machine_ is a computer (often a single-board computer like a Raspberry Pi or Jetson) or microcontroller and all the hardware attached to it, as well as the software running on it. | ||
You can think of one machine as representing one device, or one robot. | ||
|
||
When you create a new machine in the Viam app, Viam generates a unique set of credentials for that machine that connect the physical machine to its instance in the Viam app. | ||
|
||
### How the configuration works | ||
|
||
The machine setup steps displayed in the Viam app copy your machine's credentials to your machine. | ||
When you turn on your machine, `viam-server` starts up and uses the provided credentials to fetch its configuration from the Viam app. | ||
Once the machine has a configuration, it caches it locally and can use the config for up to 60 days. | ||
Since the configuration is cached locally, your machine does not need to stay connected to the Viam app after it has obtained its configuration file. | ||
|
||
If it is online, the machine checks for new configurations every 15 seconds and changes its config automatically when a new config is available. | ||
All communication happens securely over HTTPS using secret tokens that are in the machine's config. | ||
|
||
If your machine will never connect to the internet, you can also create a [local configuration file](/operate/reference/local-configuration-file/) on the machine itself. |
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think the expanders for the different architectures are bad. It makes the searching UI hard to find when that is the main thing you're here for. The same pattern as on Move a gantry - you're hiding the main content of the page. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It's also weird to add two styles of expanders on the same page. The first one with the software-only functionality is more of an edge case that should be covered on the page but probably not at the top of the page There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I used the small style details because indeed it's an edge case and the normal expanders are massive and eye catching. I felt like it fit better there though than later on the page--will have a second think about this. |
Original file line number | Diff line number | Diff line change | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
@@ -85,6 +85,25 @@ After installing `viam-server` or `viam-micro-server` on your computer or microc | |||||||||||||
|
||||||||||||||
For details on configuring versioning and environment variables for modules, see [Modular Resource and Module Configuration Details](/operate/reference/module-configuration/). | ||||||||||||||
|
||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Maybe right before this there's a |
||||||||||||||
## Add software services to your machine | ||||||||||||||
|
||||||||||||||
In addition to hardware driver _{{< glossary_tooltip term_id="component" text="components" >}}_ and abstracted "virtual hardware" components, Viam offers _{{< glossary_tooltip term_id="service" text="services" >}}_ to provide higher-level software capabilities. | ||||||||||||||
You can read more about the Viam-maintained services and how to configure them in their respective documentation: | ||||||||||||||
|
||||||||||||||
- [Data capture and sync](/data-ai/capture-data/capture-sync/) | ||||||||||||||
- [ML model deployment](/data-ai/ai/deploy/) | ||||||||||||||
- [Computer vision](/data-ai/ai/run-inference/) | ||||||||||||||
- Motion planning for various components: | ||||||||||||||
- [Robot arm motion](/operate/mobility/move-arm/) | ||||||||||||||
- [Mobile robot navigation](/operate/mobility/move-base/) | ||||||||||||||
|
||||||||||||||
To add a service to your machine: | ||||||||||||||
|
||||||||||||||
1. Click the **+** button on your machine's **CONFIGURE** tab. | ||||||||||||||
1. Click **Service**, then select from available services. | ||||||||||||||
The dropdown list includes services from the Viam Registry as well as the built-in services. | ||||||||||||||
1. Add required attributes according to the README or other documentation. | ||||||||||||||
Comment on lines
+98
to
+103
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Can we leave that to the respective documentation?
Suggested change
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. For built-in services I could see this, but what about modular services that don't fall under any of the other service realms? Just don't worry about it since those are edge cases by advanced users? |
||||||||||||||
|
||||||||||||||
## How modules run | ||||||||||||||
|
||||||||||||||
Modules run alongside [`viam-server`](/architecture/viam-server/) as separate processes, communicating with `viam-server` over UNIX sockets. | ||||||||||||||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
note: some of these steps aren't necessary if someone selected cloudbuild=yes in the generator wizard
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Which ones are or aren't necessary?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems based on my local testing that none of these are necessary, but that before testing locally I do need to have them run first
sh run.sh
and thensh build.sh
. Are any of these necessary for cloud build though @abe-winter ?