Arduino Forum

Development => Other Hardware Development => Topic started by: pico on Apr 30, 2014, 10:53 am

Title: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: pico on Apr 30, 2014, 10:53 am
I've just sent this new variant off to the fab.

(http://embeddedcoolness.com/wp-content/uploads/2014/04/bigbob_render_800.jpg)

It's a 1284p board, and like the other embeddedcoolness.com "RFX" dev board designs I sell, it has built-in nRF24L01+ headers, and prototyping area.

This is physically a much bigger dev board compared to it's siblings, however. It's "Mega" dimensions - about 5x10cm. No choice really -- that 40-pin DIL package is one big-ass chip! (BTW, the reason the rendering shows the board only partly populated is that just happens to be the components that there were available models for. But it gives you the idea.)

It's routed to use the "Bobuino" pin mapping (I was looking at both the "Goldilocks" and the "Bobuino" mappings, which are quite similar, but the "Bobuino" seems to be the more popular.)

So it's nicknamed "Big Bob". :-) [edit: since renamed "Skinny Bob", hence change in thread title.]

Since I had all that real estate to work with, I added a few things not on the other RFX boards.

It's got *two* big old TO-220 LD1117 voltage regulators on it -- one for the 5V rail and the other for the 3v3 rail.

Lots of real estate taken up just there, but nice beefy rails, without SMT! (All through-hole construction on this board.)

Standard Arduino shield header layout, including the ICSP SPI connector.

You can also mount it on breadboard, or connect it to standard 0.1" pitch proto board. The standard layout Arduino shield headers are also shadowed by a second set of breadboard compatible headers. The extra ten 1284p IO pins are also broken out into an additional breadboard compatible header.

So "BoB" could stand for "best of Both" in this context. :-)

(IIRC, there actually was a video card for PCs out years ago called the BoB board, and I'm pretty sure that was the explanation for its name. Can't remember much else about it, though.)

For convenience, there's also a header for USB-to-TTL cable connection, to allow for bootloader programming or a USB serial port interface. Uses the standard Sparkfun FTDI  breakout board "GRN (DTR) to BLK (Gnd)" pin header layout. (Optionally, ISP programming via the ICSP header, of course.)

Power configuration is flexible via 3-way jumper on a 6 pin block to supply Vcc to the 1284p from the 5V rail, the 3v3 rail, or directly from Vin. Or leave the jumper off for a power configuration this doesn't cover.

The 5V rail or 3v3 rail can also be also be tied to Vin by a jumper, if desired. (Obviously, you probably only want to do this if Vin is a well-regulated 5V or 3v3 supply!) This configuration could be useful in saving the need for the 5V regulator if you were already running a 5V supply to Vin, for example.

If you are supplying just 3v3 on Vin, then both regulators could be dispensed with, if you were happy to run the 1284p on 3v3 (for 16MHz clocking, the minimum Vcc should be at least 3.78V according to the datasheet. so this is strictly out of spec. There has been one report which indicates the 1284p may not be as tolerant as, say, the 328p for "overclocking" in this way. You could always run it at 8MHz to get back within spec, however.)

So provision for lots of power configurability and capacity.

What else? There's provision for the 10mH inductor recommended in the Atmel datasheets to smooth the AVCC supply for higher resolution analog reads. And of course you can't have a dev board without provision for a LED attached to D13 in case you want to run "blink", LOL!  

The balance of the board real estate is given over to a prototyping area.

That's pretty much it. So there it is. yet another 1284p board! These should be arriving from the fab at the same time as the Pro Mini 328 and Teensy 3.x nRF24L01+/proto boards described in the earlier thread, so I will update this thread when I've had a chance to assemble and test all of them.

Title: Re: 1284p/nRF24L01+/proto dev board - BIg Bob! :-)
Post by: CrossRoads on Apr 30, 2014, 03:38 pm
Makes me wonder if the 25 kits of Bobuino boards I ordered recently are going to go unused.
(http://www.crossroadsfencing.com/BobuinoRev17/Bootloading1284.JPG)
Title: Re: 1284p/nRF24L01+/proto dev board - BIg Bob! :-)
Post by: pico on Apr 30, 2014, 05:05 pm

Makes me wonder if the 25 kits of Bobuino boards I ordered recently are going to go unused.


I sincerely doubt that. The reviews are unambiguous. The "Bobuino" is a classic, and classics never go out of style. :-)
Title: Re: 1284p/nRF24L01+/proto dev board - BIg Bob! :-)
Post by: retrolefty on Apr 30, 2014, 07:01 pm


Makes me wonder if the 25 kits of Bobuino boards I ordered recently are going to go unused.


I sincerely doubt that. The reviews are unambiguous. The "Bobuino" is a classic, and classics never go out of style. :-)



+1

Worst case you just have to mark them down enough so I can't resist having a 3rd one.  :D
Title: Re: 1284p/nRF24L01+/proto dev board - Big Bob! :-)
Post by: pico on May 05, 2014, 11:23 am
While I've been waiting for my RFX 1284p/nRF24L01+/proto boards (aka "Big Bob" :-) to arrive from the fab this week, this has been my "goto" guy for 1284p test and development.

I call him "Bambuino Bob", and he's been a trouper, and I've actually grown quite fond of him :-)

Stripped down into his basic configuration (first pic), he can be used to hold a 1284p or similar chip for ICSP programming (which is what I imagine he'll mostly be doing eventually).

However, with the mini CP2102 board attached (second pic), he can also be programmed via bootloader (DTR reset is enabled), and can be powered by USB to run test sketches with a serial monitor connection. (Note, these neat little CP2102 modules can also be plugged straight into the USB/TTL header on "Big Bob" as well.)

And with a RFX nRF24L01+ shield attached he can be used for testing nRF24L01+ wireless apps (third pic, showing "Bambuino Bob" doing his stuff serving web pages via nRf24L01+ module and RFXduino gateway system -- note shield is connected to protoboard via the second set of "breadboard compatible" headers in this case.)

So while not quite as capable as his bigger brother, he's been hitting well above his weight, and is definitely one of a kind (at least *I'm* not going to be wiring up another any time soon. I love ya Bambuino Bob, but once was enough! :-)
Title: Re: 1284p/nRF24L01+/proto dev board - Big Bob! :-)
Post by: pico on May 08, 2014, 07:27 am
Boards have arrived! :-)

I've just put one together with enough components to get it up and running.

Pic 1 shows it in a minimalist config, just one  voltage regulator (for the 3v3 rail), and USB/TTL header so it can be powered via USB (USB also provides the power to the 5V rail). The two jumpers configure the power so that the 5V rail is tied to Vin (so the 3v3 regulator gets power), and ties Vcc for the 1284p to the 5V rail (could optionally tie to 3v3 rail, or even Vin if required.)

Pic2 shows it with the CP2102 USB/TTL board plugged into the header, and also a nRF24L01+ radio attached. Serving up web pages nicely via my TCP over nRF24L01+ RFXduino gateway -- more testing to be done, but it's so far so good! :-)

Pic 3 shows him posing beside his little 328p sibling. (I hope you can spot the family resemblance.)

Pic 4 shows him posing beside a Due for size comparison. (Actually, he doesn't really look that big. Maybe I'll end up calling him "Bare Bones Bob", or something. Anyway, he's certainly looking skinny here. ;-)

I'll put up some more pics when he's more "dressed".


Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: pico on May 16, 2014, 09:14 am
First, the big news...

Big Skinny Bob has had his name changed, because, in reality, he isn't really that big compared to some of the other 1284p offerings out there. In fact, he comes in definitely on the lean side -- maybe not truly "bare bones", but definitely not a "kitchen sink" board, either. So "Skinny" it is -- one step up from "Bare Bones" :-)

OK, now that I've given you the skinny on that, on to new photos and testing results.

Pic 1 shows Skinny Bob a bit more "dressed" than in the previous posts.

Testing has gone very well so far. I'm particularly pleased with the clean performance of the high power nRF24L01+ modules, which are the canary in the coal mine for any electrical noise or RF interference. Obviously important for my purposes as they are intended for use as RFX boards!

Everything else I've looked at checks out -- shield pins are all properly functioning according to pins_arduino.h assignment using the new 1284p core files. (See related threads in "Microcontrollers".) One test has been to run Henning Karlsen's TFT driver library for an Itead TFT shield. Pic 2 shows it running off USB power, pic 3 using an external power supply. The UTFT demo is a good practical test because, when in 16-bit mode,  it uses  just about the all the shield I/O pins: Ports B & D for data transfer, port A for control.  

To test the ten extra "extended" pins, (port C, mapped as D24-31, and the two extra analog pins A6 and A7), I mounted the board on a breadboard setup. (See pic 4 for my high tech testing rig.)

In the next post, I'll say (and show) a little bit more about the specifics of the breadboard setup I'm using here, using the second set of grid-aligned headers..
Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: pico on May 16, 2014, 05:51 pm
Ok, I was going to say a bit about how I've got this board set up for breadboarding.

Referring back to my original post in the this thread, on the PCB rendering you can see the provision for the secondary grid-aligned headers, just inside the standard layout Arduino shield headers.

What I've done here is mount the grid-aligned female pin headers underneath the board, rather than on top of the board, as is the "normal" way with Arduino shield headers.

So I've got two sets of headers, standard "shield" headers going up, grid-aligned header going down. They are connected in parallel, so D0 on one header is connected to D0 on the other, for example.

Pic 1 shows the second set of headers more clearly.

Now, to be usable for breadboarding, we need them to be male, not female, obviously. So, I use "long" male-male pin header as gender changers. (Pics 2 and 3).

When you got the header pins aligned on the breadboard, just press in as normal. When disconnecting the dev board from the breadboard, you may find it convenient to leave the male "gender changer" pins in the breadboard(s), to simplify plugging and unplugging the dev board. (pic 4)

The reason I prefer this set-up to the more obvious method of simply mounting male pins directly on the dev board (which you could certainly do if you prefer) , is because when the dev board is unmounted, the female headers offer less chance of accidental shorts, etc. than exposed male headers. Also, I think the female headers make pretty good "feet" for the dev board, giving some clearance for anything sensitive mounted on the underside of the board. That's true both when it's on or off the breadboard.

The other thing you can do is to connect the dev board to standard proto board, by soldering ordinary male pin headers to the proto board that line up with the female headers. So potentially you can simultaneously grow the Arduino shield stack up and a proto board stack underneath, giving lots of expansion options.

When I start to sell these as kits, I will be offering the second header set with the male-male pins as an option.

So that's the how and why of my breadboarding setup for Skinny Bob! :-)
Title: Re: 1284p/nRF24L01+/proto dev board - Big Bob! :-)
Post by: retrolefty on May 16, 2014, 06:01 pm
Pretty creative and cool.

Quote

So, I use "long" male-male pin header as gender changers. (Pics 2 and 3).


I didn't have any "long" male pin strips when I too needed a gender changer. What I found that if I took a standard .1" male pin strip header was to hold then in a vise and gently apply heat from a soldering iron till the pin would sink down so that they were equal length on both sides of the plastic holder. That seems to be long enough to make contact with breadboard and female strip headers. I should look for ones with extra long pins. If you have a link maybe I will stock up.

Lefty

Title: Re: 1284p/nRF24L01+/proto dev board - Big Bob! :-)
Post by: CrossRoads on May 16, 2014, 06:08 pm
Other length male headers
http://www.king-cart.com/phoenixent/product=HEADERS+BREAKAWAY+.1SP+STR+SPECIAL+POST+LENGTHS/exact_match=exact
Title: Re: 1284p/nRF24L01+/proto dev board - Big Bob! :-)
Post by: terryking228 on May 17, 2014, 06:20 pm
Nice stuff Robert!

Quote
I should look for ones with extra long pins. If you have a link maybe I will stock up.


The pins HERE: (http://yourduino.com/sunshop2/index.php?l=product_list&c=19) are really useful.  Some examples on the ArduinoInfo.Info WIKI HERE: (http://arduino-info.wikispaces.com/Cables)

I really like those rainbow cables; you can strip off a 5 (or whatever) section for a custom cable.

DISCLAIMER: Mentioned stuff from my own shop...
Title: Re: 1284p/nRF24L01+/proto dev board - Big Bob! :-)
Post by: bluesmoke328 on May 18, 2014, 02:44 pm

Pretty creative and cool.


+1

I like the prototyping area and the easy extension to additional protoboard via the "under headers".

@pico: Do you have a timeframe for when these will be available? Pricing?
Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: pico on May 19, 2014, 08:22 am


Pretty creative and cool.


+1


Thanks guys. :-)


I like the prototyping area and the easy extension to additional protoboard via the "under headers".


Of course, you can extend the grid-aligned headers "up", if you wanted to, if you prefer the more traditional approach to stacking shields, and you were making your own "shields" out of proto board, or similar.

So strictly speaking, they don't have to be "under headers" (as you put it), it's just that it's easier to extend down if you want to keep the option of mixing both types of shields (grid-aligned and traditional Arduino layout). Also, of course, it gives you the breadboarding option, as described above, if that is useful to you. Just to clarify.

So the second set of headers are fairly flexible in configuration options.


@pico: Do you have a timeframe for when these will be available? Pricing?


I'm just waiting on a few bits and pieces still to trickle in from China. No later than next week I would hope (but can't promise until they're in hand -- and they are already later than I expected.)

Pricing will be ~$25 for the basic kit unassembled, ~$30 assembled, including shipping.

The basic kit is everything you see above, sans the mini USB/TTL adapter (although I've got a few of those  on hand and will offer those as an an add-on, while I've still got some.)

The assembly will include everything except soldering on the grid-aligned headers (leave it as your choice to extend up or down, or not mount them at all), the 10-pin extension header for D24-31, A6, A7 (same reason), and the 6-pin USB/TTL header (leave it to you whether you prefer a male or female header, etc.) I'll solder on the regular Arduino shield headers unless asked not to.

Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: bluesmoke328 on May 19, 2014, 04:23 pm

I'm just waiting on a few bits and pieces still to trickle in from China. No later than next week I would hope (but can't promise until they're in hand -- and they are already later than I expected.)

Pricing will be ~$25 for the basic kit unassembled, ~$30 assembled, including shipping.


That's great, if it's only going to be like another week, that's cool. Please put me down for on, maybe two, of the unassembled kits.

How should I send you my details?
Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: pico on May 19, 2014, 05:25 pm

That's great, if it's only going to be like another week, that's cool.


I *hope* it's only going to be another week. That wasn't a promise!


Please put me down for on, maybe two, of the unassembled kits.

How should I send you my details?


Send me your details (contact form on my website is best, see my signature), and I'll put a board (or two) aside for you.

Are you in a rush? What is your application, if you don't mind me asking?

Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: bluesmoke328 on May 21, 2014, 02:36 am

What is your application, if you don't mind me asking?


Robot(s). Need. Ram.

With 16K and lots of prototyping/expansion options this looks "da bomb". Not just in my usual way of blowing things up I hope. Although I expect that too. A socketed chip is nice to have there.
Title: Re: 1284p/nRF24L01+/proto dev board -Skinny Bob! :-)
Post by: pico on May 24, 2014, 04:53 pm
"Skinny Bob" now available:

http://embeddedcoolness.com/shop/rfx-1284p-devdep-board-w-prototyping-area-nrf24l01-headers-kit/

(Also created new thread (http://"forum.arduino.cc/index.php?topic=236897.msg1737157") in "Products and Services" section.)
Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: OldMicroGuy on May 28, 2014, 08:12 pm
Skinny Bob looks cool.   
Are you going to post a schematic?

Roger

Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: pico on May 28, 2014, 08:48 pm

Skinny Bob looks cool.   
Are you going to post a schematic?


Yes, when I put together a "pretty" one, rather than the actual one used in Eagle development! Drawing proper connections and laying the components out nicely rather than connecting everything up by "name". You know, "nice". ;-)

If there's anything particular in the meantime you are curious about, let me know.

Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: CrossRoads on May 28, 2014, 10:15 pm
I'd rather see by name - so much easier to follow than little green lines all over the place.
Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: pico on May 29, 2014, 04:48 am

I'd rather see by name - so much easier to follow than little green lines all over the place.


Yes, I agree, much better during development. Unfortunately, what you end up with isn't what most people are thinking of when they ask "can I see the schematic?"

What would be sweet is if Eagle had a function to produce a "prettified" schematic automatically. laying out the components and drawing in all the nets as wires -- I was thinking about this, and realised that it's actually basically an auto-routing problem with a different output format.

But given the results I typically get from the standard Eagle auto-router, maybe this isn't such a good idea!
Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: bluesmoke328 on May 31, 2014, 03:51 am

If there's anything particular in the meantime you are curious about, let me know.


Could you explain in more detail exactly how the power configuration options you mention in the first post in this thread works?
Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: pico on May 31, 2014, 04:37 pm

Could you explain in more detail exactly how the power configuration options you mention in the first post in this thread works?

LOL, yes, that description of the power rail configuration options in the first post is a bit "stream of consciousness" - sorry about that. I think I must have written that a bit too close to the time I had my head down in the nitty gritty of the board design.

In reality, the options are pretty simple. 99% of the time it boils down to whether you want to run Vcc to the chip at 5V or 3v3. In that case, there are two jumper settings to choose from.

So, let's assume you are primarily powering the "Skinny Bob" board from a DC supply >= 6V applied to Vin, either by the barrel jack or to the Vin rail directly (e.g., via a header pin).

On the 2x3 male pin power header, the jumper setting for 5V looks like this:

  o  o  o
[o  o] o
5V Vcc 3v3

And 3v3 looks like this:

  o  o  o
  o [o  o]
5V Vcc 3v3

That's it. Move one jumper to choose 5V or 3v3 Vcc for the 1284p.

So what are the jumper pins on the top row used for?

These are for less usual situations when you want tie rails together for some reason, typically for when you would be using some other arrangement for power than 6V+ supplied to Vin. (I'll elaborate a bit further in a follow-up post on some more "exotic" possible configurations, perhaps when I've drawn up a nice schematic.of the power section.)

And finally, what about switching to a USB power input from the Vin power input? E.g., what if we want to power the board by connecting a USB/TLL cable to the USB/TTL header, or an ISP programmer to the ICSP header? Do we have to change the power jumper block settings in that case?

Well, no. Just like a standard Arduino, the "Skinny Bob" will automatically switch to using a power supply available from USB on the 5V rail if there is no supply on Vin. It achieves this via a considerably simpler "auto-switching" mechanism (using a Schottky diode) than the FET/op-amp arrangement on the Arduinos, but ultimately the same effect.

So all pretty uncontroversial and unexciting so far. Which is as planned. As I say, I'll get back with a description of some more special case possible power configurations.

Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: pico on Jun 03, 2014, 06:15 pm
Ok, so back with a schematic! :-)

So, when might you use the top row of pins on the power configuration header to tie rails together?

On the 2x3 male pin power header, the second jumper setting on the top row for tying the 5V rail to Vin looks like this:

5V Vin 3v3
[o  o] o
[o  o] o
5V Vcc 3v3

You might want to do this if you were supplying a regulated 5V through the barrel jack connector, instead of the usual 6V+ supply.

In that case, tying the 5V rail to Vin would bring the 5V rail up to the full 5V level. Otherwise, it would be less than 5V, as there would be a voltage drop from 5V on the rail due to the LD1117v50 regulator.

Also note that in this case, you could dispense with installing the onboard 5V regulator entirely, if you wanted to. Note the 3v3 rail would still be supplied as normal by the LD1117v33 regulator, assuming that's installed. So you would still have the choice of running Vcc at 5V, as above, or at 3v3, as below:

5V Vin 3v3
[o  o]  o
 o  [o  o]
5V Vcc 3v3

Analogously, you could tie the 3v3 rail to Vin directly if you were supplying regulated 3v3 via Vin. In that case, you could dispense with both onboard regulators, if so desired. (Of course, 5V wouldn't be an option for Vcc unless there was some other source feeding the 5V rail.)

5V Vin 3v3
 o  [o  o]
 o  [o  o]
5V Vcc 3v3

So there are a couple of the more specialized power configuration options available. Anyway, the design philosophy is that flexibility is a good thing, as long it doesn't lead to confusion or makes it too easy to shoot yourself in the foot. Hopefully this design provides a good balance.

Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: OldMicroGuy on Jul 14, 2014, 05:41 pm
Hi pico,

That .jpg of the schematic is a bit hard to read.  Any chance of posting a hi-res .pdf?
Roger
Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: pico on Aug 05, 2014, 05:17 pm

Hi pico,

That .jpg of the schematic is a bit hard to read.  Any chance of posting a hi-res .pdf?
Roger



Done.
Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: retrolefty on Aug 05, 2014, 06:02 pm
Only suggestion I might make is to power the 3.3 vdc regulator from the output of the 5 vdc regulator rather then feeding the 3.3vdc regulator from the Vin source voltage. That way if one was to power the board via an external regulated 5 vdc the 3.3vdc would be available?
Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: pico on Aug 05, 2014, 06:39 pm

Only suggestion I might make is to power the 3.3 vdc regulator from the output of the 5 vdc regulator rather then feeding the 3.3vdc regulator from the Vin source voltage. That way if one was to power the board via an external regulated 5 vdc the 3.3vdc would be available?



It's actually got an auto-power switching circuit using a Schottky that will power the 3v3 VR from the 5V rail, unless there is a higher voltage on the Vin input, in which case it will draw power from that.

So, just like a standard Arduino board you can power it from the USB 5V (which is tied to the 5V rail), or the Vin, without having to set a connector to select the power source. The switching is just done all a bit more straightforwardly than the fairly Byzantine op-amp/FET set-up on an Arduino Uno, for example.  :smiley-mr-green:

And this way, with an adequate supply on Vin, you get two full 800mA rails, at 5V and 3v3, (as opposed to 800mA combined total for both rails.)

Also, if you chose to supply a regulated 5V on Vin, the Vin and 5V rail can be directly tied together by a jumper on the power jumper block. In that case you could actually dispense with the 5V regulator entirely if you wished. And the capacity of the 5V rail would then only be limited to whatever your external supply can provide. Quite a neat solution for higher power applications, as long as you have a reasonable quality regulated external 5V power supply.

So short answer is yes, applying 5 vdc to the 5V rail directly will also result in power to the 3v3 rail with the current design.
Title: Re: 1284p/nRF24L01+/proto dev board - Skinny Bob! :-)
Post by: retrolefty on Aug 05, 2014, 07:27 pm
Quote
It's actually got an auto-power switching circuit using a Schottky that will power the 3v3 VR from the 5V rail, unless there is a higher voltage on the Vin input, in which case it will draw power from that.


Ah, missed that feature of the added diode, thought it was just to protect the 5 vdc regulator, cleaver.