Smart Raspberry PI project

October 31, 2015 Leave a comment Go to comments

Raspberry PI is a great little $35 mini computer the size of a credit card. The latest version (2.0) comes with 1 gigabyte of ram and a mid-range powerful ARM processor. Raspberry PI is used by hobbyists, schools and IOT companies to create clever consumer gadgets. The sky is the limit and what you can do with your PI is defined by imagination only (and I admit, some knowledge of Linux).

What our custom Linux distro brings, is a ready-to-use kiosk system

Smart Mobile Studio full control Raspberry PI

My good friend Glenn, a citizen of Denmark, loves all things Linux – so when I asked him if we could hijack the boot sequence, drop the desktop and boot straight into full-screen Chrome instead.. well, it didn’t take long for him to figure out a way to do that. I have to little experience with the mysteries of Linux to make that happen (it would take weeks of fiddling), so it’s good to have friends who know’s what they are doing.

A fully working desktop environment

A fully working desktop environment, took Glenn and myself 15 minutes to make

In essence we are creating a custom Linux distro which is designed to run your Smart Mobile Studio projects exclusively. This means:

  • full access to the filesystem
  • no content domain restrictions (CORS)
  • no blocking-operation restraints
  • No restriction on database or storage sizes
  • Your Smart program completely runs the show

As a gateway to the operative system and interesting functionality, I have gone for a nodeJS server running in the background (booted before the browser display) which means the desktop (or your project) can use RPC calls for advanced functions.

This is pretty cool because it means that the UI will be completely abstracted from the service functionality. The service can be local and run on the same installation – or it can run on Azure or Amazon cloud servers on the other side of the world.

Think of it this way: You dont have to run it on the same device. You can upload your desktop (or kiosk) to a normal web-host, disable CORS on the host, and then use websockets and connect to the NodeJS layer; which can be hosted on another computer or domain.

But all of that is already possible today. This is one of the simplest things to make with Smart Mobile Studio actually. A much cooler project is what we are doing now with the Raspberry PI — giving your creations the ability to live on and control a full Linux system.

So what are you guys up to?

The first project is a NetFlix like media system (or a XBMC clone) with full support for USB wireless remote controls. To make it short: a $35 home theatre that plugs into your television, which will scan your movies folder (or external drive) and present your movies like NetFlix does it. It will download info from and other media services for identification. It sounds complicated but it’s actually very straight forward. One of the simplest solutions I’ve done with Smart Mobile Studio to be honest.

Using a standard USB remote control is excellent because it registers as a touch-device. So the buttons you press registers as touch-events in a predictable order (read: it works on all controls of this type).

What our custom Linux distro brings, is a ready-to-use kiosk system. You can use it to display advertizing in a shop window if you like, or add a touch screen and build your own ticket ordering station. Again, it’s only limited by your own imagination.

A JavaScript cloud desktop

Depending on the success of the project we may go full-out and create the world’s first JavaScript desktop. It is essentially Debian + Chrome + Smart Mobile Studio. This would require a bit more NodeJS magic, where each exposed node service (RPC) represents a distinct part of the “operative system”. A virtual operative system running on top of a Linux stub. Pretty darn cool if you ask me. Who knows, maybe we can define POSIX for the cloud?

A fun hobby to say the least 🙂

  1. October 31, 2015 at 3:04 am


    Congratulations to both you and Glen. This will be a fun project and I can’t wait to try it. I have a Raspberry Pi2 ready and I’m just waiting for additional info to get started 🙂

    • Jon Lennart Aasenden
      October 31, 2015 at 3:10 am

      It’s excellent for nodeJS work. Just get a remote desktop running on it, install an FTP server and then add an FTP upload to the Smart Mobile project (post compile execute). I love working with the PI 🙂

  2. October 31, 2015 at 3:56 am

    re; node.js on Pi

    Yes, it works well.

    There should be lots of commercial possibilities as well.

    Raspberry Pi goes custom for industrial, commercial applications

    Raspberry Pi Customization Service

  3. October 31, 2015 at 4:00 am

    HOWTO: Boot your Raspberry Pi into a fullscreen browser kiosk

  4. October 31, 2015 at 4:15 pm


  5. March 1, 2016 at 6:44 am

    Today marks the release of Ultibo core an environment for developing software for devices without using an operating system. Whether you call it embedded, bare metal or internet of things, Ultibo core provides the services and features you need to create your ideas without starting from scratch.

    We’ve packaged everything you need to get started in a single simple download that includes the powerful Free Pascal compiler and Lazarus development environment, no need to hunt for tools or build from source, just start writing. Ultibo core includes internet connectivity, access to files, support for common USB devices and much more, with full support for both Raspberry Pi and Raspberry Pi 2 so you don’t need to spend a fortune on hardware.

    Ultibo core is free and open source so you can use it, share it and modify it to do whatever you can imagine. You’ll probably have a lot more questions so look around the site, check out the wiki and join in the forum to see if Ultibo core is what you’ve been looking for.

    The Ultibo project will be many things and Ultibo core is just the beginning, we hope you’ll be a part of it.

    • Jon Lennart Aasenden
      March 4, 2016 at 9:09 am

      Love it — already visited 🙂

  1. No trackbacks yet.

Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: