diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/add-tag.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/add-tag.png index 09f664182b..8b1bd9677c 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/add-tag.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/add-tag.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/cloud-add-on.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/cloud-add-on.png index 2b17469155..6530ff251d 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/cloud-add-on.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/cloud-add-on.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/create-new-space.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/create-new-space.png index 33f05a45d0..e75588ebaf 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/create-new-space.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/create-new-space.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/create-thing.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/create-thing.png index 0c349dd37f..91350b6eee 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/create-thing.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/create-thing.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/dashboard-example.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/dashboard-example.png index caf91ab32a..00536e9348 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/dashboard-example.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/dashboard-example.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/dashboard-sharing.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/dashboard-sharing.png index d9af168d35..f49508dcfe 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/dashboard-sharing.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/dashboard-sharing.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/device-detail-information.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/device-detail-information.png new file mode 100644 index 0000000000..e766755887 Binary files /dev/null and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/device-detail-information.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/device-name-configuration.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/device-name-configuration.png index 555401ac8d..1068d23498 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/device-name-configuration.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/device-name-configuration.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/device-onboarding.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/device-onboarding.png index 08291e63b4..b96fcfc335 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/device-onboarding.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/device-onboarding.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/devices-list-page.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/devices-list-page.png new file mode 100644 index 0000000000..9722bf9e08 Binary files /dev/null and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/devices-list-page.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/devices-list.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/devices-list.png index b231fe4df7..2597b99b4d 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/devices-list.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/devices-list.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/download-button.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/download-button.png index 746d812686..df58da6ff5 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/download-button.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/download-button.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/download-data.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/download-data.png index ec769930ab..2427b63b6d 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/download-data.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/download-data.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/email-data.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/email-data.png index 7c968b1aaa..aee437ca3f 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/email-data.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/email-data.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/get-data.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/get-data.png index b7bc035d72..881b42e96e 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/get-data.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/get-data.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/iot-cloud-button.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/iot-cloud-button.png index 8dbc09959d..f18f6633c8 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/iot-cloud-button.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/iot-cloud-button.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/members-home.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/members-home.png index a8a27d163f..547a2bc5f1 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/members-home.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/members-home.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/new-member-invitation.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/new-member-invitation.png index 44418273e8..e6c03f422c 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/new-member-invitation.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/new-member-invitation.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/new-tag-filtering.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/new-tag-filtering.png index 5dda3896d3..9aff28c5c6 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/new-tag-filtering.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/new-tag-filtering.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/portenta-found.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/portenta-found.png index 99ad40a296..3476dd8b03 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/portenta-found.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/portenta-found.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/provisioning-success.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/provisioning-success.png index ca8bbb5775..c60dc76791 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/provisioning-success.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/provisioning-success.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/search-things.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/search-things.png index 7181c79a6a..ad26ae0c11 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/search-things.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/search-things.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/shared-space-settings.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/shared-space-settings.png index c0e07cf960..2076fb087d 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/shared-space-settings.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/shared-space-settings.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/sketch-full-editor.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/sketch-full-editor.png new file mode 100644 index 0000000000..5efd6da3bc Binary files /dev/null and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/sketch-full-editor.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/switch-spaces-multiple-option.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/switch-spaces-multiple-option.png new file mode 100644 index 0000000000..7d8257ab76 Binary files /dev/null and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/switch-spaces-multiple-option.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/switch-spaces-multiple.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/switch-spaces-multiple.png new file mode 100644 index 0000000000..e7a60bc3fa Binary files /dev/null and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/switch-spaces-multiple.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/switch-spaces.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/switch-spaces.png index b9c31900aa..9eb9c405d6 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/switch-spaces.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/switch-spaces.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/thing-metadata.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/thing-metadata.png index 3e3a4f2062..2411ddb8ac 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/thing-metadata.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/thing-metadata.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/web-editor-button.png b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/web-editor-button.png index e643cde9d9..56f6484061 100644 Binary files a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/web-editor-button.png and b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/assets/web-editor-button.png differ diff --git a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/contend.md b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/contend.md index 679d3aa739..555d0ce7e4 100644 --- a/content/arduino-cloud/09.business/09.arduino-cloud-for-business/contend.md +++ b/content/arduino-cloud/09.business/09.arduino-cloud-for-business/contend.md @@ -41,6 +41,7 @@ In order to get started with Arduino Cloud for Business, you need to [subscribe The Arduino Cloud for Business plan consists of two main subscriptions: * **Enterprise Base Plan.** It includes all the Arduino Cloud for Business features, like data plane, fleet management, Role-Based-Access-Control, Web Editor with Over-the-air updates, IoT Cloud with dashboards, etc. Multiples of 50 devices can be connected under the Enterprise Base Plan – and you can always [contact our team](https://www.arduino.cc/pro/contact-us) for a tailored plan to accelerate your IoT solutions. + * **Optional Add-Ons.** To address additional needs, Arduino Cloud for Business can be customized with optional add-ons. Check the [dedicated section](#optional-add-ons) of this tutorial to learn more. If you do not need any tailored plan, go to [Arduino Cloud for Business page](https://cloud.arduino.cc/plans#business) and select **Purchase**. You will be then asked to log in with your Arduino credentials. If you do not have an account yet, feel free to create a new one. @@ -63,57 +64,61 @@ Check the next sections to understand how to set up your account and which featu ## Manage Your Spaces -Once your plan has been successfully activated, you will be asked to define the company/space name for your workspace. You are free to modify it later by navigating to `Arduino Cloud > General Settings > Space information > Edit info > Name`. +Once your plan has been successfully activated, you will be asked to define the company/space name for your workspace. You are free to modify it later by navigating to `Arduino Cloud > Space Settings > General` and clicking on `Edit Info` within the three dots located at the top right side. ![Create new shared space](assets/create-new-space.png "Create new shared space") Your Arduino Cloud for Business plan comes with two spaces by default: * **My Cloud**. My Cloud is an automatically created private space once the Arduino Cloud for Business plan is purchased. You can use this space for personal projects you do not want to share with all your team. This space is free and includes two Things, unlimited dashboards, and 100MB of Sketch storage by default, but it can be further extended and customized within *My plans* settings. Have a look at the [Arduino IT Cloud Getting Started](https://docs.arduino.cc/arduino-cloud/guides/overview) if you would like to start using your private space. + * **Shared Space**. A *Shared Space* is a company space you can use with all your team. It can have any number of members, who can all access the resources within its space. The access level and specific permissions can be customized by the *Space Admin* (see [Invite members into your space section](#invite-members-into-your-space) to learn more). In the next sections, you will learn more about Shared Space features and functionalities. ### Switch Between Spaces -If you are the owner of more than one Shared Space, or you have been invited into a Shared Space by another user, you can switch to other Shared Spaces at any time using the corresponding menu. +If you are the owner of more than one Shared Space or have been invited into a Shared Space by another user, you can switch to other Shared Spaces at any time using the corresponding menu. -Move your mouse over the Space-Selector, which you can find at the top right-hand corner, and click on it. All the Spaces you have access to will be listed there. +Move your mouse over the account button, which you can find at the top left-hand corner, and click on it. All the Spaces you have access to will be listed there. ![Switch between Spaces](assets/switch-spaces.png "Switch between Spaces") -The Space-Selector shows you at any time which Space you are currently working on, in this case, *Arduino PRO*. To switch to another Space, simply select the Space you would like to work on. +If you have four shared spaces or more, it will show you a button named **Switch space**. -### Change Shared Space Settings +![Switch Space Selector](assets/switch-spaces-multiple-option.png "Switch Space Selector") -To change the current settings of your Shared Space, navigate to the **General Settings** tab using the sidebar. +Clicking on the **Switch space** option will display all your spaces within the account. -![Shared Space settings](assets/shared-space-settings.png "Shared space settings") +![Multiple Spaces](assets/switch-spaces-multiple.png "Multiple Spaces") -There you will find multiple options to customize your Shared Space, including: +The Space-Selector shows you which space you are currently working on at any time, in this case, *Test*. To switch to another Space, select the space you would like to work on. -* Editing the Space name -* Assigning your custom logo +### Change Shared Space Settings -### Create Additional Spaces +To change the current settings of your Shared Space, navigate to the **Space Settings** tab using the sidebar. -The Arduino Cloud for Business plan allows you to create and manage one Shared Space and one Private Space. If you need additional Spaces, you have to purchase a new Arduino Cloud plan. Check the available plans [here](https://cloud.arduino.cc/plans). +![Shared Space settings](assets/shared-space-settings.png "Shared space settings") -In order to create a new Shared Space, click on **New Shared Space** in the Space-Selector. +There, you will find multiple options to customize your Shared Space: -![Switch between Spaces](assets/switch-spaces.png "Switch between Spaces") +* **General** tab to view shared space information and to edit space name +* **Custom Branding** to assign custom logo +* **Manage Members** for space member management +* **Roles & Permissions** for Role-Based-Access-Control management +* **Plan Usage** to view features usage -Then you will be asked which type of Shared Space you want to create (i.e. For Business or For Education). Click on the type of your interest and proceed with purchasing a new plan. +### Create Additional Spaces -![Shared Space type selection](assets/shared-space-type-selection.png "Shared Space Type Selection") +The Arduino Cloud for Business plan allows you to create and manage one Shared Space and one Private Space. If you need additional Spaces, you have to purchase a new Arduino Cloud plan. Check the available plans [here](https://cloud.arduino.cc/plans). ### Invite Members Into Your Space -To add more members to your Shared Space, use the sidebar to navigate to the **Members** item under **Your space** group. +To add more members to your Shared Space, use the sidebar to navigate to the **Manage Members** item under **Space Settings**. ![List of Shared Space Members](assets/members-home.png "List of Shared Space Members") -There you will find the complete list of all members who have access to your Shared Space, as well as the current role of each member. +There you will find the complete list of all members who have access to your Shared Space, as well as the role of each member. #### Members Types @@ -123,27 +128,46 @@ By default the member who has activated the plan and created the workspace is se The table below reports the list of supported roles and corresponding permissions. -| | Admin | Editor | Service Account | -|-------------------------------------------|-------|---------|-----------------| -| **Create/edit/delete Things** | X | X | | -| **View Things** | X | X | | -| **Add/edit/delete Devices** | X | X | | -| **View Devices** | X | X | | -| **Create/edit/delete Dashboards/Widgets** | X | X | | -| **View Dashboards** | X | X | | -| **Widget Interaction** | X | X | | -| **Download Historical Data** | X | X | | -| **Add/remove Members** | X | X \[1\] | | -| **Manage billing** | X | | | -| **Create/edit/delete API keys** | | | X | - -\[1\] It can add/remove only Editors. +| **Things** | **Admin** | **Editor** | **Service Account** | +|-----------------------------------|-----------|------------|---------------------| +| Create/edit/delete things | X | X | | +| Create/edit/delete variables | X | X | | +| Create/edit/delete webhooks (API) | | | X | +| View Things | X | X | | +| Edit sketches | X | X \[1\] | | +| Change associated devices | X | X | | +| Change network | X | X \[2\] | | + +| **Dashboards** | **Admin** | **Editor** | **Service Account** | +|-------------------------------|-----------|------------|---------------------| +| Create/edit/delete dashboards | X | X | | +| Create/edit/delete widgets | X | X | | +| View dashboards | X | X | | +| Widgets interaction | X | X | | +| Download historic data | X | X | | + +| **Devices** | **Admin** | **Editor** | **Service Account** | +|-------------------------|-----------|------------|---------------------| +| Add/edit/delete devices | X | X | | +| View devices | X | X | | + +| **Members Management** | **Admin** | **Editor** | **Service Account** | +|-----------------------------|-----------|------------|---------------------| +| Add members to organization | X | | | +| Assign members’ roles | X | | | + +| **Plan Management** | **Admin** | **Editor** | **Service Account** | +|---------------------|-----------|------------|---------------------| +| Payment | X | | | + +\[1\] It can add/remove only Sketch owner. +\[2\] It can add/remove only Thing owner. In addition to editor role, we added a Service Account, which should be one dedicated to the creation and maintenance of API Keys Tokens. We recommend having at least one Service Account for each Shared Space and linking it to a non-personal email account. In this way, API Keys do not risk getting lost with the cancellation of a personal email address. #### Add A New Member -To add a new member, click on **Add member** in the top right-hand corner. +To add a new member, click on **ADD MEMBERS** in the top right-hand corner. ![Add a new member](assets/members-home.png "Add a new member") @@ -151,7 +175,8 @@ The following page will appear to allow you to send an email invitation to all t ![New member invitation](assets/new-member-invitation.png "New member invitation") -Type the email addresses of all your team and define which role they will cover in your Space based on the available options. Click on **Invite**. +Type the email addresses of all your team and define which role they will cover in your Space based on the available options. Click on **INVITE**. + The users you added will get the invitation by email with a link to join your Shared Space. You are now ready to start working all together on your Arduino Cloud projects. ## Device Management @@ -169,6 +194,7 @@ To check the full list of compatible Hardware, have a look at [this tutorial](ht Arduino Cloud allows you to securely provision your devices through two different tools: * **Arduino Cloud.** Arduino Cloud is an App integrated into your Arduino Cloud Space, guaranteeing straightforward provisioning of Arduino or other Cloud-compatible devices. It is provided with a dedicated User Interface which will guide you step-by-step during the onboarding process. This is a great choice in case you need to provision a few devices or you are not an advanced user. + * **Arduino Cloud CLI.** As explained in [this section](#arduino-cloud-cli), Arduino has developed a command line tool enabling the access of all Arduino Cloud features from a terminal window. Arduino Cloud CLI is the right choice when you need to provision multiple devices at the same time and you are an advanced user. #### Device Provisioning With Arduino Cloud @@ -177,23 +203,27 @@ If your device is compatible with Arduino Cloud, you can start provisioning it i In addition, Arduino Cloud requires your computer to have the [Arduino Create Agent installed](https://create.arduino.cc/getting-started/plugin/welcome). -When you are all set up correctly, you can click on **Arduino Cloud** button in your Shared Space. +Let's begin by relocating to your Shared Space when you are all set up correctly. ![Arduino Cloud button](assets/iot-cloud-button.png "Arduino Cloud button") -Go to the **Devices** tab, click on **Add** and decide which type of device you would like to onboard. In this case, a Portenta H7 board will be used. +Go to the **Devices** item within the sidebar, where it will list all the added devices. Since no devices have been added yet, it will show the option to add a device as the main option on the page. + +![Devices page](assets/devices-list-page.png "Devices page") + +click on **ADD DEVICE** and decide which type of device you would like to onboard. In this case, a Portenta H7 board will be used. ![Device selection](assets/device-onboarding.png "Device selection") -The agent will start looking for your board. When your board has been found, the following screen will appear. Click on **Configure**. +The agent will start looking for your board. When your board has been found, the following screen will appear. Click on **CONFIGURE**. ![Device configuration during provisioning](assets/portenta-found.png "Device configuration during provisioning") -Select a board name to be able to correctly identify your device and click on **Next**. +Select a board name to be able to correctly identify your device and click on **NEXT**. ![Device name configuration](assets/device-name-configuration.png "Device name configuration") -Define the connection type you want to use with your board and click on **Next.** The agent will start securely provisioning your device by leveraging the secure element embedded in your board. This way, your security keys will be stored in the secure element and full data encryption will be guaranteed during data exchanges between Arduino devices and the Cloud. +Define the connection type you want to use with your board and click on **NEXT**. The agent will start securely provisioning your device by leveraging the secure element embedded in your board. This way, your security keys will be stored in the secure element and full data encryption will be guaranteed during data exchanges between Arduino devices and the Cloud. ***If you want to learn more about security in Arduino Cloud, please check the [dedicated documentation](https://docs.arduino.cc/arduino-cloud/features/security-considerations).*** @@ -201,17 +231,15 @@ If the onboarding proceeds as expected, the following page will appear confirmin ![Successful provisioning](assets/provisioning-success.png "Successful provisioning") -You can now check its status under the Devices section. This section displays the name, status, and linked Things for each of the configured devices. Clicking on the device allows for renaming it, as well as accessing more information about the device, such as its ID number, type, FQBN, serial number, firmware version, linked Thing, latest activity, and the date when the device was added. +You can now check its status under the Devices section. This section displays the name, status, and linked Things for each of the configured devices. Clicking on the device allows for renaming it, as well as accessing more information about the device, such as its ID number, type, FQBN, firmware version, associated Thing, latest activity, and the date when the device was added. The device status indicates whether it is connected to the Arduino Cloud (online), or not connected (offline). ![List of devices in your Arduino Cloud](assets/devices-list.png "List of devices in your Arduino Cloud") -#### Device Provisioning With Arduino Cloud CLI +If you click on the added device, it is possible to look into its details. The details can be its device properties, device status history, and device Over-The-Air updates. -If you need to provision more than one device at a time or you prefer to work through your terminal window, we have the right tool for you: [Arduino Cloud CLI](https://github.com/arduino/arduino-cloud-cli). - -To proceed with the onboarding, check [this tutorial](https://docs.arduino.cc/arduino-cloud/getting-started/arduino-cloud-cli). It will explain to you all the required steps to provision your board through your terminal. +![Device detail](assets/device-detail-information.png "Device detail") ### Assign A Thing To Your Device @@ -219,7 +247,7 @@ As already said, once a device is successfully configured, it appears in the "De To use your devices in IoT Cloud, you need to associate a Thing with each of them. A Thing is the digital twin of your device, holding the configuration of some variables and other settings, as well as the history of the data collected for those variables. -To create a Thing, click on **Create Thing** next to the device of your interest, and your Thing will be automatically created for you. At this point, you can start updating it. +To create a Thing, click on **CREATE THING** found within **Things** page accessed via the Shared Space sidebar. ![Create a new Thing](assets/create-thing.png "Create a new Thing") @@ -231,16 +259,20 @@ To create a Thing, click on **Create Thing** next to the device of your interest It is now time to start uploading sketches on your devices. -The Arduino Cloud has a feature capable of creating some pre-built sections of the sketch related to a Thing, including some libraries necessary to interact with the Cloud variables, as well as directly populating and updating the sketch once the new Cloud variables are created and defined. +The Arduino Cloud has a feature capable of creating some pre-built sections of the sketch related to a Thing, including some libraries necessary to interact with the cloud variables, as well as directly populating and updating the sketch once the new cloud variables are created and defined. + +The sketch related to the thing is visible from the tab "Sketch" next to the "Setup" view, where the Thing's list of cloud variables is shown. -The sketch related to the thing is visible from the tab "Sketch" next to the "Setup" view, where the Thing's list of Cloud variables is shown. +![Web Editor - Full Editor](assets/sketch-full-editor.png "Get started with the Web Editor") -From this sketch view, by clicking the "Open full editor button", it is fast and smooth to access the Arduino Cloud integrated [Web Editor](https://docs.arduino.cc/learn/starting-guide/the-arduino-web-editor), which allows you to program your boards from any browser and use the latest Arduino IDE features and libraries without having to install any software locally. +From this sketch view, by clicking the **Open full editor**, it is fast and smooth to access the Arduino Cloud integrated [Web Editor](https://docs.arduino.cc/learn/starting-guide/the-arduino-web-editor), which allows you to program your boards from any browser and use the latest Arduino IDE features and libraries without having to install any software locally. -Otherwise, to open the Web Editor to directly retrieve your sketches, go to Arduino Cloud Home and click on the [Web Editor](https://create.arduino.cc/editor) button. +Otherwise, to open the Web Editor to retrieve your sketches directly, go to Arduino Cloud Home and click on the [New Sketch File](https://create.arduino.cc/editor) button. ![Get started with the Web Editor](assets/web-editor-button.png "Get started with the Web Editor") +It can also be accessed directly by navigating to **Sketches** within the Shared Space sidebar. It will list all the available developed sketches. Clicking on one of the sketches will directly take you to the [Web Editor](https://docs.arduino.cc/learn/starting-guide/the-arduino-web-editor). + ***To get started with the Web Editor, check the dedicated tutorial at [this link](https://docs.arduino.cc/arduino-cloud/getting-started/getting-started-web-editor). However, if you have already developed your sketch and you would like to import it into the Web Editor, see the corresponding documentation [here](https://docs.arduino.cc/arduino-cloud/tutorials/import-your-sketchbook-and-libraries-to-the-web-editor)*** All the created sketches are individual and owned by the user that created them. Other members of the Shared Space can access your sketch in their Web Editor only if you share it with them. If you would like to do so, have a look at [this tutorial](https://docs.arduino.cc/arduino-cloud/tutorials/share-your-sketches) on how to do it. @@ -263,9 +295,9 @@ Get started with this awesome feature by going to **Things** or **Devices** tab If you want to create your tag, which you can use as a filtering option, go to **Things** tab, click on the Thing you would like to tag and go to the Metadata tab as shown in the figure below. -![Thing metadata](assets/thing-metadata.png "Thing metadata"). +![Thing metadata](assets/thing-metadata.png "Thing metadata") -Click on **Add**. You will be asked to customize your tag through two fields: +Click on **ADD**. You will be asked to customize your tag through two fields: * **Key**. The Key is the filter name which you will see among the list of available filtering options. E.g. Location. * **Value**. The Value corresponds to the specific value your tag has for that specific Thing. E.g. Rome. @@ -308,11 +340,11 @@ To start exporting your data locally, navigate into one of your dashboards on th From here you can select all the variables you want to download by checking the boxes as well as the time frame you are interested in. -When you have selected the data, click on the **Select Data Source** button. +When you have selected the data, click on the **SELECT DATA SOURCE** button. ![Export your data](assets/download-data.png "Exporte your data") -At this point, click on **Get data** to receive your data by email. +At this point, click on **GET DATA** to receive your data by email. ![Get your data](assets/get-data.png "Get your data") @@ -362,14 +394,16 @@ These are the main features of Arduino Cloud CLI: Arduino Cloud for Business can be customized with optional add-ons: -* **Portenta X8 Manager** +* **Portenta X8 Board Manager** * **Machine Learning Tools Enterprise** +These add-ons are located under **Integrations** page, found within the Shared Space sidebar. + ![Arduino Cloud Homepage with Add-ons](assets/cloud-add-on.png "Arduino Cloud Homepage with Add-ons") To get started with them, it is sufficient to click on the corresponding tab. -### Portenta X8 Manager +### Portenta X8 Board Manager Securely maintain Portenta X8 Linux distribution with this dedicated add-on, powered by [Foundries.io](https://foundries.io/). Deploy and update all your applications packaged into containers and perform secure Over-The-Air differential updates to target Portenta X8 devices/fleets. diff --git a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-13.png b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-13.png index ba92ea44db..d564bd23bc 100644 Binary files a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-13.png and b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-13.png differ diff --git a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-14.png b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-14.png index d2546d05a4..43f4917635 100644 Binary files a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-14.png and b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-14.png differ diff --git a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-15.png b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-15.png index 197fcc08b8..82716b0141 100644 Binary files a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-15.png and b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-15.png differ diff --git a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-16.png b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-16.png index a07e71e6b4..dedfd2af45 100644 Binary files a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-16.png and b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-16.png differ diff --git a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-17.png b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-17.png index f10611fa3c..56f150ec70 100644 Binary files a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-17.png and b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-17.png differ diff --git a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-18.png b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-18.png index f53e4c43d1..b19e7d4f58 100644 Binary files a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-18.png and b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-18.png differ diff --git a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-19.png b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-19.png index 36734100dd..1fb576378b 100644 Binary files a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-19.png and b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-19.png differ diff --git a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-20.png b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-20.png index f521d43b96..606b5e1b89 100644 Binary files a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-20.png and b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-20.png differ diff --git a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-21.png b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-21.png index 3849787832..f2b5c52837 100644 Binary files a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-21.png and b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-21.png differ diff --git a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-22.png b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-22.png index 59b36fb889..1f839d7c03 100644 Binary files a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-22.png and b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/assets/user-manual-22.png differ diff --git a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/content.md b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/content.md index b70cfac986..b5d22c6a8b 100644 --- a/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/content.md +++ b/content/hardware/04.pro/boards/portenta-c33/tutorials/user-manual/content.md @@ -1492,20 +1492,20 @@ Once the Portenta C33 has been configured, let's create a "Thing" to test the co Navigate into **Associate Device** and click the **Select Device** button. Select your Portenta C33 board and associate it with your "Thing." Then, navigate into **Network** and click the **Configure** button; enter your network credentials. -The project is now ready to add some variables to your "Thing"; navigate into **Cloud Variables** and click the **ADD VARIABLE** button. +The project is now ready to add some variables to your "Thing"; navigate into **Cloud Variables** and click the **ADD** button to add variable. ![Add variable button](assets/user-manual-19.png) Add one variable with the following characteristics: - **Name**: `led` -- **Variable type**: `boolean` +- **Variable type**: `Boolean` - **Variable permission** `Read & Write` - **Variable update policy**: `On change` ![Arduino Cloud "Thing" variable setup](assets/user-manual-21.png) -You should see the `led` variable in the **Cloud Variables** section. Navigate into **Dashboards** and select the **BUILD DASHBOARD** button; create a new dashboard and give your dashboard a name. +You should see the `led` variable in the **Cloud Variables** section. Navigate into **Dashboards** and select the **CREATE DASHBOARD** button; create a new dashboard and give your dashboard a name. Add the following widgets to your dashboard: diff --git a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/cloud_dashboard_working.png b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/cloud_dashboard_working.png index 2e9dbf12bb..5b47d71262 100644 Binary files a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/cloud_dashboard_working.png and b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/cloud_dashboard_working.png differ diff --git a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/cloud_thing_created.png b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/cloud_thing_created.png index 7484b771dd..b995588440 100644 Binary files a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/cloud_thing_created.png and b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/cloud_thing_created.png differ diff --git a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/shared-space-settings.png b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/shared-space-settings.png index 5a18fb0a96..8be4fccaa4 100644 Binary files a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/shared-space-settings.png and b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/shared-space-settings.png differ diff --git a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_board_manager_cloud_integration.png b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_board_manager_cloud_integration.png index 2759026074..1379df3128 100644 Binary files a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_board_manager_cloud_integration.png and b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_board_manager_cloud_integration.png differ diff --git a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_API_key.png b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_API_key.png index 122d5d829d..0bd0b8fd5f 100644 Binary files a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_API_key.png and b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_API_key.png differ diff --git a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_API_key_PDF.png b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_API_key_PDF.png index 2e8e0a3b8a..10754cd55c 100644 Binary files a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_API_key_PDF.png and b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_API_key_PDF.png differ diff --git a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_API_name.png b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_API_name.png index 4c83cae2d8..eae8ec76f3 100644 Binary files a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_API_name.png and b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_API_name.png differ diff --git a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_homepage.png b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_homepage.png index 787fedcaa2..5a24451021 100644 Binary files a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_homepage.png and b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_homepage.png differ diff --git a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_new_api.png b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_new_api.png index 17606c1ebf..7cdb9c630d 100644 Binary files a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_new_api.png and b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/assets/web_cloud_new_api.png differ diff --git a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/content.md b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/content.md index 81fb8b669d..cebdb85e39 100644 --- a/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/content.md +++ b/content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/content.md @@ -575,7 +575,7 @@ Sign in to your Arduino Cloud account by adding your credentials, i.e. Username/ ![Arduino Cloud Sign in](assets/web_cloud_signin.png "Arduino Cloud Sign in") -You are now logged into your Arduino Cloud space. Go on by clicking on **API keys** in the bottom left-hand corner. +You are now logged into your Arduino Cloud space. Go on by clicking on **API keys** found within the account banner located at the top right corner. ![Arduino Cloud Homepage](assets/web_cloud_homepage.png "Arduino Cloud Homepage") @@ -583,7 +583,7 @@ It is time to generate your API keys. Click on **CREATE API KEY** in the upper r ![Arduino Cloud New API Key](assets/web_cloud_new_api.png "Arduino Cloud New API Key") -Define a name for your API key, in this case *portenta-x8-test-API*, and click on **CONTINUE**. These API Keys are personal and visible just from your account. +Define a name for your API key, in this case *portenta-x8-test-API*, and click on **CREATE**. These API Keys are personal and visible just from your account. ![Arduino Cloud API Key name](assets/web_cloud_API_name.png "Arduino Cloud API Key name") @@ -605,7 +605,8 @@ If you are using an Arduino Cloud for Business account with Shared Spaces, you n ![Out-of-the-box successful Cloud provisioning](assets/OOTB_cloud_success.png "Out-of-the-box successful Cloud provisioning") -In order to recover the Organization ID of your Shared Space on Arduino Cloud for Business, open your Arduino Cloud homepage and navigate to **Settings > General Settings** in the sidebar on the left. +In order to recover the Organization ID, known as Space ID, of your Shared Space on Arduino Cloud for Business, open your Arduino Cloud homepage and navigate to **Space Settings > General** in the sidebar on the left. + ![Space ID on Cloud Settings](assets/shared-space-settings.png "Space ID on Cloud Settings") At this point, you can copy the **Space ID** of your Shared Space and paste it into your Out-of-the-box dashboard together with your API keys. @@ -641,7 +642,7 @@ Now you can start connecting your Portenta X8 to the Portenta X8 Board Manager. Check the Arduino Cloud for business plan with Portenta X8 Manager [here](https://cloud.arduino.cc/plans#business) and create your Arduino Cloud account in a couple of steps (see the dedicated documentation at [this link](https://docs.arduino.cc/arduino-cloud/)). -When your Arduino Cloud for business account is correctly set up, log into it [here](https://cloud.arduino.cc/home/) and click on **Portenta X8 Board Manager**. +When your Arduino Cloud for business account is correctly set up, log into it [here](https://cloud.arduino.cc/home/) and click on **Portenta X8 Board Manager**. The feature is located within the **Integrations** section of the Cloud. ![Arduino Cloud homepage with Portenta X8 Manager](assets/web_board_manager_cloud_integration.png "Arduino Cloud homepage with Portenta X8 Manager") diff --git a/content/hardware/06.nicla/boards/nicla-sense-me/tutorials/connecting-to-iot-cloud/assets/IoTCloud-thingSetup.png b/content/hardware/06.nicla/boards/nicla-sense-me/tutorials/connecting-to-iot-cloud/assets/IoTCloud-thingSetup.png index aba682182f..14cf7aeece 100644 Binary files a/content/hardware/06.nicla/boards/nicla-sense-me/tutorials/connecting-to-iot-cloud/assets/IoTCloud-thingSetup.png and b/content/hardware/06.nicla/boards/nicla-sense-me/tutorials/connecting-to-iot-cloud/assets/IoTCloud-thingSetup.png differ diff --git a/content/hardware/06.nicla/boards/nicla-sense-me/tutorials/connecting-to-iot-cloud/assets/IoTCloud-thingSketch.png b/content/hardware/06.nicla/boards/nicla-sense-me/tutorials/connecting-to-iot-cloud/assets/IoTCloud-thingSketch.png index 61e7f1cb0f..5f25877314 100644 Binary files a/content/hardware/06.nicla/boards/nicla-sense-me/tutorials/connecting-to-iot-cloud/assets/IoTCloud-thingSketch.png and b/content/hardware/06.nicla/boards/nicla-sense-me/tutorials/connecting-to-iot-cloud/assets/IoTCloud-thingSketch.png differ diff --git a/content/hardware/06.nicla/boards/nicla-sense-me/tutorials/connecting-to-iot-cloud/content.md b/content/hardware/06.nicla/boards/nicla-sense-me/tutorials/connecting-to-iot-cloud/content.md index e0cfa6ca39..b49c6adc06 100644 --- a/content/hardware/06.nicla/boards/nicla-sense-me/tutorials/connecting-to-iot-cloud/content.md +++ b/content/hardware/06.nicla/boards/nicla-sense-me/tutorials/connecting-to-iot-cloud/content.md @@ -167,7 +167,9 @@ void loop(){ } ``` -Upload the sketch from the **sketch tab** by clicking the second button at the top left of the left side of the sketch bar. Once it has been uploaded, you can see the temperature value just uploaded by going to your **Thing Setup** tab and looking at the last value of the **temperature** variable. You can also open the Serial Monitor to see your data live. +Upload the sketch from the **sketch tab** by clicking the second button at the top left side of the sketch bar. + +Once it has been uploaded, you can see the temperature value just uploaded by going to your **Thing Setup** tab and looking at the last value of the **temperature** variable. You can also open the Serial Monitor to see your data live. ![Arduino Cloud - Sketch tab](assets/IoTCloud-thingSketch.png) diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/energy-management-application-note/assets/arduino_iot_cloud_dashboard.png b/content/hardware/07.opta/opta-family/opta/tutorials/energy-management-application-note/assets/arduino_iot_cloud_dashboard.png index 10882af4aa..4d541bbb2b 100644 Binary files a/content/hardware/07.opta/opta-family/opta/tutorials/energy-management-application-note/assets/arduino_iot_cloud_dashboard.png and b/content/hardware/07.opta/opta-family/opta/tutorials/energy-management-application-note/assets/arduino_iot_cloud_dashboard.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/energy-management-application-note/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/energy-management-application-note/content.md index 7553f07e59..f83d117de0 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/energy-management-application-note/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/energy-management-application-note/content.md @@ -539,7 +539,9 @@ void modbus_line(){ } ``` -The header that includes the Arduino Cloud properties is outlined below. Be aware that this file comes from the Arduino Cloud platform, located within the sketch's workspace. It requires prior configuration of Opta™. Due to project specifications, these properties are subject to changes. +The header that includes the Arduino Cloud properties is outlined below. This file comes from the Arduino Cloud platform within the sketch's workspace. It requires prior configuration of Opta™. Due to project specifications, these properties are subject to changes. + +If Opta™ was configured to use Wi-Fi® connectivity as the network interface, the `thingProperties.h` header will resemble as follows. ```arduino // Code generated by Arduino Cloud, DO NOT EDIT. @@ -574,6 +576,41 @@ void initProperties(){ WiFiConnectionHandler ArduinoIoTPreferredConnection(SSID, PASS); ``` +If Opta™ was configured to use Ethernet as the network interface, the `thingProperties.h` header will resemble as follows. + +```arduino +#include +#include + +const char IP[] = SECRET_OPTIONAL_IP; +const char DNS[] = SECRET_OPTIONAL_DNS; +const char GATEWAY[] = SECRET_OPTIONAL_GATEWAY; +const char NETMASK[] = SECRET_OPTIONAL_NETMASK; + +void onUOperMarginChange(); +void onUWattChange(); +void onUWhConChange(); +void onDirectOverride1Change(); + +float uOperMargin; +float uWatt; +float uWhCon; +float uWhOpta; +bool directOverride1; + +void initProperties(){ + + ArduinoCloud.addProperty(uOperMargin, READWRITE, ON_CHANGE, onUOperMarginChange); + ArduinoCloud.addProperty(uWatt, READWRITE, ON_CHANGE, onUWattChange); + ArduinoCloud.addProperty(uWhCon, READWRITE, ON_CHANGE, onUWhConChange); + ArduinoCloud.addProperty(uWhOpta, READ, ON_CHANGE, NULL); + ArduinoCloud.addProperty(directOverride1, READWRITE, ON_CHANGE, onDirectOverride1Change); + +} + +EthernetConnectionHandler ArduinoIoTPreferredConnection(IP, DNS, GATEWAY, NETMASK); +``` + The header, automatically generated by Arduino Cloud based on the defined variables, is best left unedited. Any additions or deletions of variables should be handled directly within the Cloud environment. The above header is an illustrative example tailored to a demonstration script. This script can either be employed as-is or adjusted to meet different system requirements per your preference. diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/home-automation-application-note/assets/arduino-cloud-1.png b/content/hardware/07.opta/opta-family/opta/tutorials/home-automation-application-note/assets/arduino-cloud-1.png index 0e005c60cf..c0a8f0e577 100644 Binary files a/content/hardware/07.opta/opta-family/opta/tutorials/home-automation-application-note/assets/arduino-cloud-1.png and b/content/hardware/07.opta/opta-family/opta/tutorials/home-automation-application-note/assets/arduino-cloud-1.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/home-automation-application-note/assets/arduino-cloud-2.png b/content/hardware/07.opta/opta-family/opta/tutorials/home-automation-application-note/assets/arduino-cloud-2.png index 7991e84178..1cb9eb9038 100644 Binary files a/content/hardware/07.opta/opta-family/opta/tutorials/home-automation-application-note/assets/arduino-cloud-2.png and b/content/hardware/07.opta/opta-family/opta/tutorials/home-automation-application-note/assets/arduino-cloud-2.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/home-automation-application-note/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/home-automation-application-note/content.md index 98094e0f07..563143a94f 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/home-automation-application-note/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/home-automation-application-note/content.md @@ -23,11 +23,7 @@ hardware: The home automation systems allow to control electronic devices remotely and to perform automatic routines based on the user's programming preferences, making domestic environments more convenient, comfortable, and efficient, also optimizing energy costs. - - -Home automation applications allow, for example, smart lights management and HVAC control. -Thanks to its industrial IoT capabilities, Opta™️ is an excellent product for home automation applications. - +Home automation applications allow, for example, smart lights management and HVAC control. Thanks to its industrial IoT capabilities, Opta™️ is an excellent product for home automation applications. ![Opta™️ with Wi-Fi® connectivity support](assets/opta-device.png) @@ -35,9 +31,7 @@ Thanks to its industrial IoT capabilities, Opta™️ is an excellent product fo This application note shows a home automation system based on an Opta™️, capable of controlling a roller window shade, also known as roller blind, based on a programmed scenario. The application note's goals are to: - - Implement the roller window shade control (opening and closing) upon a programmed scenario - - Get inputs from limit switches included in the roller window shade's control system, for feedback and security reinforcement - Control and monitor the roller window shade via [Arduino Cloud](https://create.arduino.cc/iot/) @@ -76,7 +70,9 @@ The Opta™️ controls a DC motor via a driver using the digital output termina ### Application Overview -The first task of the program is to create the connection between the Opta™️ and the predefined Wi-Fi® network by the user in the Arduino Cloud; when the Wi-Fi® connection is established, the internal real-time clock (RTC) of the Opta™️ will be synced using a Network Time Protocol (NTP) server. Opta™️ RTC will be synced with the NTP server periodically (in this example, every 30 minutes) for security and reliability reasons. +The first task of the program is to create the connection between the Opta™️ and the predefined Wi-Fi® network by the user in the Arduino IoT Cloud; when the Wi-Fi® connection is established, the internal real-time clock (RTC) of the Opta™️ will be synced using a Network Time Protocol (NTP) server. + +Opta™️ RTC will be synced with the NTP server periodically (in this example, every 30 minutes) for security and reliability reasons. ***The NTP is a protocol used to synchronize the clocks of servers and clients across the Internet; it is intended to synchronize computers participating in the network within a few milliseconds of Coordinated Universal Time (UTC). You can read more about the NTP protocol [here](https://en.wikipedia.org/wiki/Network_Time_Protocol).*** @@ -85,7 +81,7 @@ After the RTC is synced, Opta™️ will be programmed for **opening** and **clo - The roller window shade will open automatically in the morning as the sun rises (e.g. 6:00 AM) and close in the evening (e.g. 6:00 PM) - The NO SPDT limit switches will provide Opta™️ a feedback for the sun shield's upper or lower end limit, triggering the motor's stop -### Example Sketch of the Application +### Example Sketch of the Application Hereafter the sketch explained. Note that **this code must be updated considering the proper parameters of your roller window shade and DC motor characteristics**. @@ -122,9 +118,10 @@ int programmed_minutes_2 = 0; ``` For Wi-Fi® connectivity, we will use [`WiFi`](https://www.arduino.cc/reference/en/libraries/wifi/) library. + For the connection to an NTP server and to retrieve time information from it, we will use [`NTPClient`](https://github.com/arduino-libraries/NTPClient). -We are going to use specific RTC management methods from Mbed™️ to handle the internal RTC of the Opta™️ microcontroller. More information regarding those methods can be found [here](https://os.mbed.com/docs/mbed-os/v6.15/mbed-os-api-doxy/mbed__mktime_8h_source.html). +We are going to use specific RTC management methods from Mbed™️ to handle the internal RTC of the Opta™️ microcontroller. More information regarding those methods can be found [here](https://os.mbed.com/docs/mbed-os/v6.15/mbed-os-api-doxy/mbed__mktime_8h_source.html). From the code shown above, there are two important lines: @@ -589,9 +586,11 @@ We will use a dashboard and widgets to modify the variables explained before. An In the dashboard shown above: -- `Value`-type widgets are used to show the current value of the `programmed_hour_1`, `programmed_hour_2`, `programmed_minutes_1`, and `programmed_minutes_2` variables. These widgets can also be used to modify the value of the linked variables. -- `LED`-type widget shows the current status of the `shade_state` variable, green when the shade is open and red when the shade is closed. -- `Push button` widgets are used to open or close the shade anytime. +- **`Value`**-type widgets are used to show the current value of the `programmed_hour_1`, `programmed_hour_2`, `programmed_minutes_1`, and `programmed_minutes_2` variables. These widgets can also be used to modify the value of the linked variables. + +- **`LED`**-type widget shows the current status of the `shade_state` variable, green when the shade is open and red when the shade is closed. + +- **`Push button`** widgets are used to open or close the shade anytime. The complete example sketch with the Arduino Cloud integration is shown below: @@ -642,7 +641,7 @@ void setup() { open_shade = false; close_shade = false; programmed_hour_1 = 6; - programmed_hour_1 = 18; + programmed_hour_2 = 18; programmed_minutes_1 = 0; programmed_minutes_2 = 0; diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/tank-level-app-note/assets/cloud_integration.png b/content/hardware/07.opta/opta-family/opta/tutorials/tank-level-app-note/assets/cloud_integration.png new file mode 100644 index 0000000000..8fdd85a4e4 Binary files /dev/null and b/content/hardware/07.opta/opta-family/opta/tutorials/tank-level-app-note/assets/cloud_integration.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/tank-level-app-note/assets/cloud_integration.svg b/content/hardware/07.opta/opta-family/opta/tutorials/tank-level-app-note/assets/cloud_integration.svg deleted file mode 100644 index 6ad52fdf75..0000000000 --- a/content/hardware/07.opta/opta-family/opta/tutorials/tank-level-app-note/assets/cloud_integration.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/tank-level-app-note/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/tank-level-app-note/content.md index bbc7dbfaf2..8c172f094e 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/tank-level-app-note/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/tank-level-app-note/content.md @@ -640,13 +640,49 @@ void modbus_line(){ Thanks to the Arduino Cloud, we can create a simple but useful dashboard to have a professional real-time Human-Computer Interaction (HCI) as it can be seen below: -![Arduino Cloud integration with the tanks](assets/cloud_integration.svg) +![Arduino Cloud integration with the tanks](assets/cloud_integration.png) Within Arduino Cloud's dashboard, the system status of both the tanks can be monitored and the remote actuation is implemented for both the Opta™ devices' managed tasks. Using this powerful tool, the actuators and emergency stop can be controlled remotely on-demand. The dashboard can also be used to make a simulation, even without the full exact hardware implementation of the application note. ## Full Tank Level Monitoring Example -The complete code for the Small and Big Tank's management implementation with Opta™ can be downloaded [here](assets/tank-level-monitoring-sketch.zip). It is important to know that for both, `thingProperties.h` is included with its respective variables and is generated automatically with Arduino Cloud. +The complete code for the Small and Big Tank's management implementation with Opta™ can be downloaded [here](assets/tank-level-monitoring-sketch.zip). It is important to know that for both, `thingProperties.h` is included with its respective variables and is generated automatically with Arduino Cloud. It also contains essential network interface settings, which in this case is configured using the Wi-Fi® network interface. + +The Arduino Cloud automatically generates a specialized header file customized to the configured network interface settings and defined variables. It is recommended to avoid manual edits to this file. Network interface settings or variables should be modified through the Arduino Cloud interface. + +Opta™ is set up with Wi-Fi® as the network interface for the present application note's example. Thus, the `thingProperties.h` file includes settings such as the network SSID and password. The highlighted elements of the code for this configuration are shown below: + +For example, in this application note, Opta™ uses Wi-Fi® as its network interface. As a result, the `thingProperties.h` header incorporates settings like the network SSID and password. Below are the elements of the code for this Wi-Fi® configuration: + +```arduino +//code generated by Arduino IoT Cloud, DO NOT EDIT. + +#include +#include + +const char SSID[] = SECRET_SSID; // Network SSID (name) +const char PASS[] = SECRET_OPTIONAL_PASS; // Network password (use for WPA, or use as key for WEP) + +... + +WiFiConnectionHandler ArduinoIoTPreferredConnection(SSID, PASS); +``` + +Should Opta™ need to be set up with an Ethernet connection, the `thingProperties.h` header would contain different parameters, such as _IP_, _DNS_, _Gateway_, and _Netmask_. The corresponding code highlight for an Ethernet setup would be updated to: + +```arduino +#include +#include + +const char IP[] = SECRET_OPTIONAL_IP; +const char DNS[] = SECRET_OPTIONAL_DNS; +const char GATEWAY[] = SECRET_OPTIONAL_GATEWAY; +const char NETMASK[] = SECRET_OPTIONAL_NETMASK; + +... + +EthernetConnectionHandler ArduinoIoTPreferredConnection(IP, DNS, GATEWAY, NETMASK); +``` ## Conclusion diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-26.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-26.png index a2a99a533f..a13e2ac1d3 100644 Binary files a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-26.png and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-26.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-27.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-27.png index 6345ad08d3..c7e697b6da 100644 Binary files a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-27.png and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-27.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-28.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-28.png index 82fdb14416..5dd8e1c0dc 100644 Binary files a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-28.png and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-28.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-29-alt.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-29-alt.png new file mode 100644 index 0000000000..27ce77b282 Binary files /dev/null and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-29-alt.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-29-eth.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-29-eth.png new file mode 100644 index 0000000000..55a0e69d89 Binary files /dev/null and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-29-eth.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-29.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-29.png index fe0dcd4549..da8d73e852 100644 Binary files a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-29.png and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-29.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-30.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-30.png index e15c1c3ef4..da1c705fea 100644 Binary files a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-30.png and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-30.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-31-alt.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-31-alt.png new file mode 100644 index 0000000000..d7d1455a88 Binary files /dev/null and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-31-alt.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-31-eth-alt.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-31-eth-alt.png new file mode 100644 index 0000000000..100189b6d0 Binary files /dev/null and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-31-eth-alt.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-31-eth.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-31-eth.png new file mode 100644 index 0000000000..3dc33831f7 Binary files /dev/null and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-31-eth.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-31.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-31.png index 514d038802..ae1acc8efc 100644 Binary files a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-31.png and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-31.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-32.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-32.png index 2a1eea1621..be46720e18 100644 Binary files a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-32.png and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-32.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-33.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-33.png index ed3783572e..c37dd262f7 100644 Binary files a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-33.png and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-33.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-34.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-34.png index 9a96b34f7c..31001a7ab5 100644 Binary files a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-34.png and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-34.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-35.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-35.png index ed1bae9b38..24e3fd6002 100644 Binary files a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-35.png and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-35.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-36.png b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-36.png index 4ecd26ce8f..5952580e9d 100644 Binary files a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-36.png and b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/assets/user-manual-36.png differ diff --git a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/content.md b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/content.md index 86aecfde9c..0176529cda 100644 --- a/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/content.md +++ b/content/hardware/07.opta/opta-family/opta/tutorials/user-manual/content.md @@ -1454,21 +1454,58 @@ After a while, your Opta™ device should be discovered by the IoT Cloud, as sho ![IoT Cloud Setup Device pop-up window](assets/user-manual-29.png) -Click the **CONFIGURE** button, give your device a name, and select the type of network connection. In this example, we will use a Wi-Fi® connection; you can also use an Ethernet connection with your device. +To set up your device, click the **CONFIGURE** button, assign a name to your device, and choose the preferred network connection method. The device supports both **Wi-Fi®** and **Ethernet** as connectivity options; thus, it can be configured for either connection type. -***To learn how to configure Opta in the Arduino Cloud using the two connectivity setup options, check out our tutorials for [Ethernet](https://docs.arduino.cc/arduino-cloud/hardware/ethernet) and [Wi-Fi](https://docs.arduino.cc/arduino-cloud/hardware/wifi)*** +Based on the chosen connection type, the device will be configured accordingly. The user manual will show the configuration process for both Wi-Fi® and Ethernet connections. -Your Opta™ will be configured to communicate securely with the IoT Cloud; this process can take a while. +### Via Ethernet Connection + +To configure Opta™ with an Ethernet connection, after clicking **CONFIGURE**, please choose the **Ethernet** option. + +![IoT Cloud Device Setup - Ethernet Connection](assets/user-manual-29-eth.png) + +This will configure your Opta™ for secure Ethernet communication with the IoT Cloud, which may require some time to complete. + +### Via Wi-Fi® Connection + +To configure using the Wi-Fi® connection for the device, please choose the **WiFi** option after clicking the **CONFIGURE** button. + +![IoT Cloud Device Setup - Wi-Fi® Connection](assets/user-manual-29-alt.png) + +***To learn how to configure Opta™ in the Arduino Cloud using the two connectivity setup options, check out our tutorials for [Ethernet](https://docs.arduino.cc/arduino-cloud/hardware/ethernet) and [Wi-Fi](https://docs.arduino.cc/arduino-cloud/hardware/wifi)*** + +Your Opta™ will be configured to communicate securely with the IoT Cloud via a Wi-Fi® connection; this process can take a while. ![IoT Cloud Setup Device pop-up window](assets/user-manual-30.png) -Once your Opta™ has been configured, let's create a "Thing" to test the connection between your board and the IoT Cloud. Navigate into **Things** and select the **CREATE THING** button; give your thing a name. +After configuring Opta™ with your choice of connection, the next step is creating a **"Thing"** to test the connection between your device and the IoT Cloud. Go to **Things** and click on **CREATE THING**, then name your thing. ![IoT Cloud "Thing" setup](assets/user-manual-31.png) -Navigate into **Associate Device** and click the **Select Device** button. Select your Opta™ device and associate it with your "Thing." Then, navigate into **Network** and click the **Configure** button; enter your network credentials. +Navigate into **Associate Device** and click the **Select Device** button. Select your Opta™ device and associate it with your "Thing". + +If Opta™ has been configured to use the **Ethernet connection**, no additional steps are required as DHCP is used to configure the Ethernet interface automatically. + +![IoT Cloud "Thing" - Ethernet Connection](assets/user-manual-31-eth.png) + +If you need to use specific Ethernet interface settings, turn off the default settings in **Network** by clicking on **Change** to input custom parameters. -The project is ready to add variables to your "Thing"; navigate into **Cloud Variables** and click the **ADD VARIABLE** button. +![IoT Cloud "Thing" - Ethernet Connection](assets/user-manual-31-eth-alt.png) + +The required network credentials are: + +- IP address +- Netmask +- Gateway +- DNS + +To make the changes take effect with custom network credentials, please navigate to the **Sketch** tab and upload the sketch to load the credentials on the device. The sketch upload will be shown later in the process. + +If Opta™ has been configured to use the **Wi-Fi® connection**, navigate to **Network**, click the **Configure** button, and enter your network credentials. + +![IoT Cloud "Thing" - Wi-Fi® Connection](assets/user-manual-31-alt.png) + +The project is ready to add variables to your "Thing"; navigate into **Cloud Variables** and click the **ADD** button. ![Add variable button](assets/user-manual-32.png) @@ -1481,7 +1518,7 @@ Add one variable with the following characteristics: ![IoT Cloud "Thing" variable setup](assets/user-manual-33.png) -You should see the `led` variable in the Cloud Variables section. Navigate into **Dashboards** and select the **BUILD DASHBOARD** button; this will create a new dashboard and give your dashboard a name. +You should see the `led` variable in the Cloud Variables section. Navigate into **Dashboards** and select the **CREATE DASHBOARD** button; this will create a new dashboard and give your dashboard a name. ![IoT Cloud Dashboards page](assets/user-manual-34.png) @@ -1599,11 +1636,63 @@ void onLedChange() { To upload the code to the Opta™ from the online editor, click the green **Verify** button to compile the sketch and check for errors, then click the green **Upload** button to program the board with the sketch. -![Uploading a sketch to the Opta™ in the Arduino Cloud](assets/user-manual-36.png) +![Uploading a sketch to the Opta™ in the Arduino IoT Cloud](assets/user-manual-36.png) + +The code uses the `thingProperties.h` header, which contains essential network interface settings and definitions required for the above example code. + +The Arduino Cloud creates This header file automatically, customized to the specific network interface settings and variables defined. It is advisable not to modify this file manually. Instead, any changes to variables should be made within the Arduino Cloud environment. + +If Opta™ is set up with Wi-Fi® as the network interface, the `thingProperties.h` file will include settings such as the network SSID and password. The example code for this configuration is shown below: + +```arduino +//code generated by Arduino IoT Cloud, DO NOT EDIT. + +#include +#include + +const char SSID[] = SECRET_SSID; // Network SSID (name) +const char PASS[] = SECRET_OPTIONAL_PASS; // Network password (use for WPA, or use as key for WEP) + +void onLedChange(); + +bool led; + +void initProperties(){ + + ArduinoCloud.addProperty(led, READWRITE, ON_CHANGE, onLedChange); + +} + +WiFiConnectionHandler ArduinoIoTPreferredConnection(SSID, PASS); +``` + +Alternatively, if Opta™ is configured to use an Ethernet connection, the `thingProperties.h` file will include different settings such as _IP_, _DNS_, _Gateway_, and _Netmask_. The corresponding code for this configuration would be as follows: + +```arduino +#include +#include + +const char IP[] = SECRET_OPTIONAL_IP; +const char DNS[] = SECRET_OPTIONAL_DNS; +const char GATEWAY[] = SECRET_OPTIONAL_GATEWAY; +const char NETMASK[] = SECRET_OPTIONAL_NETMASK; + +void onLedChange(); + +bool led; + +void initProperties(){ + + ArduinoCloud.addProperty(led, READWRITE, ON_CHANGE, onLedChange); + +} + +EthernetConnectionHandler ArduinoIoTPreferredConnection(IP, DNS, GATEWAY, NETMASK); +``` -Navigate into **Dashboards** again, your board should connect to the Wi-Fi® network you defined before (you can follow the connection process with the online editor integrated Serial Monitor). Your board's STATUS LED 1 (`LED_D0`) should light on or off when the position of the switch changes. +Navigate into **Dashboards** again, your board should connect to the Wi-Fi® network or via Ethernet interface you configured before (you can follow the connection process with the online editor integrated Serial Monitor). Your board's STATUS LED 1 (`LED_D0`) should light on or off when the position of the switch changes. -To learn more about Opta™ and the Arduino Cloud, check out the following resources that can help you learning about the Arduino Cloud and Opta™: +To learn more about Opta™ and the Arduino IoT Cloud, check out the following resources that can help you learning about the Arduino IoT Cloud and Opta™: - [Opta™ Relay Management template](https://create.arduino.cc/iot/templates/relay-management) - [Using PLC IDE With Arduino® IoT Cloud](https://docs.arduino.cc/tutorials/opta/plc-ide-cloud-support) diff --git a/content/software/plc-ide/tutorials/plc-ide-cloud-support/assets/iot-cloud-full-editor.png b/content/software/plc-ide/tutorials/plc-ide-cloud-support/assets/iot-cloud-full-editor.png index 8a4f598e56..8ce95445a9 100644 Binary files a/content/software/plc-ide/tutorials/plc-ide-cloud-support/assets/iot-cloud-full-editor.png and b/content/software/plc-ide/tutorials/plc-ide-cloud-support/assets/iot-cloud-full-editor.png differ diff --git a/content/software/plc-ide/tutorials/plc-ide-cloud-support/assets/plc-ide-cloud-dashboard.png b/content/software/plc-ide/tutorials/plc-ide-cloud-support/assets/plc-ide-cloud-dashboard.png index 10187c4b99..b81df51f84 100644 Binary files a/content/software/plc-ide/tutorials/plc-ide-cloud-support/assets/plc-ide-cloud-dashboard.png and b/content/software/plc-ide/tutorials/plc-ide-cloud-support/assets/plc-ide-cloud-dashboard.png differ diff --git a/content/software/plc-ide/tutorials/plc-ide-cloud-support/assets/plc-ide-cloud-thing.png b/content/software/plc-ide/tutorials/plc-ide-cloud-support/assets/plc-ide-cloud-thing.png index c73b65f435..dfd449999a 100644 Binary files a/content/software/plc-ide/tutorials/plc-ide-cloud-support/assets/plc-ide-cloud-thing.png and b/content/software/plc-ide/tutorials/plc-ide-cloud-support/assets/plc-ide-cloud-thing.png differ diff --git a/content/software/plc-ide/tutorials/plc-ide-cloud-support/content.md b/content/software/plc-ide/tutorials/plc-ide-cloud-support/content.md index c0f5d83479..5de3a9463f 100644 --- a/content/software/plc-ide/tutorials/plc-ide-cloud-support/content.md +++ b/content/software/plc-ide/tutorials/plc-ide-cloud-support/content.md @@ -150,7 +150,8 @@ float analog01; int counter; bool cloudButton; -WiFiConnectionHandler ArduinoIoTPreferredConnection(SSID, PA +WiFiConnectionHandler ArduinoIoTPreferredConnection(SSID, PASS); + void setup() { // Initialize serial and wait for port to open: Serial.begin(9600);