Node.js v4.1.0 on Raspberry Pi 2

1 Comment

Node.jsI had been experimenting with the world of Javascript on the server-side using Node.js.  I “fell off the horse” when Node.js had an identity and direction crisis and io.js was forked.  Node.js and io.js have reunited and the latest version is v4.1.  The latest “apt-get” version of Node.js as of 15 September 2015 is (something like) 0.6.  Not current enough IMHO. I also wanted to take advantage of the ARMv7 processor in the Raspberry Pi 2.  The best way forward was to figure out how to compile the latest version from source.


CouchDB 1.6 on Raspberry Pi

Add Comment

CouchDB_logoPer its website, Apache CouchDB™ is a database that uses JSON for documents, JavaScript for MapReduce indexes, and regular HTTP for its API.  One of its very cool and powerful features is that you can even serve web apps directly out of CouchDB.

CouchDB is available for Raspberry Pi via a simple, “apt-get install couchdb” BUT you’ll be installing version 1.2.  The latest stable version as of 1 September 2015 is 1.6.1.  While 1.6.1 is the latest, I found an excellent how-to for installing 1.6.0 at the blog, “Playing JEE on the Pi“.  The big difference between 1.6.0 and 1.6.1 is the fix of an admin password hash issue.  If you are using admin passwords, be aware that start-up under 1.6.0 could be an issue.  I have not yet had time to upgrade the install process for 1.6.1.

In any case, you can find very easy to follow install instructions in an article, “Installing CouchDB 1.6.0 on the Raspberry Pi” on the “Playing JEE on the Pi” blog.  Follow the instructions carefully and you’ll end up with:

pi@Pi-2 ~ $ which couchdb
pi@Pi-2 ~ $ couchdb -V
couchdb - Apache CouchDB 1.6.0

Note: if you have installed an older version of CouchDb using “apt-get” you should uninstall first!  You’ll see a few warnings with the new build and install but everything will install and function correctly.  Failure to uninstall a previous version will result in permission issues and incorrect start-up.

MongoDB on the Raspberry Pi 2


Raspberry Pi 2 After purchasing a Raspberry Pi 2, I decided to move some of my projects to it.  I also added an external 2.5 inch USB drive via a USB hub.  I store various sensor information in a MongoDB database and needed everything to run on the R-Pi 2.  I chose to stick with the well-supported Debian Linux port, Raspian, as opposed to ARCH Linux that I used on my old R-Pi B+, as the R-Pi 2 has a quad core ARMv7 processor that requires a new kernel.

I was back to hunting for a compatible MongoDB binary — or instructions on how to compile from source.  Research showed that MongoDB does not compile for ARM after version 2.6.3 :(  Searching the ‘net led me to the “facat’ blog.” This blog shows how to cross-compile MongoDB 2.6.3 for ARM.  Precompiled binaries are also available.  NOTE that the mongo shell does NOT work correctly on the R-Pi.  “mongod”, the server, does work fine and can be accessed programmatically or via a mongo shell from another (non-R-Pi) computer.  I use “mongo” on my Mac to connect to “mongod” running on the R-Pi 2.

more after the break


MathTerms does not launch under iOS 8

1 Comment

Unfortunately, I am hearing reports that MathTerms does not run under iOS 8.  I had tested it with prerelease versions of iOS but it fails to load and run under the latest iOS 8.0.2.  I am investigating and looking to fix…

In the meantime, I have suspended downloads from iTunes.


Unfortunately, I have not found a “quick-fix” for MathTerms for iPad.  I would really like to rewrite and enhance much of it, to enable working on iPhones as well as iPads.  Alas, I do not currently have the time to do this.  My day-job is taking all my time and energy.

I’ll try to work on a new version during the holiday season.  No guarantees :(

mongoDB 2.6 and Node.js 0.10.29 on Raspberry Pi

1 Comment

mongoDB on Raspberry PiA while back, I compiled mongoDB 2.1 for Raspberry Pi based upon instructions found on other sites and kind work by developers sharing code on Github.  I acquired a Raspberry Pi B+ and tried to compile mongoDB as I had done previously.  I quickly found out that the (old) compiled version (2.1.1) no longer functions under Raspian.

I had also been trying out Arch Linux for R-Pi as it was “lighter” and did not include all the GUI/X components that I don’t use.  I use R-Pi for more server centric things and use frame buffer apps for video and images (omxplayer, fbi, fim).

I saw a comment to a posting when Googling for new info for mongoDB on R-Pi.  It said, simply, “use Arch Linux”.  So I did!  I had a little trouble getting Arch Linux to run on the B+ but after a firmware update obtained by a “pacman -Syu” on a R-Pi model B, I could now boot and use Arch Linux on the R-Pi B+ :)

I did simple installs via “pacman -S” for “mongodb” and “nodejs”.  I now have full mongoDB 2.6.3 with utilities, Node.js 0.10.29 and npm 1.4.21 working just fine.  Sure mongoDB is pretty slow and can only handle 2GB DBs but I’ve partitioned my data into multiple DBs and combine queries and results using JavaScript.

My effusive thanks go to the Arch Linux Package maintainers!

Software for the Crosley Radio-Pi

Add Comment

I’ve been asked in emails and comments about what software I use on my 1948 Crosley Radio-Pi project.

I use the recommended Raspian distro of Linux based on Debian Wheezy.  I normally do not start or use the GUI/X.  Many Raspberry Pi users use a Linux distro oriented around XBMC such as  OpenELEC or Raspbmc.  XBMC is a software media player that allows users to play and view most videos, music, podcasts, and other digital media files from local and network storage media and the internet.

While I have a Logitech K400 keyboard with touchpad attached via a USB dongle for “local” use, I almost always ssh into the R-Pi from my Mac.  The Radio-Pi  is connected to my home Wi-Fi network via an Edimax EW-7811UN Wi-Fi USB adapter (US$10 at Amazon).

More info on my frequently used apps and utilities after the break.   More

Raspberry Pi meets 1942 Crosley Radio


crosley_radio_side_webA while back, I saw a picture online of a restored antique radio that caught my attention.  The accompanying  post described the process of restoration.  I’m not into radio restorations but I think the old wood radio cases are very “cool”.  I also recently contributed to a Kickstarter project for HDMIPi, an “affordable 9 inch High-Def screen for the Raspberry Pi”.  I thought that I might place the screen and R-Pi inside an old radio case.

After looking on eBay and craigslist, I could not find a suitable enclosure for the HDMIPi and paper mockups showed the screen to be a bit small at a distance.  I used my old original iPad as a test device for measurements and viewing.  I liked the viewing and pixel size of this its screen.crosley_radio_back_web

Well, the HDMIPi was going to be slow in coming (still is) and I saw (fairly) inexpensive 1024 X 768 iPad displays and driver boards on eBay.  I also found a old 1942 Crosley radio case that had a front cut-out that was very close to the iPad screen size.  The radio portion was not fixable so the case was reasonably “priced”.  I bid on it … and won.  I then had yet another project demanding time 😉


MathTerms for iPad download spike?


MathTerms ChartI was perusing Apple iOS documentation the other day and thought I’d check my “Sales and Trends” graphs for MathTerms for iPad. Downloads have been pretty flat for the last year as I have not updated or promoted MathTerms 1.x. Much to my surprise, on May 13, 2014, there were over 50,000 downloads!

I consulted Google and Bing to see if I could determine what caused this spike. The only significant event I could find was a mention of MathTerms on Pinterest. SO… I’m not sure if this social media mention was the cause or if it was something else.

In any case, I hope the App is helping students, teachers and/or parents 😉

MathTerms now available on Google play store


I *finally* finished my port of MathTerms for “generic” Android devices. I had previously done specific implementations for Amazon Kindle Fire and B&N Nook but now have a version for Android tablets and high-resolution smart phones. I reworked the layout code to detect screen resolution and orientation — to provide better layout and legibility. I also updated a few definitions based upon user feedback

Please check it out and download from Google play.

Raspberry Pi meets mongoDB


mongoDB on Raspberry PiI’ve been looking at noSQL databases in conjunction with Node.js. I have several Raspberry Pis that I have been using as development and test platforms. I have had good success with couchDB but have seen more examples and deployments using mongoDB. MongoDB is clearly developed on Intel processors but has been ported to non-Intel processors with different “endian”. Getting mongoDB to compile and run on a Raspberry Pi has been a challenge — as seen by the dearth of info when Googling. I did run across a couple of useful sites with links and directions on how to compile mongoDB on the R-Pi BUT both had a few problems. I’ve managed to get mongoDB version 2.1.1 working.  Specific instructions — More

Older Entries