Adventures with a digital canvas

by Kim AarnsethApril 06, 2019

Like the old monks of the monasteries, mixing their own paint, making paper and building canvases to give themselves not only the opportunity to spread knowledge of that guy in the clouds but also to create fantastic art... Not sure if this is a romantical pictation or factually accurate. Nevertheless, we're making a digital canvas so we can make art on it. And because it's fun to create things and explore new languages and problems, and because we need more art on our walls.

What kind of prints, animations, and things would you like to see on a digital canvas?

Hardware and 3D printing

In hardware-land, we're getting help building a prototypical device with custom 3D printed parts like this one:It is going pretty good!

Software and communication

On the software side, we've a pretty robust structure now that works.The Screen Core Application is written in C++, we switched from Bluetooth classic to Bluetooth Low Energy for phone support to be up to snuff with today's devices. We also added a TCP Host that art applications can communicate to directly locally on the device.

Here is the software architecture:

iOS Native Mobile

I started making a prototype mobile application first in C++ and realized there was no real support for that as iOS native Bluetooth core SDK was either in Objective-c or Swift. I switched to building it in Xcode with Swift instead which is a pretty nice language. So now we've an already working fast native ios application which talks directly to our canvas, and we can switch artwork on the fly, pretty cool!

Right now we've support for three types of art; images, seamless looping videos, and custom applications. The custom applications can basically be written in any language supported by Linux (ARM). The robotic animation painting is a custom app written in C++ and SDL2.

Art - The things on the screen

I finally finished painting, programming and animating the first robotic piece, can go into a little more details on what kind of the artwork it is, what it represents and more like that later. Here is a slower gif of the piece, the real one is beautifully rendered in full HD at 60fps.

I also made a couple of test video concepts like the "seascreen", a recording from the southern part of Sweden down here outside of Ystad. I like the idea of having a calming sea on the wall.

What kind of prints, animations, and things would you like to see on a digital canvas?