Month: January 2023

How to create a human walking movement in Blender using BVH file?

I was looking for some way to create a human walking in Blender and fortunately found this nice video tutorial:

I needed to modify the retarget python script because after python 3.10 float to int conversion is not automatic anymore, so you need to do it too.

vi .config/blender/3.0/scripts/addons/retarget-bvh/retarget.py

And add int() casting:

scn.frame_current = int(frames[0])

and here:

scn.frame_set(int(frame))

How I created a Docker image for NuttX

This is the step-by-step process I took to create the Docker image.

Create a directory just to save the file:

$ mkdir ~/Docker
$ cd ~/Docker

Install Docker case you don’t have it yet and give permission to your user:

$ sudo apt  install docker.io
$ sudo usermod -aG docker ${USER}

Log out and log in again to get into this docker group, or alternatively:

$ su ${USER}

Create the Dockerfile with the instructions to install the needed files:

$ vi Dockerfile
# Ubuntu as parent file
FROM ubuntu

# Update the image to the latest packages
RUN apt-get update && apt-get upgrade -y

# Install needed tools
RUN apt-get install automake bison build-essential flex gcc-arm-none-eabi gperf git libncurses5-dev libtool libusb-dev libusb-1.0.0-dev pkg-config kconfig-frontends genromfs zlib1g-dev -y

# Create how nuttxspace
WORKDIR /nuttxspace

#clone needed files:
RUN git clone https://github.com/apache/nuttx /nuttxspace/nuttx
RUN git clone https://github.com/apache/nuttx-apps /nuttxspace/apps

Built it:

$ docker build .

Verify if it was created correctly:

$ docker images
REPOSITORY   TAG       IMAGE ID       CREATED              SIZE
<none>       <none>    f0a673f5538d   About a minute ago   3.9GB
ubuntu       latest    6b7dfa7e8fdb   6 weeks ago          77.8MB

Tag the image:

$ docker tag f0a673f5538d acassis/ubuntu-nuttx

Run the image:

$ docker run -it acassis/ubuntu-nuttx /bin/bash

If everything worked fine, you could wish to submit it to Docker hub

So, re-tag the image with a version number to submit:

$ docker tag acassis/ubuntu-nuttx acassis/ubuntu-nuttx:v1

Login in the docker:

$ docker login

Send the docker image:

$ docker push acassis/ubuntu-nuttx:v1

Everything done!

If for some reason you want to remove your local image:

$ docker rmi -f f0a673f5538d

How to test ESP32 4MiB PSRAM on NuttX

NuttShell (NSH) NuttX-10.4.0

nsh> uname -a
NuttX 10.4.0 3ea7a6fb77-dirty Jan 10 2023 15:39:26 xtensa esp32-devkitc


nsh> free                   total       used       free    largest  nused  nfree
  esp32-imem:      97920       6208      91712      91712      4      1
        Umem:    4415008       6296 1065567632 1065353216     42      4

nsh> ramtest -w 0x3F800000 4194304
RAMTest: Marching ones: 3f800000 4194304
RAMTest: Marching zeroes: 3f800000 4194304
RAMTest: Pattern test: 3f800000 4194304 55555555 aaaaaaaa
RAMTest: Pattern test: 3f800000 4194304 66666666 99999999
RAMTest: Pattern test: 3f800000 4194304 33333333 cccccccc
RAMTest: Address-in-address test: 3f800000 4194304

Google Earth Zero Features Found error

I was getting this error message when importing CSV file with Lat/Long in Decimal Degrees on Google Earth: “Found zero features in file”.

It was strange because when I was going to File -> Import the Google Earth was displaying the data correctly in the preview.

After some investigation I fixed the issue and it was cause because these two things:

  1. In the import screen click on Next and then Next again, in the Specify Field Types use type “string” to Latitude and Longitude instead of default “floating point”.
  2. My CSV file had a space after comma: “Name, XX.XXXXXX, XX.XXXXXX”. It should be: “Name,XX.XXXXXX,XX.XXXXXX”

After fixing these issues everything worked fine.

Setup FTP server on Ubuntu

This is the steps I followed:

https://www.hostinger.com/tutorials/how-to-setup-ftp-server-on-ubuntu-vps/

But while trying to connect I got this error:

$ ftp 192.168.0.5
Connected to 192.168.0.5.
220 (vsFTPd 3.0.3)
Name (192.168.0.5:alan): ftpclient
331 Please specify the password.
Password:
500 OOPS: vsftpd: refusing to run with writable root inside chroot()
Login failed.
421 Service not available, remote server has closed connection
ftp>

I fixed this error this way:

$ sudo -s
# usermod -s /sbin/nologin ftpclient
# chmod a-w /home/ftpclient
# systemctl restart vsftpd

It fixed the first issue, but now vsFTPd is reporting “530 Login incorrect” even with correct user/password combination.

This last one was a little bit more difficult to solve, but finally I found a user that explained the issue correctly:

“By default vsFTPd uses the file /etc/pam.d/vsftpd. This file by default requires FTP users to have a shell listed in /etc/shells and requires them not to be listed in /etc/ftpusers. If you check those 2 things your probably find what the problem is.”

So, I just edited the /etc/passwd to add /bin/bash to ftpclient user:

$ sudo vi /etc/passwd
ftpclient:x:1001:1001:FTP,,,:/home/ftpclient:/bin/bash

And confirmed that ftpclient user is not listed in /etc/ftpusers

Then just restarted the ftp server and everything worked fine:

$ sudo systemctl restart vsftpd

I was able to login:

$ ftp 192.168.0.5
Connected to 192.168.0.5.
220 (vsFTPd 3.0.3)
Name (192.168.0.5:user): ftpclient
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>

Sources:

https://www.liquidweb.com/kb/error-500-oops-vsftpd-refusing-to-run-with-writable-root-inside-chroot-solved/

https://askubuntu.com/questions/413677/vsftpd-530-login-incorrect/670215#670215