Need some help with setting up Jetson nano

Hi,

I’m trying to follow this instruction: Setting up a VideoCoin Worker on Jetson Nano

May be it’s just me, but I’m confused by this guide. .

I know there’s a binary file that just came out specific for Jetson Nano.

Question 1:
In this guide, after setting ffmpeg, it says

"
Download the VideoCoin Worker Binaries for Nano

You can learn more about setting up a worker here

"

Is it necessary to go to here ((https://docs.videocoin.network/setting-up-a-videocoin-worker)) and do these steps???

or move to next “Setup VideoCoin Worker in VideoCoin Network Console”,
and “Starting the worker”??

Question 2.

Where is the instruction for self staking???
If I were to use INFURA account, what are the commands to use?

Question 3.
In this guide: https://docs.videocoin.network/setting-up-a-videocoin-worker
It states that

“Platform specific binaries are available for NVidia Jetson and Raspberry Pi, you can learn more about those here”,

but URL link is missing for Jetson Nano???
Does anyone know the correct URL?

Also, in this guide https://docs.videocoin.network/setting-up-a-videocoin-worker
It states that
“Once the native VID is bridged and available, you can move it into your Worker address using the VideoCoin Bridge tool. Since the bridge tool is going to be public at the Everest Release, you can send an email to support@videocoin.io to get your transaction processed.”

What is this 'VideoCoin Bridge tool"?
Where is it?
How to use it?

Any help would be much appreciated!

Thanks!

@Eun_Moon

Answer to Question 1:
You can move to move to next “Setup VideoCoin Worker in VideoCoin Network Console”, and “Starting the worker”. ( The referenced document shows screen shots of the console to perform the step.)

Answer to Question 2:
Following doc gives instruction for worker self-staking. Please note you can use any system with docker support to perform self-staking.

Answer to Question 3:
Download the worker binary for jetson nano as specified in the following doc.

Ram,

Thank you for your help.

Now, I’ve followed the instruction,
but I’m getting error during SELF staking step:

When I run following stake fund command:

$ sudo docker run --rm -it --env=“ETH_RPC_URL=https://mainnet.infura.io/v3/INFURA_PROJECT_ID” -v /home/user1/vid:/tmp videocoinnetwork/staker stake fund 50050 -k /tmp/UTC.json -s ETHKEYPASSWORD

I get
"standard_init_linux.go:211: exec user process caused “exec format error”

  • The UTC.json file is in /home/user1/vid directory
  • I changed permission for /home/user1/vid directory and UTC.json with “Chmod 777” rights.
  • When I run sudo docker run hello-world, it works fine.
  • I also ran sudo docker pull videocoinnetwork/staker , again.
  • I also ran sudo docker pull videocoinnetwork/worker , again.

Question 1:
Why am I getting error?
What should I check?

Question 2:
In the command, env="ETH_RPC … " it has double quotation " , this a MUST, right?
How about the last ETHKEYPASSWORD? There is NO double quotation here, right?

Question 3:
Since I’m using Jetson Nano Binary, I DON’T have to set up worker env file (vars.env), right?

Question 4:
Do I need to give file permission (chmod ) to docker for it to write/access?
If yes, what would be the command?

Thanks for your help.

@Eun_Moon

The current version of staker (docker image) does not support arm architecture. I your are running it on Jetson Nano, please use a Windows or Linux PC(x86 amd64 arch). For your information, worker self staking can be done on a different machine and run the worker on Jetson Nano,

Ram,

Thank you for clarification.

When will it support?
Is it in your development roadmap?

So now, if one were to setup one additional Window/Linux PC for self staking / withdrawing, and for actual worker job utilize Jetson Nano,
that Window/Linux PC for self staking / withdrawing does not have to be turned on all the time, right? Just utilize it when doing self staking / withdrawing, right?

The docker image needs a recompilation for arm-64 architecture. I will initiate the feature request and update you on the progress.

It is correct. It is just needed for staking/withdrawl.

Ram,

Thanks.
Following your instruction, I have setup a docker on Win10,
pull the videocoinnetwork/staker,
put UTC.json under C:\Users\Jae\vid folder,
and ran the self staking command:

C:\Users\Jae\vid>docker run --rm -it --env=“ETH_RPC_URL=https://mainnet.infura.io/v3/ INFURAACCOUNTID” -v C:/Users/ Jae/vid:/tmp videocoinnetwork/staker fund 50050 -k /tmp/UTC.json -s PASSWORD

And I got,

FATA[0002] not registered: 0xDbc1C1a9AAAAAAAAAAAAAAAAAAAA111111111111 version=dev

Where this is the address that contains 0xDbc1C1a9AAAAAAAAAAAAAAAAAAAA111111111111
enough ETH and VID for staking

Why am I seeing that error?

I don’t have to pull the videocoinnetwork/worker, right?
Or do I have to pull worker and setup vars.env file?

@Eun_Moon

Check the command again. Make sure that you are using the command format “staker fund” and NOT “staker stake fund”. There is an error in our documentation that shows example usage of the command as “staker stake fund” instead of “staker fund”.

Corrected example usage:

Ram,

Thanks. That corrected it.

So to stake, you run:

C:\Users\Jae\vid>docker run --rm -it --env=“ETH_RPC_URL=https://mainnet.infura.io/v3/ INFURAACCOUNTID” -v C:/Users/ Jae/vid:/tmp videocoinnetwork/staker fund 50050 -k /tmp/UTC.json -s PASSWORD

C:\Users\Jae\vid>docker run --rm -it --env=“ETH_RPC_URL=https://mainnet.infura.io/v3/ INFURAACCOUNTID” -v C:/Users/ Jae/vid:/tmp videocoinnetwork/staker stake add 50010 -k /tmp/UTC.json -s PASSWORD

Note that you want to do “stake add” with less amount of vid than “fund” vid amount!
In my case, I did “fund” 50050 vids, and “stake add” 50010 vids.

To see the stake status, you run:

C:\Users\Jae\vid>docker run --rm -it --env=“ETH_RPC_URL=https://mainnet.infura.io/v3/ INFURAACCOUNTID” -v C:/Users/ Jae/vid:/tmp videocoinnetwork/staker stake probe -k /tmp/UTC.json -s PASSWORD

Now I’m going to fire up the Jetson Nano binary to see if it works!

Ram,

I got the Jetson nano to work!

When it started for the first time,
I got following error message:

ERRO[0013] failed to get encode capacity cid=0174331f-9225-48b0-9018-3346abd12a1e error=“exec: “ffmpeg”: executable file not found in $PATH” version=v1.1.1-pe-1-6107bcc

Do I need to do anything? Or this can be ignored?

Thanks.

@Eun_Moon

Your worker is communicating with the VideoCoin Network correctly.

It may not be able to perform transcoding task as it could not locate ffmpeg binaries in the path.

Check if the ffmpeg is installed and working correctly. I added a note for testing the ffmpeg installation in the following forum link:

Ram,

I followed your instruction again to install the ffmpeg,
which I previously have installed using exact same instructions as below:

jetson-ffmpeg
L4T Multimedia API for ffmpeg

1.build and install library

git clone https://github.com/jocover/jetson-ffmpeg.git
cd jetson-ffmpeg
mkdir build
cd build
cmake …
make
sudo make install
sudo ldconfig
2.patch ffmpeg and build

git clone git://source.ffmpeg.org/ffmpeg.git -b release/4.2 --depth=1
cd ffmpeg
wget https://github.com/jocover/jetson-ffmpeg/raw/master/ffmpeg_nvmpi.patch
git apply ffmpeg_nvmpi.patch
./configure --enable-nvmpi
make

No error, everything seems to be working fine here.
So, I ran your command to verify installation:
ffmpeg -f lavfi -i testsrc=duration=10:size=1280x720:rate=30 -c:v h264_nvmpi test.mp4

Then I get:
*

bash: ffmpeg: command not found

I go to /bin and /usr/local/bin and don’t see ffmpeg.

Any suggestion to remedy this?

Thank you!

@Eun_Moon
ffmpeg installation is missing. After compilation (i.e. after make) run the command “sudo make install”.

Ram,

Thanks, it worked!

But now I got:

> ERRO[0014] failed to get encode capacity cid=01111111-1111-1111-1111-111111111111 error=“exit status 1” version=v1.1.1-pe-1-6107bcc

Can this be ignored?

@Eun_Moon
Your worker is working. It seems to be performing tranascoding.

You can ignore the error for now.
I will check the reason for the error with our team and update you.