The Kano computer is a "gamified" Raspberry Pi with special OS and other features that make it easier for young kids (it has been featured many times at instructables). The PiStorms is a hat for Raspberry Pi that allows the use of Lego Mindstorms NXT and EV3 motors and sensors.
We love both Lego and Kano, so we decided to put them together.
After contacting the developers of Kano and PiStorms they told us that it should be possible to install PiStorms in Kano (thanks to both teams!!). This is because Kano OS is essentially a Raspbian-Jessie modified OS and Raspbian is the usual OS for PiStorms. It is true but there are a couple of subtle points that we document here to help other interested people.
Step 1: Burn a SD Card With KANO OS
The first think to notice if you have a Kano computer is that you will need to burn a new SD card.
The reason is that you need to install PiStorms soft that expects to have only one user with username "pi", whereas in Kano you have multiple users with the names you prefer.
We followed the instructions available here to burn a new SD card with Kano OS. Instead of using the Kano OS english version, we copied into the SD card the new Spanish-Argentinian version available here
One the SD card is ready, simply boot the Raspberry Pi with the Kano OS card. The OS will decompress and install. During this process, the screen will show you several explanations about bits & computers to keep you entertained while waiting.
Once the OS has decompressed and installed, the terminal will ask you for your name, which is going to be the username. Enter "pi".
Step 2: Install PiStorms Software
Once in your desktop, the computer will ask you to configure the wifi connection, as shown in the image. Simply go to the wifi settings (you will use your wifi dongle if you have RPi 2 or the build-in wifi receptor for RPi3).
Now you can connect to the internet and download the PiStorms software. Using the default web browser (Chromium), go to the repository here and download the compressed file with the latest version of the software (in our case, 4.010).
Double click onto the downloaded file and extract the contents at the folder /home/pi/. It will create a new folder called PiStorms.
Open a terminal shell in this folder and install as follows:
chmod +x setup.sh
It will install the software, hopefully without errors. At the end, it will ask you for a password for VNC (remote screen connection), which is sometimes useful. Enter a password (between 6 and 8 characters).
Now everything is ready for PiStorms. Shutdown your Kano.
Step 3: Run PiStorms
Now it is time to use PiStorms. Remove the Kano (Raspberry Pi) computer card from its case and attach the PiStorms to the computer as explained in the PiStorms instructions.
Now, boot the PiStorms by clicking the "GO" button. You may have a screen or TV set connected to the computer during this first boot to follow how Kano OS is booting up correctly.
At the end of the booting process, your PiStorms screen will show the usual PiStorms menu and your screen will show the usual Kano OS desktop. You can work directly with the Kano connected to a screen and program using for example Scratch or python to control motors and sensors attached to PiStorms. Or you can remove the connection to the screen and work using the web browser from any smartphone or tablet (or another computer) to program PiStorms robots in python or blockly or to control/test directly lego mindstorms motors and sensors. We tried with all these options, and the best choice depends on the project at hand (testing a sensor or a mechanism or building something that moves) .
The first tests of Kano-PiStorms-Lego made by my son Jofre (11 yrs) are quite promising!
A couple of things to take care. First, always shutdown carefully. In our case, when a robot was climbing an obstacle one of the batteries got detached from connection, the system shuted down incorrectly and we got data corruption at the SD card and we had to format again. Second, updates of the PiStorms software make a copy of the full software from the previous version. In one update our SD card got full and we had to start over again, so we now use a 16 Gb SD card to be in the safe side (instead of the typical 8 Gb card).