This article is part of a series.
- Part 1 - The Hunter S. Thompson Board -- Arduino Mega Mini
- Part 2 - My Eagle PCB Walkthrough
- Part 3 - Mega Mini Motor Shield (M^3)
- Part 4 - My Eagle PCB Walkthrough
- Part 5 - Populating and Programming and APM
- Part 6 - Arduino to RPi -- Galvanically Isolated I2C
- Part 7 - Incomplete Works
- Part 8 - HM-10
- Part 9 - Jot
- Part 10 - Homemade Pulse Sensor
- Part 11 - ATtiny Adventure -- I2C on ATtiny 84/85
- Part 12 - This Article
- Part 13 - Kobold
- Part 14 - Scarab
- Part 15 - The Valdez Mutant -- LPC1114 QFN
- Part 16 - Lab Controller PCB
- Part 17 - Lab Controller v05-09
- Part 18 - Robber Board
Originally posted on www.letsmakerobots.com
UPDATE: Added BOM corrections. (Sorry for floating.)
Ok. Here’s a finished board I’ve been working on for a bit.
In essence, it is a BLE node board. It combines an HM-10 board with an ATtiny 85. This board builds off:
The idea of the Bitsy Spider board is diminutive controller node. I wanted it to be cheap and versatile enough to use as a node, but I think the final price is around $11 each.
Here’s the ole GitHub:
- ATtiny Bitsy Spider (v.02)
- OSHPark Board: $1.68 each ($5.05 minimum).
- 1 x 20k Resistor – 0402: $.04
- 3 x 10k Resistor – 0402: $.04
- 2 x 1uF 0402 $.20
- 3 x BSS138: $.60
- 1 x ATtiny 85 – SOIC: $.80
- 1 x HM-10: $6.50
- 1 x 0603 LED $.11
- 1 x 3.3V LDO 300mA – SOT-23-5 - Voltage Regulator: $.58
Total (approximate): $10.55
There are lots of solder-jumpers on this board, given it is meant to be versatile.
Here is the programming pinout to use an Arduino as ISP
The board is intended to harness the serial connection of the HM-10. In this version I made it straight forward, you leave the jumpers between the RX/TX line of the HM-10 and the ATtiny unsoldered, program the ATtiny as many times as you like. To test your serial connection between the ATtiny and the HM-10 simply breadboard the PCB and put jumpers like so:
PB0 <—> TX
** PB1 <—> RX**
This will allow you to test your code, without having to solder and unsolder. Then, after your code is perfectish, solder the jumpers marked “PB1 & HM10 RX” and “PB0 & HM10 TX,” then embed the Bitsy Spider.
This is an option that’ll probably continue throughout different versions of the board. I ran the GND connection of the ATtiny through a N-Chan MOSFET, and tied the gate of the FET to the PIO1. The PIO1 pin of the HM-10’s function is for a Connection Status LED. But one of the options one can set on the HM-10 is for the PIO1 to stay low unless the HM-10 has a connection. This can be set on the HM-10 when it’s in AT mode by typing:
- Type: AT+PIO11
- Response: OK+PIO11
When done, the ATtiny 85 will only power-up if the HM-10 has a connection. Of course, the solder-jumper is meant to bypass this feature.
The last solder jumper controls the HM-10’s reset. If soldered, the ATtiny 85 can reset the HM-10 by sending PB4 high for ~100mS. I added this as I hope to create a star-network with the ATtiny Bitsy Spider.
Here’s a summary explanation; the HM-10 has a time out feature after it losses connection from one HM-10 that prevents it from connecting to another for approximately 10 seconds. So far, there is no option to bypass this “lost connection” time-out. But resetting the HM-10 (<150mS power-cycle) bypasses this time-out. I’ll update more on this setup when I’ve completely tested it. If there are questions, I’ve written a lot in the comments of my original HM-10 post. But also feel fre to contact me.
One last thing I should mention.
I expect one major mistake and two minors on the first run of every board I send off. This board is no exception. I forgot the decoupling capacitors on the voltage regulator and the HM-10. I’ve added them on the v.02 board. Of course, this shouldn’t be a major flaw, but with a capacitor on the voltage regulator it causes it to spit out 3.6v instead of 3.3v. Major problem. I saved this set of boards by soldering a 0402 1uF between the legs of the SOT-23-5 regulator. Not fancy, but saved $5.