BeagleBonesBlack Development using a Cloud9 workspace

workspace
nodejs

#1

Sorry for the TL;TR - but worth it for Beagle Board Black Nodejs/JavaScript Developers

I have been developing software for the BBB for a while now and have discovered that BeagleBoard seems to be in some disarray about the support of the Cloud9 IDE running on their BeagleBoard (BBB) systems. We Nodejs/JavaScript (ECMAScript) developers’ understand that BeagleBoard was born in the world of Python - competing with Arduino, Raspberry Pi, etc. and is a paradigm shift to be using JavaScript as a programming language. (although - the nature of JavaScript’s asynchronous processing is natural for such systems!)

Note that when reading my observations below, please understand that I have the greatest appreciation for both Cloud9 and BeagleBoard support. Their employee’s and community are awesome! Also - I love Python. Have been developing with it since 1995! Back when I was fighting COBOL programmers to give it a try. (wow - that ages me or what!)

My hat is off to BeagleBoard to introduce Nodejs and JavaScript into the world of embedded micro computers by pre-installing Cloud9 IDE on their system! Which quite frankly, works - but is prone to various issues that are specific to BBB; such issues are beyond the scope of Cloud9 to resolve, while Cloud9 IDE issues are beyond BeagleBoard to resolve.

So us new breed of embedded micro-computer developers using the Cloud9 IDE to develop JavaScript software on the BBB are pretty much left to work things out on our own - when it comes to the Cloud9 IDE; sadly, BeagleBoard directs us to Cloud9 - and conversely Cloud9 directs us to BeagleBoard. Such a quandary.

IMHO, For either Cloud9 or BeagleBoard to deny this - well, is basically ignoring the elephant in the room. The natural asynchronous(ness) of ECMAScript leads me to believe that it will be a big player in the ‘Internet of Things’ - which the BBB is but a beginning.

I am proposing that instead of using the Cloud9 IDE on the BBB for software development - that developers use a Cloud9 IDE Workspace to develop software for the BBB. Once built on Cloud9 - Git pull/push the software onto the BBB. Thus BBB would not have to run the IDE, The IDE runs on a Cloud9 account used to develop the software for the BBB. Thus having Cloud9’s great support - and the BBB only has to run the released software! ( BTW - I do this all the time right now - develop in a Cloud9 Workspace and push/pull the repo to RedHat OpenShift, Amazon AWS, MS Azure, etc. )

Brilliant! Well, not so much… Unlike OpenShift, AWS, or Azure; the BBB has those pesky GPIO Pin interfaces. To develop software for the BBB on a Cloud9 Workspace would require - a slug of the require('bonescript') module - the slug which would mimic (for example, display on the console) the inputs and outputs that would be expected from the actual GPIO Pins on the BBB. A change to the package.json file would be the only thing required to load either the slug (in dev) or actual bonescript in production.

So, Finally - what is your opinion? Is building a (‘bonescript’) slug allowing BBB development to be done on a Cloud9 Workspace it worth doing? Or should we wait for BBB to support Cloud9 IDE on BBB? Or wait for Cloud9 to support the IDE on BBB? I believe to expect either is kinda doubtful in the near future.

Please reply and thanks for reading!
@PotOfCoffee2Go


#2

You may be interested in checking out AWS’s latest options for IoT - I think they have Greengrass* or something similar in preview, where you could deploy and execute Lambdas to your devices directly from the cloud.

*https://aws.amazon.com/greengrass/


#3

Thanks for the reply. I do plan on using AWS IoT as I already use other Amazon services such as EC2, S3, etc. which IoT is a gateway. I’ve started working with node-RED running on the BBB to access AWS, Google, Trello, Social media, etc.

AWS Greengrass is under AWS ‘preview’ mode and I applied - but they want you to be a business. The work I am doing right now is all prototype stuff.

Also found the latest BBB build(s) have Cloud9 issues as discussed in No autocomplete, nor input menu. After following the instructions, Cloud9 IDE started working awesome on the BBB which was solved by the Community :slight_smile: - and hopefully will be implemented in future BeagleBoard.org image releases.