Blender on Raspberry Pi

In a hot weather  with multiple laptops running in the same room, the last thing I wanted to do was render, which I did and instantly the cooling fans turned on, result, the room turned uncomfortably warm.

Ten minutes later, I gave up on the render process as I did not want to sit in this oven and decided to fired up my Raspberry Pi 2,  and checked to see if a build of Blender is available in the repository, turns out there is a built not the latest built but has everything I need for the render.

I highly recommend doing this on a Raspberry Pi 2 or higher, as it has sufficient amount of RAM for decent render and CPU that can handle BVH(Bounding Volume Hierarchy) duplication without any issues.

Announcement: I will be publishing the result of the benchmark once they have been completed, you can subscribe via email to get notified or leave a comment.

 

Installing it is like another application.

 

Arch Linux

sudo pacman -S blender

Raspbian

sudo apt-get install blender

The good thing about Blender is it has CLI support, which lets you render without firing up the GUI.

blender -b file.blend -o /render/frame_##### -F PNG -f -2

Let’s break down the flags used above.

-b  (render in background without GUI)
file.blend (location of the blend file to be rendered)
-o (Location to where the render will be saved)
-F (Override the image format specified in the blend-file and save to an PNG image.)
-f (Frame)

To learn more about the command line you can visit the official documentation.

RuTorrent on Raspberry Pi

After publishing RTorrent on Raspberry Pi, I did not have enough time to try anything new with the Raspberry Pi, I got requests later to get RuTorrent working with RTorrent on Raspberry Pi.

I decided to use a bash script based setup instead of step by step because it will end up having the same result but with better security measures as the script is written by a much experienced person and maintained actively.

I would recommended doing this on a clean install for best result.

 

This setup will contain

  1. libtorrent/rtorrent (Latest/Compiled)
  2. SSH port reassigned
  3. VSFTPD (FTP client) random port assigned
  4. Webmin (Optional) (Admin interface)
  5. autodl-irssi
  6. rutorrent (Web UI)

Download the script

wget --no-check-certificate https://raw.githubusercontent.com/arakasi72/rtinst/master/rtinst.sh

Run the script

sudo bash rtinst.sh

The script would respond shown below

Raspbian GNU/Linux 8.0 (jessie)

Your Server IP/Name is 192.168.0.200

Is this correct y/n? 

Choose y

The next response would be to add a password to secure the web interface to the user pi

Set Password for RuTorrent web client
 Enter a password (6+ chars)
 or leave blank to generate a random one
 Please enter the new password:

The next response can takes some time depending on the SD card speed and active tasks running in the background

No more user input required, you can complete unattended
 It will take approx 10 minutes for the script to complete

Updating package lists

 

The final response after the process

crontab entries made. rtorrent and irssi will start on boot for pi

ftp client should be set to explicit ftp over tls using port 48915

If enabled, access https downloads at https://192.168.0.200/download/pi

rutorrent can be accessed at https://192.168.0.200/rutorrent
rutorrent password as set by user
to change rutorrent password enter: rtpass

IMPORTANT: SSH Port set to 26828 - Ensure you can login before closing this session

The above information is stored in rtinst.info in your home directory.
To see contents enter: cat /home/pi/rtinst.info

To install webmin enter: sudo rtwebmin

PLEASE REBOOT YOUR SYSTEM ONCE YOU HAVE NOTED THE ABOVE INFORMATION

Note down the changed SSH and FTP port before exiting the SSH session, the script adds these information to a file named rtinst.info for later access.

ftp client should be set to explicit ftp over tls using port 43915
 If enabled, access https downloads at https://192.168.0.200/download/pi
 rutorrent can be accessed at https://192.168.0.200/rutorrent
 rutorrent password as set by user
 to change rutorrent password enter: rtpass
 ssh port changed to 21828

The script does even more, it adds various options and update functionality with the help of rtadmin

sudo rtadmin

It would respond with these options

Select from the following options:
 1.) rtgetscripts - update the rtinst scripts
 2.) rtadduser - add new user
 3.) rtremove - delete a user
 4.) rtdload enable - enable http downloads
 5.) rtupdate - up/down-grade rtorent/libtorrent
 6.) rutupgrade - upgrade to latest version of RuTorrent
 7.) rtwebmin - install webmin
 Enter option or q to quit

Doing this whole process manually would take alot of steps and longer time, this script does more and simplifies, things like update, upgrade plugin management, thanks to arakasi72, the repository of the script is on GitHub

If you have more requests for such posts let me know in a comment or contact directly for feedback.

Daily Sculpt #1 Head

I have decided to publish my daily sculpt practice on YouTube, so I could track my improvement over time.

Software: Blender 2.78

Box Bounce Animation (OpenToonz)

While testing OpenToonz 2D animation software, I a hand drew a box squashing and stretching animation sequence with my Wacom Bamboo tablet (CTH-661), which helped me test how OpenToonz handled the tablet and responded with pressure sensitivity, It was fun creating this but the software had issues registering pen clicks at times and rendering certain brush strokes.