Community Baked Pi
Community Baked Pi

RaspberryPi Updates

Back in December of last year, I wrote a newsletter article chronicling my efforts to produce a version of LiveCode that would run on the RaspberryPi. As a result, releases of LiveCode 6.5 and 6.5.1 for the RaspberryPi were created but things beyond that petered out as 7.0 took up most of my time.

 

Now that LiveCode 7 is now at the Release Candidate stage, I have been able to spend a little more time with the RaspberryPi. Instead of continuing with the 6.x series of LiveCode, I have focussed my efforts on the new 7.0 engine as it includes a number of changes that greatly simplify producing builds for the Pi.

 

One of the consequences of this is that LiveCode now runs without requiring any re-configuration; previously, the colour depth would need to be set to 32-bit otherwise LiveCode windows wouldn't draw. Now, the default 16-bit framebuffer just works (though some things like window shapes and window transparency still require 32-bit graphics to function correctly).

 

Community-Supported

Another notable change is that the RaspberryPi standalone engine is now available in the Community Edition IDE on all platforms - just look for "Linux ARMv6HF" in the standalone settings. Similarly, the IDE on RaspberryPi can build standalones for Linux (32-bit or 64-bit x86 and, of course, RaspberryPi), Windows and OSX.

 

These changes might suggest that the RaspberryPi is now an official platform for LiveCode but this is not quite true. We are considering the RaspberryPi to be a secondary or "Community-Supported" platform - we'll build the Pi engines alongside the rest when we do a build but it won't see as much testing effort as our other platforms.

 

Any and all efforts from the LiveCode community to test new releases would be greatly appreciated, as would be any bug fixes or feature enhancements.

 

Community building

Of course, this requires there to be a RaspberryPi-using LiveCode community in the first place. I met a number of people at the LiveCode conference that were already making use of LiveCode on the RaspberryPi, with some impressive results. There were also quite a few attendees who told me that they have plans to start using the RaspberryPi for their own projects, including some who hadn't heard of the Pi before.

 

A large number of people in the LiveCode community have an interest in educational uses for LiveCode. Similarly, the RaspberryPi community has a strong focus on using the devices for computer science education. Given this overlap, we need to evangelise LiveCode to the RaspberryPi community and the RaspberryPi within the LiveCode community. The more people we get involved with it, the better the software will be.

Future directions

Ubiquitous LiveCode

As I have said to a number of people previously, my personal goal is that, one day, LiveCode will come pre-installed with the RaspberryPi Linux distributions, alongside Python and Scratch. It will be a challenge getting there, but I think the effort is worthwhile.

 

As a first step, we need to better integrate LiveCode with the package management systems in common use. Because Raspbian seems to be the most widely-used distribution on the RaspberryPi, it seems like a good starting place. Building the .deb installation archive is a simple-enough process; the difficulty is getting it accepted into the distribution.

 

RaspberryPi-specific features

The RaspberryPi provides a number of features not found on "normal" Linux installations - GPIO pins, a digital camera interface and lots of hardware boards extending these features. LiveCode currently does not have an easy way to interface with this - for some features, access can be gained through special files in the `/proc` filesystem bit this is round-about and ugly.

Ideally, this functionality should look like any other LiveCode syntax. This can be done either through a library stack to be included in other projects or, when LiveCode 8 becomes a reality, through an extension. Some people have already created the former and I intend to attempt the latter when it becomes possible.

 

Android deployment

One thing that the existing desktop IDEs can do that can't currently be done on the RaspberryPi is deployment to an Android standalone. This is because there is no ADK (Android Development Kit) available that will run on the Pi. While the Pi is slower than many (or perhaps most!) Android devices available today, it would be fantastic if we could get one running as it would allow direct deployment of Android apps from LiveCode on the RaspberryPi.

The major hurdle is that the Android ADK is a very complex collection of software with very substantial requirements on the host system when compiling it from source. If we can get it done once, however, we can then package that for deployment anywhere.

 

A Call to ARMs

(Excuse the terrible pun). Getting LiveCode running on the RaspberryPi was the easy part of this project. Now comes the difficult bit. There is too much work here for one person and I'm going to need help from the community. If you are an ADK expert; if you know anything about getting packages into Raspbian; if you just want to share your ideas, please get in touch! We have a subforum on the LiveCode message boards where you can chat about anything RaspberryPi related.

 

The other thing you can do to help is to just use it: get LiveCode for RaspberryPi here.

 

Raspberry Pi LC

About The Author
Fraser Gordon
Fraser Gordon is a member of the LiveCode Development Team.
Read Fraser gordon's Blog
Other Articles
RunRevLive.14 Report
   12.09.2014
Get a flavour of RunRevLive.14, with some great photos of sessions, staff, attendees and the surroundings in San Diego.
Read more
 
 
Community Baked Pi
   12.09.2014
What's next for the Raspberry Pi edition of LiveCode? This popular little platform is making great strides with the help of the LiveCode Community.
Read more
33 Voices, Maths and the BBC
   12.09.2014
See Kevin Miller's interview with 33 Voices and learn how a LiveCode app is taking the pain out of maths across the globe. 6.6.3 is released with a patch for iOS builds.
Read more
Breakpoints In LiveCode
   12.09.2014
If you haven't worked out how to use breakpoints in LiveCode, this handy tutorial will show you how it's done.
Read more
 
Thank you for your time.

 

© LiveCode 2014