NVIDIA Jetson is a complete System on Module (SOM) that includes a GPU, CPU, memory, and all that jazz, like power management and peripherals needed to be a complete development platform.
Now if you get the NVIDIA Jetson Dev kit the System on Module comes plugged in a board covering all your IOs and useful other ports like HDMI, USB, and power plug via USB Type C, so all you need to get started is a keyboard&mouse and a monitor although in a pinch you could also set up the system over ssh even without those.
The other great thing about the Jetson is that it runs Ubuntu on a 64 bit ARM architecture which means that most software developed for Linux is already compatible and easy to use via traditional methods if you already are used to a pc or laptop running a Debian environment.
And because NVIDIA Jetson is such a great hardware development board to run things at the Edge, and if you have been following our tutorials you already know that TinyAutomator from Waylay is a great software solution for running things on the Edge we thought we need to run them together and thus this tutorial!
Setting up the Jetson ⚙️The first thing after getting your Jetson out of the box is writing the OS on an SD card, be sure to get a 64GB at least so you have some spare storage space for local data besides the OS.
Based on your OS follow the steps from the dev site to accomplish this:
https://developer.nvidia.com/embedded/jetson-nano-developer-kit
Then plug the SD card and connect your monitor and keyboard&mouse and boot it. Be sure to complete the Ubuntu setup and allow the installer to occupy all remaining space on your SD card when prompted.
The following steps can be done either from this setup or remotely via ssh from the same network by removing the monitor, keyboard&mouse setup, In the end, it's a device running at the Edge so it should run accordingly and you should be able to access it remotely.
Next stop:
Waylay TinyAutomator community edition comes free of charge and provides the following features:
- Console, inference engine, resource service
- Serverless sandbox
This means you will have locally a full-stack capable of ingesting data through REST API or MQTT, whichever works best for you, then setting rules via the low-code interface with ease and changing them on the fly if needed while triggering actuators based on said business logic with the data received from the sensors.
TinyAutomator comes prepacked in the form of a few docker images so the first step will be to have Docker running on the Jetson. You can learn all about it here https://docs-io.waylay.io/#/features/automator/.
Jetson Nano doesn’t come with Docker Compose installed by default. You will need to first install the below list of pre-requisite packages in the right order as shown below:
sudo apt-get install python3 python3-pip nano wget libssl-dev libhdf5-dev
We sneaked nano as a terminal editor useful when working remotely but you can use whatever you like on your end :P.
pip3 install --upgrade pip
pip3 install docker-compose
Run the following command to check if docker-compose has been installed successfully:
docker-compose version
and then this one to allow dockers permission in the name of the current user:
sudo usermod $USER -aG docker
After this command, you have to re-login to shell for the permissions to take action.
Then use the following command to edit and add this line at the end of the file, it will help with accessing TinyAutomator from a browser afterward and also with its inner workings as well
sudo nano /etc/hosts
Add this line:
127.0.0.1 localhost standalone.waylay.io pubsub-standalone.waylay.io
The file should look like this:
Now your system is ready to run a Waylay standalone platform. Download the docker-compose file for X86 platform from the URL https://tinyurl.com/waylay-fulltinyautomator:
wget -O tinyautomator-x86.yml https://tinyurl.com/waylay-fulltinyautomator
Start docker-compose with the downloaded file. This will start downloading and start up the docker images with the Waylay platform services and open some ports to access those services.
docker-compose -f tinyautomator-x86.yml up -d
NOTE: It can take some time to download the docker images.
That's it, try accessing TinyAutomator by going in a browser to this address: http://standalone.waylay.io or http://localhost if you are running it directly from the Jetson:
Now that you have an NVIDIA Jetson running the TinyAutomator stack you can follow up our next tutorials for some real-world use cases or build your own automation based on them:
- Retrofitting for brownfield systems with TinyAutomator
- Predictive Maintenance with TinyAutomator
- Quality Assurance with TinyAutomator
If you have any further questions, reach out to us via the comments! If you need help in deploying this solution or building something similar please contact Waylay.io for the low-code IoT Solution or Zalmotek.com for IoT-enabled hardware prototypes.
Comments