Home arrow Blog arrow Chibi arrow Chibi v0.91 and chbiArduino v0.51 Release
Chibi v0.91 and chbiArduino v0.51 Release | Print |
Written by Akiba   
Tuesday, 28 December 2010

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

Hits: 22847
Trackback(0)
Comments (13)Add Comment
...
written by Kevin Townsend, December 29, 2010
Great job! That should be fun to play with ... and not just because it's called Promiscuous mode smilies/grin.gif It's definately a great idea to use Chibi as an inexpensive packet sniffer. The Chibi boards were already pretty interesting, but this definately moves it up a notch.
report abuse
vote down
vote up
Votes: +1
...
written by DoubleYou, February 28, 2011
Wonderful board, just found it looking for a good wireless starter Freeduino. I'm looking at making a derivative of this, because it has quite a lot of features and I'd like to make really a lot of them, therefore I need to bring down cost even more. My idea is to make the wireless unit a pluggable one (separate, not as a shield) as you don't always need it. Also, when thinking of standalone systems, the whole USB setup is costly for each board so I like to make that a plug-on too (many boards then only need one USB programmer setup board).

In this quest I was looking for the parts you used and I used this datasheet for it. In this I noticed the following important mentions:
- C19/C21 is listed in the parts list as 100uF, but on the board you use 47uF elcos.
- Y1 doesn't mention the capacitance (8pF), in case someone makes his own board this is necessary.
- FB1 doesn't mention any specs, only size. This should be a 220 ohm @ 100 MHz one.
- The amount of 10 kOhm resistors is incorrect, should be 11 instead of 14.

Because I'm making a derivative, can you point me to the specs of header placements which are requirements for the Arduino?
report abuse
vote down
vote up
Votes: +0
...
written by Akiba, February 28, 2011
Thanks and thanks for the feedback!

For the parts list, on C19/C21, I usually populate 100 uF caps. On the schematic, I list 47 uF though. There's quite a bit of flexibility for these values but I'd say 47 uF is probably the minimum capacitance. C21 is actually not really needed since C19 is the main charge dump for the boost circuit. I might take that out in future designs.

For Y1, ie: the radio crystal, the main factor to look at is frequency stability. This is important in communications and a 15 ppm crystal should be used. I use the NX3225 series crystals, but there are others out there that are probably cheaper. The NX3225 is just easier to get since they stock it at Digikey.

The ferrite bead is used to block high frequency noise from coupling into the analog power rail. This is important for the radio which uses the power rail as a reference voltage. Any noise on the radio's analog power rail will show up as a decrease in receiver sensitivity. In general, the ferrite bead can be anything that shows a sizable impedance above around 50 to 100 MHz.

For the 10k resistors, looks like the quantity on the BOM is incorrect. I'll need to change that. The schematic should show the correct amount and where the resistors go though. Again, 10k resistors are kind of arbitrary. You can use any value resistor that can reliably tie a signal to the correct value. The main tradeoff is in power consumption and noise immunity.

For the Arduino header placements, I downloaded the Eagle files from the Arduino website and did the measurements in Eagle. I think there is a document somewhere where they have the header dimensions as well, but measuring directly from the PCB layout is the most accurate way to get the measurements.

Good luck with your project!
report abuse
vote down
vote up
Votes: +0
Engineer
written by hodge, September 21, 2011
I bought 2 sets of chibiArduino. I tried to compile chibi_ex9_wsbridge but failed. The IDE(Arduino 0022) said "Serial" undeclared (first use in this function). It happens in chb_cmd.c. Can you please give me some hint to solve this issue?

I can compile and run chibi_ex4_cmdLine without problem. It uses Serial as well.

Thanks in advance.

Hodge
report abuse
vote down
vote up
Votes: +0
...
written by Akiba, September 21, 2011
Hi. I just tested the latest release on Arduino 022 for Windows and Example 9 - WSBridge. There was no problem compiling. Can you try it one more time? Also, can you let me know the OS you are using?
Thanks.
report abuse
vote down
vote up
Votes: +0
...
written by hodge, September 21, 2011
Hi, Akiba,

I am using XP Professional.
I downloaded ChibiArduino V0.51. Unzip it to arbitray directory. Then open the chibi_ex9_wsbridge.pde with IDE. Compile it and get error message.

Am I missing any important step?
report abuse
vote down
vote up
Votes: +0
...
written by Akiba, September 21, 2011
Sorry, I think I didn't include enough information on how to install the library. You need to create a folder in the arduino-xx/libraries directory. I call mine "chibi". Then copy the zip file into there and unzip it. After that, restart your Arduino IDE so that it can recheck the paths. Once that is done, then you should be able to compile with no problems.
report abuse
vote down
vote up
Votes: +0
...
written by hodge, September 21, 2011
Cool. It works now!

Many thanks, Akiba san.
report abuse
vote down
vote up
Votes: +0
...
written by hodge, September 21, 2011
Hi, it's me again.
I ran wsbridge successfully. But when I tried to set capture options in WireShark, I found no pipe/wireshark in the choice items... Please help.
report abuse
vote down
vote up
Votes: +0
...
written by Akiba, September 21, 2011
There are three components to WSBridge. The first is the firmware loaded on to the Freakduino. This is the data capture. The second is the application software (WSBridge). This creates the pipe to Wireshark and provides the bridge between the Freakduino and Wireshark. And finally, there is Wireshark. If you didn't run the the WSBridge application, then you won't create the pipe to Wireshark.
report abuse
vote down
vote up
Votes: +0
...
written by hodge, September 21, 2011
I did ran WSbridge application according to your instruction over the web. I wonder why it does not show in the choice list.... smilies/cry.gif
report abuse
vote down
vote up
Votes: +0
...
written by hodge, September 21, 2011
Should there be a new network device after WSbridge is ran? I did not find such network device on my Device Manager.
report abuse
vote down
vote up
Votes: +0
...
written by Akiba, September 21, 2011
It won't show up in the choices. You have to manually type in the location according to the tutorial.
report abuse
vote down
vote up
Votes: +0

Write comment

busy
  No Comments.

Discuss...
< Prev   Next >