BUG Community

Welcome! Log In

How To

BUG Software R2.1.0 (based on linaro 2.6.35) now available

Greetings BUGgers!TL;DR: http://wiki.buglabs.net/index.php/Changelog_2.1.0Release R2.1.0 is available for download.  This is a major release, utilizing a new kernel and networking API, intended for general customer use with BUGbase YT (2.0) hardware.   The build artifacts can be found at: http://dauber/buildbot/repo/full/54f94d5/  (internal)andhttp://bugcommunity.com/downloads/files/2.0/Releases/R2.1.0/ For instructions on how to upgrade, please see:  http://wiki.buglabs.net/index.php/Software:Update_Your_BUG_Memory_Card An SDK release is targeted for compatibility with this release.  Stay tuned for an email regarding the SDK. There is no longer a redmine roadmap associated with this release, as redmine.buglabs.net is volatile at...
read more

Processing & BUG

While using processing on ARM (via openjdk-6-zero) has been done for quite some time, (even using the Arduino IDE), we just got it working on BUG.Just running sketches couldn't be easier.  Processing 1.5.1 allows sketches to be exported as applications:After hitting that, you should see the Sketch's jar in tie .pde's directory.  scp that up to bug using your favorite scp client, and just:java -jar Sketch.jar.Here's the pointillism example (in processing-1.5.1/modes/java/examples/Basics/Image/Pointillism/):Running the IDE on BUG is...
read more

Open Source head to head

As part of research and development (aka R&D to those in the industry) I ordered an Ultimate Beagle Gadget Pack from our friends over at Liquidware.  As one of the new wave of Bug-gneers that joined this winter/spring, I want to get a good understanding of our friends and competitors in the embedded Linux world.  Of course, as an open source company many of our friends our our competitors, which is really cool. It's Especially...
read more

Behind the Scenes: Managing Applications

BUG Labs works hard to make the process of writing embedded software easy. You can write a program using the Dragonfly SDK and send it to a BUG on the network. No messing with JTAG cables, writing to SD cards and rebooting, or even using scp. BUG has got your back! But what's really going on behind the scenes?The process works like this:Find BUGs on the network.Create an application JAR file.Remove the old instance of...
read more

Native SDK for BUG 1.x Devices

Building native applications for BUG requires a toolchain configured for the specific hardware architecture, as well as all the development libraries your application may require.  Poky, the build system used for the BUG 1.x line of devices, provides these tools and libraries as part of the meta-toolchain package.  For convienence, this toolchain is provided as a download for x86-64 machines so that one doesn't have to build all of it from scratch.  Here are quick...
read more

The Whiteboard Pattern

There was a time when computer programs were expected to run unattended. A program was a set of instructions and input data that was fed into the computer, and if everything went well some output data came out of the other end. f(x) = y. Oh, those halcyon days. Today's programs are expected to react to all kinds of events. Sometimes those events are a result of user interaction, like button presses and mouse clicks;...
read more

Adding Commands to the OSGi Shell

Usually you will want to interact with your BUG application using a GUI, a web service, or an interface provided by a module. But sometimes you want to be able to tell an app to do something without having to create a UI or a web service. The OSGi console provides an easy way to talk to a running app, or any other OSGi bundle. This document will explain how provide new commands that can...
read more

Use a database on BUG

Here's a quick howto on using Apache Derby on the BUG 2.0 to get hot RDBMS action.Step 1, download the Apache Derby binary package from http://db.apache.org/derby/derby_downloads.html.  I chose the 'lib' distribution.  Unsure if Derby supports running from an OSGi context, I used the handy bnd utility to check. $ bnd print lib/derby.jar [MANIFEST derby.jar] Ant-Version Apache Ant 1.7.1 Bundle-Activator org.apache.derby.osgi.EmbeddedActivator Bundle-ManifestVersion 2 Bundle-Name Apache Derby 10.7 Bundle-SymbolicName derby Bundle-Vendor Apache Software Foundation Bundle-Version 10.7.1000001.1040133 Class-Path derbyLocale_cs.jar...
read more

OSGi service binding without throwing in the kitchen sink.

 In the BUG 2.0 software release we've added an API to allow for easy service binding with minimal code.  The API is in com.buglabs.application.ServiceTrackerHelper and the primary actor is the ManagedRunnable.  To illustrate the usage of the API consider this example:We will create two bundles, one as an API bundle and another as the implementation bundle.  For brevity, the API bundle will also create some services so that we can bind them in our implementation bundle.  I...
read more