Hi all.

I just wanted to write a post thanking everyone for all the support. I received a lot of great feedback and Tokyo Hackerspace received enough donations to buy another 100 solar cells for the solar lanterns. The solar cells and the PCBs are the most important because they can't be sourced locally. That brings us up to 150 lanterns that will get produced once all the parts arrive. I'm going to turn the hackerspace into a sweat shop. Definitely a good way for people to learn how to solder.

I'll be trying to get back to some semblance of normal life tomorrow. The news feeds should hopefully resume tomorrow as well.

Things were so crazy the past few days that it took a lot of mental and emotional stamina just to stay sane. I was luckily able to overcome the initial shock of the earthquake, tsunami, and then hearing that multiple reactors were melting down just around the corner. There was also the race to get emergency supplies since all bottled water and dry goods were selling out quickly on Saturday. One thing they don't tell you is that the reason you need to stock up on emergency supplies is because mass hysteria will create a shortage very quickly. On top of that, people were freaking out right and left (mostly outside of Japan) and needed to be calmed down. 

In the hackerspace, we got together last night and decided on the upcoming projects to deal with the events that have unfolded. We'll be assembling the lanterns which will probably be needed for some time. The northern region of Japan will probably not get properly wired up for electricity for quite some time so many people that stay in the region will be spending their nights in the dark. We're also going to start testing out long distance Wi-Fi connections to see if we can spread and distribute basic internet access for people to communicate. Hopefully we can get Asterisk and SIP phones going so that people can communicate easily, even if they don't have phone service. I've already stockpiled six wireless routers and made sure that they can be flashed with DD-WRT. 

To deal with the nuclear situation, we ordered two Geiger counters that were thankfully supplied by Reuseum. There is worldwide hysteria at the moment on radiation clouds and just about all commercial geiger counter outlets are sold out. He stepped in and sold us two nuclear facility grade geiger counters out of his stock and is having them FedEx'd to Japan. That will help us calm people down, both in the hackerspace, and Tokyo in general. We'll be UStreaming the geiger counters so that people can see the live readings in the short term.

Things have been crazy here in Tokyo for the past few days. After the Tohoku earthquake, there's been constant streaming of horrible visual images of the disaster on Japanese news. Along with that, there have been warnings of aftershocks up to a magnitude of 8.0, potential nuclear disasters, rolling blackouts, lack of transportation, and dwindling supplies in local supermarkets and grocery stores. It's a stressful situation in Tokyo which has over 25M people and life is anything but normal. It's a chore just to get to work and many feel powerless to do anything but watch the unfolding nuclear situation and hope that it can get contained before a disaster happens. In writing this post, it gives me an excuse to tear myself away from the fear mongering news streams which I'm constantly glued to.

In the hackerspace, we'll be holding our meeting tonight and will probably start hammering out plans to figure out how and where we can help. There are many things that are needed right now in the quake stricken area. There is no power, internet access is extremely limited, food and clean water are dwindling, and transportation to the area is limited. What we decide on will probably depend on what's needed and available at the time.

In any case, one immediate thing that can be done is to provide a source of light to people. With no electricity and limited supplies, flashlights and batteries are a luxury. In the hackerspace, we designed the Kimono Lantern as a solar rechargeable lantern to decorate gardens and patios with. However it has a much bigger use right now as the quake victims have no power and many are spending their nights in the dark. Also, parts of Tokyo will be suffering from blackouts until the power grid can get back to normal levels. With a major nuclear generating plant offline, this could take from weeks to months. 

Hi everyone. The FreakLabs store will be taking a two-and-a-half week break from Tuesday 2/22 to Sunday 3/13. I'll be going to the US to visit family and friends, take care of some on-site consulting, and more importantly get some much needed rest. The shopping cart will be disabled in that interval so purchases won't be allowed. I'll still be maintaining the news feed during that time, but I won't have access to my equipment and inventory so I won't be able to fill orders. I hope it doesn't inconvenience anyone and thanks for all the support :)

Hackaday is carrying the "Feeding the Shark" tutorial. It's nice getting a bit of pub every once in a while. Looks like I need to do more projects :)


I've just released the Chibi stack v0.91 and chibiArduino stack v0.51. For Chibi, I added the sleep mode function to the AT86RF212 boards. I also removed unneeded code that added a carriage return to the virtual COM port whenever it saw a newline. I found that this caused some strange errors and was actually not needed so I decided to strip it. The additional carriage return is automatically added in the chibi command line handler already. For both stacks, I fixed a bug where the radio required a delay when waking from sleep mode to allow the PLL to lock.

But probably the main feature I introduced in this release is the support for promiscuous mode. Being able to support promiscuous mode opens the door to an extremely powerful feature where you can turn the stack and hardware into an 802.15.4 packet sniffer. When used in conjunction with a protocol analyzer like Wireshark, it becomes an extremely powerful tool for protocol stack and software development, debugging, and security research. I'll be talking more about this in the next post. 

The chibiArduino Datasheet was also updated to include a Troubleshooting section and a matrix table for setting the power jumpers and switches on the Freakduino.

Also, the chibiArduino HOWTO guide was updated with the CHIBI_PROMISCUOUS parameter definition. 

Link to Chibi project page

Link to chibiArduino project page

Things have been pretty hectic last week with the intro of the Freakduino-Chibi boards and I was overwhelmed for a bit. However things are starting to stabilize and I've had the chance to put together an assembly tutorial for the boards. Actually, this tutorial is not only about how to assemble the kit portion of the board, but also how to set it up so that you can start to communicate wirelessly with it and make sure the board/s work.

I've also included a small tutorial towards the end that demonstrates the technique I use to solder through hole components. I debated about including it because there's a risk that people that try it out might burn their fingers. But I decided to include it because it's kind of a neat way to do through hole parts. Through hole parts can be a pain because you have to simultaneously hold the part in place, flip the board over (or tilt it at an angle), and then solder down the part. I always found this irritating so I tried different ways to get around this. When you're soldering through hole parts onto 50+ boards, you naturally start looking for shortcuts. Anyways, I like the technique that I'm showing because you don't need any type of fixture to hold a board or tilt it, and it lets me fix all the parts in place and then turn the board over and solder down everything in one go. Not sure if you'll like it as much as I do, but just thought I'd throw it out there in case someone finds it helpful. 

And in case you don't which board I'm referring to in this assembly tutorial, you can find the Freakduino-Chibi boards at the FreakLabs store :)

Hope you enjoy!


I was digging through my old design notebook today and came upon this little gem. It's the original design document I wrote for Chibi before it was actually Chibi. I was in Berkeley, California at a coffee shop and started sketching out what my ideal stack would be. It wouldn't be complicated and would just form a simple network to allow people to communicate with their designs. The original title was "The Super Simple Wireless Stack". Ugh...you can now see how creative I am. Anyways, after sketching out this document, I spent the next two weeks writing the stack and testing it. I still remember telling my sister I was going to call it "midget" and her disapproving look. From that, it turned into Chibi.

Here's a scan of the document with my horrid handwriting:

Wow, the chibiArduino project actually made it on to Make magazine. I'm happy and a little bit nervous since its more attention than I expected. But thanks for all the support!!!



It's been approximately one year since the Chibi wireless stack has been released and its been quite an adventure. The stack has been pounded on by quite a few users and they've provided some excellent feedback and recommendations. At version 0.90, the stack is basically stable with this release incorporating some new features and bug fixes. 

I'd also like to announce the first release of chibiArduino, the Arduino port of the Chibi stack. Chibi was originally designed for hardware hackers and the open source hardware community as an easy way to add wireless communications to their designs. The dominant platform in the community is the Arduino and so it was natural to port the software to it. I only wish I had done it sooner.

The chibiArduino project has the same code base with minor modifications specific to the Arduino environment. The cmdArduino code was integrated into chibiArduino since a command line is a very useful tool and used quite often when dealing with wireless. There are also two additional files at the toplevel that serve as a wrapper to the main Chibi functions and are needed by the Arduino environment. I decided to keep the projects separate so that it was clear which code was specific to the Arduino. To use the chibiArduino code, it just requires unzipping the source files inside the "/Arduino-XXXX/libraries" directory where the Arduino-XXXX stands for the version number of the Arduino build.  

Here are the main new features and bug fix:

I’m happy to announce the release of my latest design, the Freakduino-Chibi.Yes, there has been mixed reviews about the naming. It’s ranged from “seriously?” to outright laughter. I decided to go with it though because it does express two things that I think are important. The first is that it’s an Arduino-compatible board and the second is that it’s related to my original Chibi boards .

Before I get into the actual board, I should probably talk a bit about the background behind the design of the boards. The original Chibi protocol stack and Chibi boards were meant to be an entry level way for people to get involved in wireless sensor networking and data collection. But after observing people in Tokyo Hackerspace and in my microcontroller workshops, I realized that there were still some things missing.

I recently gave a talk on hackerspaces at the New Context Conference in Tokyo . The theme of the conference was social media marketing so you can pretty much assume I was outside of my normal circle of electronics geeks. We were actually invited to participate by a member of CrashSpace , a hackerspace in LA, so I figured I might as well talk about hackerspaces in the context of a physical social network. Needless to say, I deviated from the theme pretty quickly. 

I mostly talked about why hackerspaces exist, why they're needed, and what goes on inside Tokyo Hackerspace. Hackerspaces are really an interesting phenomenon that has kind of blown up in the past two years. This is a graph of the number of hackerspaces started over time from hackerspaces.org. 2010 isn’t finished yet, but it already looks like it will outpace the number of hackerspaces started in 2009:


 Here’s a graph of the total number of hackerspaces:

I haven't updated the blog in awhile, but that doesn't mean things aren't busy here in the lab. I recently did a video project for Tokyo Hackerspace on a guide to Akihabara . Surprisingly enough, it made the rounds on HackaDay , Make , Slashdot , and Engadget . It was pretty crazy and I completely didn't expect that kind of response. It just shows that there isn't a lot of information on what really goes on in the back streets of Akihabara. Most of the shops are pretty hard to find and I get so many requests for a tour of Akihabara that we decided to do the video.

The Internet of Things is a buzzword that’s generating quite a bit of hype at the moment. I’m seeing it all over the place to describe all types of disparate things but mostly being used as a marketing term. I suspect that the majority of the people that use the term don’t fully understand its meaning or how it will be implemented/used. That’s why I was very pleasantly surprised when I picked up the book “Interconnecting Smart Objects with IP” by Adam Dunkels (author of the ContikiOS, uIP, lwIP, and general programming extraordinaire) and JP Vasseur (distinguished engineer at Cisco, co-chair of IETF’s ROLL working group, and one of the chairs for IPSO).

I don’t really know JP Vasseur, but I’ve been an admirer of Adam Dunkel’s work since I started in wireless sensor networks. In my mind, ContikiOS is one of the best operating systems/environments ever designed for wireless sensor networks, or what I like to call, "engineering hell". But that’s a different story.

Before I get into what I thought of the book, I think it might be appropriate to give a bit of background on why I’m writing this post. In my opinion, the internet is basically a set of standards that everyone agrees to abide by. That standardization is what allows manufacturers and users to adopt the technology with confidence, knowing that they won’t be the only ones or part of a minority of people using it. That also inspires confidence that time spent learning the technology and standards, how to use it, and developing applications for it won’t be wasted. I think this is the reason why the internet became so popular within the last however many years/decades.