Common Linux tools on Android without root by installing BusyBox

install-busybox-on-unrooted-android

[Adam Outler] shows us how to expand the Linux tools available on Android without rooting the device. He does this by installing BusyBox. The binary is copied to the device using the Android Developer Bridge. He then opens an ADB shell, adds execution permissions to the binary, and runs it. BusyBox calls itself the Swiss Army Knife of Embedded Linux. It provides a set of very common tools which you’ll find useful in your tinkering. The one that [Adam] shows off in his video is the vi editor, but the basics that make a shell work are all there like: ls, mkdir, grep, dmesg, mount… you get the point.

So what are you going to do with your unrooted device now that you have these commands at your disposal? That’s really for you to figure out. [Adam] continues his demonstration by installing a package that does require root access. It’s BotBrew Basil, which adds apt-get and a few more complex packages. He then uses vi to write a C++ Hello World program, then compiles it and runs it. So if you’re looking to do some development on your phone this is one way.

[Read more...]

Discrete 6502 processor sucked into Linux by a BeagleBone

Often when we see projects using embedded Linux we think of them as not being hardware hacks. But this is a horse of an entirely different color. [Matt Porter] is leveraging a little known feature to directly access a 6502 processor from inside a Linux environment. In other words, this hack lets you write code for a 6502 processor, then load and execute it all from the same Linux shell.

The project leverages the best parts of the BeagleBone, which is an ARM development board running embedded Linux. It’s got a lot of GPIO pins that are easy to get via the boards pin sockets. And the design of the processor makes it fast enough to work well as a host for the 6502 chip. Which brings us back to how this is done. The Linux kernel has support for Remote Processors and that’s the route [Matt] traveled. With everything wired up and a fair amount of kernel tweaking he’s able to map the chip to the /dev/bvuart directory. If you want all the details the best resource is this set of slides (PDF) from his talk at Embedded Linux Conference – Europe.

This is one way to get out of all that hardware work [Quinn Dunki] has been doing to build her own computer around a 6502 chip.

[Thanks Andrew via Dangerous Prototypes]

Mesh networking with multiple Raspberry Pi boards

Since he’s got several Raspberry Pi boards on hand [Eric Erfanian] decided to see what he could pull off using the robust networking tools present in every Linux installation. His four-part series takes you from loading an image on the SD cards to building a mesh network from RPi boards and WiFi dongles. He didn’t include a list of links to each article in his post. If you’re interested in all four parts we’ve listed them after the break.

He says that getting the mesh network up and running is easiest if none of the boards are using an Ethernet connection. He used the Babel package to handle the adhoc routing since no device is really in charge of the network. Each of the boards has a unique IP manually assigned to it before joining. All of this work is done in part 3 of the guide. The link above takes you to part 4 in which [Eric] adds an Internet bridge using one of the RPi boards which shares the connection with the rest of the mesh network.

If the power of this type of networking is of interest you should check out this home automation system that takes advantage of it.

[Read more...]

Linux on a Nspire CAS CX Calculator

It’s great to see Linux running on a device in a way that was never intended. [tangrs] has successfully run a Linux kernel on the ARM based Nspire CAS CX graphing calculator. He’s developed an in-place bootloader that allows a kernel to be loaded from within the stock Nspire OS. It also allows for peeking and poking at memory for debugging.

[tangrs] also managed to get USB host mode working on the calculator. This allows for a USB keyboard and Wifi dongle to be connected. At this point, the calculator can connect to the internet and browse using a text-based browser: Links. The calculator runs a SSH server for remote access, and graphical browsing is in the works.

It looks like this calculator is on the way to being a handheld Linux device. All of the source for the kernel and bootloader are available on [tangrs]‘s Github and updates on his blog. After the break, check out a video of text-based browsing using a full keyboard.

[Read more...]

Beginner’s look at On-Chip Debugging

As your embedded applications get more complicated an On-Chip Debugger will save you a lot of time when things don’t run quite right. On-Chip Debugging (OCD) is just what it sounds like — a way to run your program on the target chip that lets you pause execution to examine values and change them if need be. The Arduino has no built-in method of using OCD, but the AVR chips used by the boards do. The caveat is that you need a proper AVR programmer to access the Debug Wire protocol, or a JTAG interface for some of the larger chips. In this case I’m going to be using an STM32 Discovery Board to give you an overview of OCD. But this will work the same way for any chip that has hardware debugging capabilities. Many IDE’s have debugging support built right in so that you can use a nice GUI as you work. But often these are just a front end for the command line tools I’ll be using. Join me after the break and we’ll get started.

[Read more...]

Machine offers cheap advice – charges more for something profound

advice

[Nick Johnson] recently wrote in, sharing a neat project he put together in his spare time.

Our readers are most likely familiar with the ubiquitous “fortune” program that ships with many *nix distros, offering cheeky comments and quotes with the press of a button. [Nick] thought it would be cool to build a fortune telling machine using the app, resulting in the handsome device you see above.

The laser-cut wooden case is home to a Raspberry Pi which does the heavy lifting, a coin acceptor, an LCD screen for displaying the device’s status, along with a SparkFun thermal printer. Upon feeding the machine some money, the user can press the “Advise Me” button, prompting the RaspPi to present a printed fortune from its vast database of sayings. [Nick] took some time to do some rough categorization of the fortune databases, enabling the machine to offer more substantial content as the user inputs more coins.

Check out the video below to see [Nick's] fortune telling machine in action.

[Read more...]

QR code opens doors to you

[Jeremy Blum] wrote in to share his LibeTech QR Code Door Lock project. He developed it during his Senior year at Cornell University along with three of his classmates. It seeks to move away from magnetic card locks in favor of optical locks that authenticate based on a QR code.

The hardware he’s using here is definitely cost prohibitive, but we’re sure the concept could be greatly simplified. In this case a BeagleBone running embedded Linux monitors a feed from a webcam. When it detects a QR code it compares it with a database of approved keys and will unlock the door for you.

There are problems with this technique, one being that an attacker might be able to get a usable photograph of your key without you knowing. But the majority of hotel locks in use right now are even less secure than that. On the upside, the key to your room can be emailed to you for use on just about any device with a screen, or printed out on a piece of paper.

You can find [Jeremy's] presentation video embedded after the break.

[Read more...]