Let's Make Robots!

LMR Review BahBots 1284p Board


 

This is a review of the BahBots 1284p controller board designed by:

Glen Aidukas and Eddy Wright

glena

Unboxing:

I didn't find anything out of the ordinary when unpacking. Board, headers and a 9v snap connector terminated in a Molex plug and coresponding jack for the board. Populating the board was quite easy as it only needed the pins to be soldered. All the surface mount parts came soldered to the board. The board is white, which does not change anything at all but hey --when was the last time you saw a white board? Total time to solder all the pins was less than 15 minutes.

 

The board itself:

The  board looks good with a good soldermask and great mounting holes. The 4 "corner" mounting holes match the stuff from Tamiya and will bolt right on with the addition of some PCB standoffs. Proto boards are available that match the footprint of the main board. All the pins are easily accessable and the arangement is good however, the individual pins are not labled on the board (This may be addressed with version 2). Both serial ports are broken out to a 6-pin arrangement and there are headers for ISP both 6-pin-straight and 3x3 side-by-side. The SD card slot is the "clicky" kind that will "eject" the card when pushed.

All general use I/O pins are broken out into 10-pin packs with the 8 pins of each port plus power and ground. In addition, port A and port C are broken out at the bottom of the board into 3-pin "servo style" connectors. The power going to the A and/or C ports is jumper selectable via solder pads on the back of the board and can be supplied with raw power from the battery or 5v regulated from the onboard voltage regulator. The voltage regulator is rated at 500mA or 1 full amp if you stick a little heatsink on top. The Xbee module straddles the SD card and is not in the way.

I would like to see a LED (for power) and a reset switch, again, these issues may be dealt with in version 2.

Brains and special Tricks:

The AtMega1284p chip is big, fast and has a lot of thinkin' room.

  • 32 I/O pins
  • 8 ADC's
  • 8 PWM's
  • 2 UART Serials
  • 128k program space
  • 16k RAM
  • 18.432 Mhz
  • 2 8-Bit timers
  • 2 16-Bit timers
  • 5v Onboard regulator 1A (500mA w/o heat sink)
  • 3.3v Onboard regulator 250mA (to power SD card, Xbee, and is included in both serial UART's)

I had no idea how handy to have and fast SD cards were. With a Sandisk brand card, I am averaging a little less than 200kbs write-times. The board will also play .WAV files directly from the board with no external parts via a PWM output. If you choose not to use the SD card and want "its pins back" you can --there are jumpers that can be "unjumped" to give you access to these pins. In addition, the Xbee can be connected to serial 0 or serial 1 via jumpers.

The unit comes "speaking" BASCOM and will work with all the AVR-friendly languages out there. In addition, the Arduino language can also be installed and works quite well with the Arduino IDE.

Now the cool thing... Wireless bootloading:

With the optional USB/Serial/Xbee board and a couple of Xbee's, one can send programs from the IDE to the board wirelessly as well as send serial data bi-directionally. The comunication is at 38,400 baud and is quick enough for anything I can think I would ever use. The syncing of programs from IDE to board is as clean and fast as a hardwire sync and you will very quickly get spoiled. As soon as you sync the first time wirelessly, you will A) never want to go back to a cord and B) wish all your boards could do this. I can't say enough about wireless "jzinking" of code from computer to 'bot... Awesome, simply awesome.

Get it:

More information Here

Buy it Here

(By the way, Wright Hobbies also sells crimpable servo connectors in 2,3,4,5 and 6-pin arrangements! )

 

Overall:

Yup, I like this board. I like the option of pin arangement for the I/O pins, I love the SD card (I will never use EEPROMs ever again) and I adore the wireless bootloading. At 35 bucks, you get every penny of value you paid. I would like to see some LEDs, a reset switch and maybe a beefier voltage regulator and I would give it a 8+ or a 9...

Until then, I give this board a solid 8.

 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Hey Guys,

I was wondering if anybody else was having problems programming the Bahbot through the ISP port. I dont want to use the Bascom bootloader that comes preinstalled and my AVR mkII isp programmer doesnt seem to work. I wanted to know if  I was the only one with this problem.

kc1491,

The original Bascom bootloader is installed and tested via the ISP so I doubght its due to the board.  What does happen is sometimes people connect the programmer in reverse.  Take a close look and make sure its in the right way.

Let me know if you still have problems. 

-Glen

Glen,

Thanks for the reply. I've tried hooking up the programmer both ways, one way I get a solid red light which indicated no chip is present or the programmer has been inserted improperly. When I plug in the adapter the second way I get a blinking orange light indicting an error with the reset pin, timing issue, or again the programmer has been inserted improperly. I am using the Atmel mkII programmer and have had no issues programming my other Atmega 1280 and 168.  I have tried creating a cheap serial programmer and having no luck with that but I think that is because I am using a laptop, so I am running so test as we speak. I haven’t ordered any Xbee radios yet, but I tried creating the serial link specified in the Bascom page found here, but again I am having no luck. I think this issue is due the max 232 not being strong enough to pull down the reset and trying to fix that now as well.

kc,

One issue I had was with my ISP were it would get into a locked state after an errror and I would need to remove it from the USB cable and then reconnect it to clear the issue.  If this does not fix it for you then maybe we could talk via skype later this evening and try to figure out what the issue is.  If interested then send an email to support[at]bahbots.com with your skype account, a time range to call and the time zone your in.

-Glen

Thanks Glen, I think you hit a home run with this board!! Congratulations!

Chris,

Thanks for the excellent review!  All critiques will be taken into consideration on future designes & changes.

-Glen

Wow, that board seems very capable, and jam-packed with features.   I guess the user-soldering keeps the price low - that's a nice trade-off.   I love the programming feature with the xbee.   does it include all the pieces that need to be soldered?

I'm not familar with those languages however.  is that anything like the parallax pbasic?   I'm not willing to do C yet.   Whats a good shortcut method to jump-start my knowledge of BASCOM and AVR?

Good review Chris.

 

Paul,

When designing the BahBots controller our first and main focus was flexibility.  We did our best to keep this in mind with every design decision made.  While we considered having the headers pre-soldered in we thought that there will be some users that might want female headers instead of mail headers and others might want to directly solder wires to the board.  So in the end to keep it flexible we did not pre-solder them in but we did include all male headers needed with the board. 

As for programming in Bascom-AVR basic, this is a very easy language to learn and still has an incredible set of features and great performance comparable to C.  While it’s not free for the full version, it is free for code up to 4K is size.  There is a lot than can be done in 4K of compiled code!  Also, while Bascom costs about $100 for the full version, it is much cheaper than Pic Basic or many of the payfor C compilers.  I have written many very complicated programs in Bascom Basic and have been very happy with its performance and ease of use.  You can see more info at http://mcselec.com and you can purchace it in the US here: WrightHobbies.

Also keep in mind that we did not want to force anyone to any particular programming language so you can use Bascom-AVR Basic, WinAVR (AVR-GCC), other professional C compilers and we also have some working Arduino compatibility (still in bata testing). See the BahBots Forums for more details on Arduino support.

-Glen