End, Edd and Edison

Hello Friend(s).
Been a while – been busy with the end of the compulsory Youth Service year, which concluded (for me) a few hours ago. That’s right folks, I’m done with NYSC and free as a bird. Its been a great, memorable year…..
As mentioned in my previous post, I received an Intel Edison Breakout for Arduino kit courtesy of Element14. This happened a month or two ago, but I barely had time to really settle down with it until recently. I will be hosting a number of blog posts on the Element14 Intel Community, detailing the ins and outs of building a vehicular robot capable of being controlled over WiFi. The first post, which is an unboxing, can be found here.
The Intel Edison is a pretty capable SBC – it has 1GB of RAM and two Atom CPU cores running at 500MHz each, and a Quark microcontroller running at a 100MHz. The onboard microcontroller is no BeagleBone PRU, but runs an RTOS called ViperOS, offering (presumably) (hard) real-time capabilities to the Edison. That’s something I’m hoping I’ll get a chance to play with. Unlike most other SBCs, the Edison comes with WiFi and BLE onboard, which is pretty cool (look ma, no hands!). It has no video capabilities, which I personally don’t mind – I like my SBCs like I like my chickens – headless…
That was a bit too sinister.
It has a single host-sized USB port, and a USB OTG port. Interestingly, you can actually run the Edison off of the juice from a PC USB port (technically this is possible for other boards, but really not recommended). This is done by connecting the Edison to the PC via the OTG port, which also serves as a USB gadget interface, so you get a Mass Storage device and a Network adapter, kinda like TI’s BeagleBone. You'll need to set the little toggle-switch between the OTG port and the Host port to the position closer to the OTG port for this to work though. When using the host-sized USB port, you'll need to set the little toggle-switch between the OTG port and the Host port to the position closer to the Host port, then provide an external DC power source between 7 and 15V. There are of course GPIOs, arranged in the familiar Arduino 1.0 form factor, exactly like the Galileo. There’s an FTDI-based serial debug port below the OTG port, which gives access to the shell if working off-net. Pretty handy. The power consumption figures quoted on the net seem pretty impressive, and working on the power supply for this bot will be quite interesting, I think.
For me, the most killer feature of this board (aside from the WiFi/BLE bit) is the 4GB onboard flash memory it comes with. There’s an SD card slot quite alright, but by default the board will attempt to boot from the internal flash memory, so boot times are pretty impressive (slightly better than SD cards). Moreover, flashing a new OS is rather straightforward and takes about as long as imaging an SD card, so its all good. Right about now, I’m working on getting a suitable OS up and running on the board (I don’t really like Yocto, so I’m working with Debian Jessie) with all the required kernel modules and support software. So far, so good, so my next post will discuss the process of bootstrapping the board with a Debian rootfs and tweaking the kernel as necessary. Oh, let’s not forget that the Edison CPU cores fully support the x86 instruction set, so there shouldn’t be any trouble (segmentation faults) when compiling stuff on this board, but time will tell.
In the meantime…Pictures!!
“The Power of the (Edi)‘son, in the palm of my hand..”
*Evil grin a la Doc Ock*


Popular posts from this blog

Enabling SPI1 on the Raspberry Pi B+/Zero/2/3

Bitbanging SPI on the Raspberry Pi (via spi-gpio)

Getting Started with Logic Analyzers and Pulseview