Hi everyone.

Just a heads up that a project we're working on out here at hackerfarm, called TechRice, made it into Hackaday. If you have a chance, check it out here:

Sensor Net Makes Life Easier for Rice Farmers

Last week, Wrecking Crew Orchestra wrapped up their Cosmic Beat show which I helped out with. There were six performances in total, three in Osaka and three in Tokyo and it was a blast working on it with them. They recently published the opening set from the show which featured Wrecking Crew Orchestra, EL Squad. This was the group that made a big splash with "Tron Dance" in 2012.  

The Cosmic Beat show used quite a bit of modern stage technology including projection mapping and laser graphics. For projection mapping, they were using two 20,000 lumen projectors for the set projection and worked with a VFX company on the graphics for the mapping. We also worked with Shinichi Suzuki, aka "Laser Master", from Akari Center in Tokyo who did the laser work and normally does large concert venues. He's a topnotch laser guy and I learned a lot from him about how to operate lasers and laser scanners.

In the first part of the walkthrough, we learned some basic operations and hello world type programs to get the 900 LR board up and running. In this walkthrough, we’ll be building on what we learned previously and moving on to more advanced topics like radio configuration and power management.

Adding Commands to the Command Line

In the last section of the walkthrough, part 1, I introduced the cmdArduino command line library. It allows you to make sketches interactive from the serial terminal. Now, let’s expand on that a bit and add custom commands that we can call from the command line.

First, we’re going to write the command function that we’ll be calling from the command line. The function needs to be in a specific format but otherwise, the actual functionality is left up to you. The format is as follows:

void funcName(int argCnt, char **args)

I'm happy to announce that I just released the chibiArduino library v1.03. The library functionality is very stable these days and the main changes were minor bug fixes and updates. The main change is that settings for the Freakduino long range wireless board were added and tuned. I also did a major update to the chibiArduino usage documentation which hadn't been updated since 2010. It was painful reading through it and I really need to be more disciplined about maintaining documentation, especially since the design releases will be accelerating. For a full list of the changes for the latest release, you can go to the chibiArduino project page.

I'm also starting a new tutorial series called "walkthroughs" which are designed to be board specific and get people up and running on each board quickly. The first walkthroughs will be for the Freakduino 900 MHz Long Range Wireless boards and cover basic setup/usage, radio configuration, and power management. I'll be adding walkthroughs for the 2.4 GHz and 900 MHz boards soon since they're all cover the same topics and should be fairly similar.

That's about it for the announcements. Things are busy and exciting these days. Hope you enjoy :)

This is a walkthrough of the basic setup and usage of the Freakduino long range wireless boards. I originally designed the Freakduino board series and chibiArduino software stack so that it could be a simple way to setup a wireless connection without having to understand complex protocol details. This was a big drawback in many of the more advanced protocol stacks I've worked on where there was complex and detailed knowledge required just to send simple packets. I tried to be minimalistic in the design of the chibiArduino stack so that people who just wanted to do simple wireless communications could do it with many of the protocol details handled in the background.

In this walkthrough, we're going to go through a few examples to set up the boards and write simple code to start transmitting and receiving wireless data.

I received an unexpected surge in orders for the Freakduino 900 MHz Long Range Wireless boards due to mention on the Make Magazine site and also in various news outlets . I didn't plan a large initial run for these boards since I figured that they would mostly appeal to wireless sensor network enthusiasts. The interest was greater than I expected and the boards sold out quickly.

I'm now working with quick turn PCB houses to get 24-hour turnaround on the printed circuit boards which are the main bottleneck. I just got confirmation on another batch of boards which will arrive over the weekend and will ship out next week. The quick turn boards are only allowed green solder masks rather than the original black, but they'll be functionally identical. Thanks for your patience and I'm overwhelmed with gratitude that there's interest in a board like this. Thanks for all your support!

I'm proud to introduce the latest addition to the Freakduino family. This is the Freakduino 900 MHz Long Range wireless board. On the outside, it looks fairly similar to the other Freakduino boards, but under the hood, it's tuned to communicate over long distances. This board uses the same radio as the standard Freakduino 900 MHz board but adds a TI CC1190 RF front end. This boosts the transmit power from 10 mW (+10 dBm) to 500 mW (+27 dBm). There's also a low noise amplifier on the receiver which gives the received signal an +11 dB boost (>10X). Altogether, this chip adds +38 dB to the link budget which is massive gain in the wireless world.

I originally designed this circuit a few years back when I was looking for something to do long distance wireless sensor links, on the order of kilometers or tens of kilometers. 2.4 GHz gets a bit hard to drive that far since higher frequencies have more attenuation in free space as well as a difficult time going through objects. Lower frequencies have much less attenuation and are able to travel through obstacles more easily so they're ideal for situations where range is valued over speed. In sensor networks, data rate usually has a low priority compared to battery life and communications range.