Advantech ICAM- 500 / 520

Device setup and documentation

"The Advantech ICAM-500 series is a highly integrated Industrial AI Camera that reduces installation and maintenance effort significantly, equipped with programmable variable focus lenses, LED illumination, SONY industrial grade image sensor, multiple core ARM processors, and NVIDIA AI system on module."
The Scailabe AI manager installed in the ICAM turns this device into a plug-and-play edge AI device for industrial applications.
If you experience problems such as a "white screen" on the "Camera Preview" screen or encounter other instabilities while using the ICAM-500 series model 510 (Jetson Nano), it is advisable to ensure that both the ICAM-510 and camera module firmware are updated to the latest versions. For detailed information on how to update the firmware, please refer to the instructions provided below.

Free up space

The ICAM can have limited filesystem space based on the version of the device. Free up space by removing unneeded large programs from the filesystem with the following commands:
sudo apt update
sudo apt remove thunderbird libreoffice-* -y
sudo apt autoremove -y
sudo apt clean
If you need still more space, try:
sudo rm -rf /usr/local/cuda/samples \
/usr/src/cudnn_samples_* \
/usr/src/tensorrt/data \
/usr/src/tensorrt/samples \
/usr/share/visionworks* ~/VisionWorks-SFM*Samples \
/opt/nvidia/deepstream/deepstream*/samples

Setting up the ICAM-500

On booting up the ICAM-500, go to port :5000 and create a camera project.
Next, set up the camera, run it, and set it to play:
Now close the tab, and continue with the installation of the Scailable AI Manager.

Installation of the AI manager on this device

You can easily install the AI manager on the ICAM-500 using our simple one-line install. Login to the camera and open a shell. Next, type the following command:
sudo bash -ic "$(wget -q -O - https://get.sclbl.net)"
This will install the Scailable AI manager on the device.
After the installation script has ran you will see the following message:
At this point you can access the AI manager at one of the ports listed and configure your solution.
The AI Manager for the Advantech ICAM-500 defaults to the v4l2 driver with the camera at /dev/video10. It also defaults to installing the NVIDIA accelerated version of the AI Manager. Since models on NVIDIA devices need to run a warmup round before starting up, it can take a few seconds for your model to start running.

Configuring

Before you can use the camera in the AI Manager, available at port :8081 and port :8443, you first need to make it available though the Advantech ICAM UI at port :5000. To do so, go to the ip address suggested by the Scailble one line install script with the port changed to :5000. So for the above example http://192.168.64.2:5000 or http://localhost:5000.
Next, choose "new project", configure the camera to your liking, set it to connect and then play.
Now you can close the browser or browser tab, and continue setting up the AI Manager at port :8081 or :8443.

Set the Input URL and Input type

The ICAM camera is now available as a V4L2 camera at /dev/video10.
To use it in the Scailable AI Manager, set the Input type to V4L2 and the Input URL to /dev/video10
The one-line install is useful for installing the AI manager when purchasing an ICAM without the AI manager installed. However, we would recommend buying the ICAM with the AI manager installed from one of our resellers.

Constraints on this device

The ICAM obviously is constrained to using a single camera input: namely, the device's own camera. The jetson Nano inside the device is quite performant and should allow you to run relatively advanced classification and segmentation models. The ICAM is also a good target for our library OCR, QR-code, and bar-code reader models.

Tips & Tricks

For product quality inspection the FOMO model by Edge Impulse provides a great starting point on this device.
Edge AI in minutes on the ICAM-500; start to end.

Purchasing devices

Please consult our purchasing options for your region to purchase a desired device with the Scailable AI manager pre-installed. For questions do feel free to reach out to our team anytime using our chat.

ICAM-510 Firmware version check

To ensure your ICAM-510 (ICAM500, subtype Jetson Nano) is functioning optimally, it is essential to keep your firmware up to date. You can easily verify the current firmware version by executing the following command:
icam-500@ubuntu:~$ cat /opt/version
ICAM-500_Nano_4.5.1_GA_1.1.25.1, Build Date: 2022-08-25 15:29:24
If your ICAM-510 firmware is of an earlier build date, you need to update it.
The same goes for the icam's camera module's firmware. Check your version by running the following command:
icam-500@ubuntu:~$ v4l2-ctl --get-ctrl=cam_module_id
Cam Module Id: 1, 1, 22, 8, 5, 1
If your camera module firmware is and earlier version, you need to update it.

ICAM-510 and camera module firmware update

ICAM-510 firmware update (from a linux based pc with a micro USB cable)

To update the ICAM-510 firmware, download the following BSP image (4.57GB) on a Linux based computer: https://scailable.net/dl/ICAM-500_Nano_4.5.1_1.1.32.1_MassFlash.tbz2
Then, follow the steps below:
  1. 1.
    Connect ICAM-500 device and Host PC with micro USB cable. And connect the HDMI screen to the ICAM-500 device.
  2. 2.
    Press and hold the Reset and Recovery buttons on the ICAM-500 at the same time.
  3. 3.
    Release the Reset button first.
  4. 4.
    Release the Recovery button after waiting for 3 seconds.
  5. 5.
    Enter the “lsusb” command on the Host PC.
  6. 6.
    ID 0955:7f21 Nvidia Corp. means device is in recovery mode.
  7. 7.
    Un-tar BSP image and find the “nvmflash” command.
  8. 8.
    Enter the “nvmflash” command on the Host PC.
  9. 9.
    After 10 to 20 minutes, you can see the success message as shown below on Host PC and the ICAM-500 will automatically restart.

ICAM-510 camera module update (on device itself)

After you have updated the firmware itself, log into the icam-500. Then, download the following two files:
For instance through curl:
icam-500@ubuntu:~$ sudo apt install curl
icam-500@ubuntu:~$ curl -O -J https://scailable.net/dl/ICAM_160C_V1.0.1_220805.bin
icam-500@ubuntu:~$ curl -O -J https://scailable.net/dl/icam510_mp_camera_fw_update.sh
Next, run the update script as super user, and reboot the device:
icam-500@ubuntu:~$ sudo su
root@ubuntu:/home/icam-500# chmod 775 icam510_mp_camera_fw_update.sh
root@ubuntu:/home/icam-500# ./icam510_mp_camera_fw_update.sh ICAM_160C_V1.0.1_220805.bin
root@ubuntu:/home/icam-500# reboot now
On reboot, the camera module has been updated.