My own board (50mm x 30mm)
-
-
This post is deleted!
-
My development continued. I have now a "Baseboard" and a "Topboard". First i created different topboards for different sensors. But at last i made a "general" Topboard. Here i can connect all the sensors i need. It has
- 5x Digital-Connectors prepared for DS18B20 (GND, SIG & VCC), but can be used for other digital in-outputs. Just do not solder the resistor
- 3x Analog-Connectors for connecting analog-devices. (can also be used as digital pins)
- Place for an Step-Up-Module. If the sensor is powered directly with 2xAA-battery just put a jumper to connect BAT & VCC.
- I2C -Connector with VCC and GND
- Batterymonitor-Pin for Baseboard (A0)
This is the Topboard:
!

The Baseboard has:
- NO smd-parts
- Debug-port (TX &GND)
- Mysensor-Voltage-Monitor (2 resistors) onboard. Solder it or not if not needed
- 2x LEDs (Red & green) = Error & OK
- 4x 3.2mm holes for mounting
This is the Baseboard:
!

Both boards are 25x50mm...
Now i have to find out how to print them in 1:1 (original size) for testing. -
Here is some feedback from designing my boards:
You need 100nF capacitors between AVCC and GND and between VCC and GND.Put them as close to the actual pins as possible. And you need to pull ARef to ground via a capacitor (can be 100nF as well). All this improves stability of powersupply to the processor (and less restarts)
To test the battery voltage (if powered directly from 2 AA or 2AAA batteries, there is no need to use the 2 resistors, there is a routine to test the battery voltage based on internal reference (so no analog input pin needed).
You could use a single LED to show what is going on: slow blink means all OK, fast repeated blink means error. This saves a resistor/led/output pin.
The 100uF capacitor is a 8x12mm type and fits just under the NRF24. You can go for a 10uF which are normally a bit smaller and have no clearance issues (only 8mm high, so well below the 12mm space available).
How do you plan to program the board ? It could be nice to add the FTDI comptible header on the top board, or you can also add it on the main board.
Here is a link to my design:
https://oshpark.com/shared_projects/qnkNIMZxSchematic is in the next post.
Like yourself I only use through-hole components (except on the extention board). I can add extentions on top or on the bottom of my board.
Another tip I got from other people: powerlines need wider traces,
I have been thinking about replacing one of the headers I added (for the top boards) with a header according to the MYSX 1.5 specification. So far I have not finished this, but it is on the todo list.
A 50mm by 24mm board allows powering by two AAA batteries onboard, so my next design provides for this as well (it's a work in progress).
But after three designs I now work in reverse: first look for a nice suitable case, then design the board to fit with ITEAD/DirtyPCB spec (50mm x 24mm to have 2 boards out of a 50x50mm run).
Since I test on prototype boards and transfer sketches to "final" boards later, I think I can integrate the FTDI header into JP1. I also plan to re-arrange the I2C pins so that I can plug in boards from Sparkfun, without any adapter. They (Sparkfun) use a fixed sequence for all their I2C boards:
GND - VCC - SDA - SCL
Some boards are VCC - GND - SCL - SDA. Not sure which is more popular, as I have seen both on Aliexpress and eBay. -
Here is the schematic of my current v1-1 board (based on the work of many other people):
The new (battery included) board is still to "fluid" to show. When fixed I will probably also share this on OSHPark.
-
Hi Gert,
thx for your feedback. Lets make a small structure to discuss the things:
Battery-monitoring
I plan to you use the AREF as 3.3v Reference powered by the step-up-module. I think most of my sensors will have a step up. So this should be quite easy and accurate. In this case i solder a wire instead of R1 and "unsolder" R2....
OR (if i really want) i can use the voltage divider on A0 instead (like mysensors.org says). I think with this schematics i have both possibilities... How does it work without resistors and internal vref (1.1v)? I only saw the version with 2 resistors on the mysensors page.
By the way: I tested 3 step-up-modules:Pololu with NCP1402
Sparkfun with NCP1402
"China-Module"The China-Module is crap (+-240uA).
Pololu draws +-100uA in sleep mode
The Sparkfunboard only draws +-30uA in Sleep mode. I will go for that.Capacitors:
There is a capacitor between VCC and GND. The capa between AVCC and GND is missing, you're right. Thx.
I want to use AREF, so i cannot pull it to ground. Or what did you mean? Or am i missunderstanding something? I thougt AVCC is the supply voltage for the "REF"-function. And AREF is the reference-voltage....Programming
In an updated version from last night, i moved the debugport to the topboard. I can upload new sketches via RX/TX...
Do you know if it is possible to use the ISP when the NRF24l01+ is still connected to these pins?LED
I dont want to have a regular LED-blink (power consumption). It shall only blink when working(transmitting).
Green => All OK: Measures are ok, packet was sent
RED => ERROR: Measurement fails or packet could not be sent...
A DUOled would save some space, but no pins.Sensors
I think i will have a max of 5 Sensors connected on one board , so there is no need to save pins whereever i can.
The I2C port is like the sparkfun "standard" ;) I have a lot of HTU21D-BOBs laying around. They work like a charmAfter i gave my child something to eat, i update and upload the schematics...give me some time ;)
-
Here the schematics with boards..
Baseboard


Topboard


-
Battery-monitoring
The capacitor between AREF and ground (C3 in my schematic) is not to pull that pin to ground, but to stabilise this reference. Not strickly needed I think, but I prefer it since my sensors will live in a "noisy" environment.The code to check the level of VCC using the internal 1.1V reference is found here:
http://provideyourown.com/2012/secret-arduino-voltmeter-measure-battery-voltage/The error of 10% is something I can live with, since I need to be able to measure the supply-voltage and monitor it. It does not need to be super exact, since I plan to replace the batteries when I see levels around 2.2V. I'm mostly interested in the trend graph.
When using a DC stepup converter, you will of course need to use a pin to measure the original battery level, because the step up will make VCC always 3V3. I like your idea of dual use, so I will implement the pins to hold a voltage divider anyway. It is indeed a good use of PCB space.
I also ordered some step up converters (from Aliexpress) and I will measure them once I get them. Not all China stepups are crap it seems (as far as I read on various websites).
LED
As for the LEDs, I have only 1 LED on my boards. The LED blinks very shortly (5ms) every minute to show that a message is sent. It flashes three times if there is an error. So no need to have two leds. It is also the same LED that is flashed by the bootrom (I'm compiled nmy own version of Optiboot to used pin 14 of the atmega328. On a atmega1284p I use pin 1. This is personal preference.I checked your schematic. You will need to change the value of C1 (it is now 22pF, will need to be 100nF).
I will need to read the datasheet of the atmega328 again to understand the exact use of AREF. I'm not sure that pulling this to VCC is a good idea.
It seems you have removed the crystal and capacitors and plan to use the internal oscillator, I did this as well. Works most of the time, but uploading of sketches can give transmission errors of you go above 57K6 baud. Better to transmit at 36Kbit then (needs a change in the BOARDS.TXT file of Arduino IDE). Slower, but not a problem if you do not plan to change the sketch every 5 minutes.
Here is a preview of my new board:
It will be able to work both as a repeater (NRF24 with antenna) as well as a normal sensor board (small NRF24). The voltage divider on A0 is not yet implemented here. Still some empty spaces :-)
-
Hi,
thx for the feedback. Capa is changed to 100nF. It also works on my breadboard with 22pF ;)
Battery-Monitoring
The link to measure the vcc internally is great! Wow! Does this solution block any pins?
But i stay with my double-solution - it is not too big on the pcb.Crystal
Yes, i progged the fuses to run at 8Mhz-internal. Runs great and saves parts on the pcb and makes it cheaper ;)i am not sure, i understand your board. What are all the connectors for? Where is the ATMEGA? Size?
Maybe we can join our board-ideas and design one-board together? ;)
I am missing mounting holes on your pcb...
Case
I willl make my own case - a wooden case milled with my CNC...
8mm Multiplex (or plywood)...looks quite good i think ;) -
Different version with mounting holes:
Schematic:
Topsilk+documentationlayer:
Bottomsilk +documentationlayer:
As I said: a work in progress. Nothing fixed yet.
-
Incredible many pinouts and holes! Wow! Are you sure you need them all? Looks much more complicated then my design. But looks cool, too :)
This is my Case-Prototype - very flexible and easy to manufacture:

The top is adapted to every node-type. E.g. in the picture is the top for the humidity and temperature sensor. Then i plan to create a top for a PIR-Sensor, Acoustic-Sensor and a case for external Sensors and Powersupply, too.
Maybe i engrave the type of the sensor into the top for a cool looking.Then i glue it together or use small magnets. Case is still in "alpha"-status - work in progress. If i need it higher, i just add a second, third (...) bottom part. Every part is made of 8mm wood. If i want another design, i can make a "cover" for the top or use other materials for this (Aluminium, POM,different wood, acryl...) Connections from the side are easy to realise, too. Just drill a hole after building or mill it before putting it together.
If i could make a 3D-Modell from my PCB (and know how to do this with eagle), i could make a really nice picture with case, pcb and batteries...Size is approx 60x40mm.
Greetings
Andreas
-
Incredible many pinouts and holes! Wow! Are you sure you need them all? Looks much more complicated then my design. But looks cool, too :)
This is my Case-Prototype - very flexible and easy to manufacture:

The top is adapted to every node-type. E.g. in the picture is the top for the humidity and temperature sensor. Then i plan to create a top for a PIR-Sensor, Acoustic-Sensor and a case for external Sensors and Powersupply, too.
Maybe i engrave the type of the sensor into the top for a cool looking.Then i glue it together or use small magnets. Case is still in "alpha"-status - work in progress. If i need it higher, i just add a second, third (...) bottom part. Every part is made of 8mm wood. If i want another design, i can make a "cover" for the top or use other materials for this (Aluminium, POM,different wood, acryl...) Connections from the side are easy to realise, too. Just drill a hole after building or mill it before putting it together.
If i could make a 3D-Modell from my PCB (and know how to do this with eagle), i could make a really nice picture with case, pcb and batteries...Size is approx 60x40mm.
Greetings
Andreas
-
@Andreas: nice woodcase. Do you have access to a CNC machine at home or at work ?
My design is based on the idea that I want to have a maximum of options with the same PCB. Last night I printed some boardoutlines on paper and then placed the actual components on top. I find limitations in space this way. My idea of 1 long connector has a disadvantage: the small radio covers 4 pins, so that a top board would not be able to plug into these. I went back to a seperate header for the small radio and for the top board.
Still thinking about powering options. VRAW (anything external), VCC (regulated to maximum 5V, e.g. from a USB port), 3V3 (regulated via bottom- or top-daughter boards), VBAT (from onboard AAA batteries). The problem is finding an elegant and easy way to choose. Solderpads are compact, but permanent. Jumpers are easy but big. Small toggle- or slide-switches are expensive.The fruit of last night's meditations:
I have still not decided if I should use the pintout of the SI7021 breakout modules (VCC-GND-SCL-SDA) or the HTU21D (VCC-GND-SDA-SCL). Most breakouts seems to use 3V3, so I may need to plan for that.
-
hi.
nice boards guys!
yep, so lot meditation for tiny things :laughing: I am still asking myself on some points..in my case I choosed solderpads. not difficult to change and it is small. but not as easy to use as jumpers. I think jumpers are useful for proto stage but then in real you won't need it and it will take place.
I was thinking about having pinout for breakout too. but what if sellers change or stop boards. I don't think so, but it could happen...and it increase overall size too.
but I understand your vision of your board (mine is full smd). I like your ideas too!See you soon and good luck for meditation :smile:
-
@ahhk said:
This is my Case-Prototype - very flexible and easy to manufacture:
Why do you say it's "easy" to manufacture?
@NeverDie said:
@ahhk said:
This is my Case-Prototype - very flexible and easy to manufacture:
Why do you say it's "easy" to manufacture?
I put a wooden 8mm-plate on my cnc and mill the parts :D Very cheap and fast made....
@GERT: I have a cnc at home. i built it several years ago ;) Take a look if u want: http://www.rc-network.de/forum/showthread.php/304809-CNC-FRÄSMASCHINE-OPEN-SOURCE-PROJEKT/page11
Power
I have only 2 possible variants in mind:- Battery with or without step up (plugin boost converter)
- USB-Powered
For the last one i wanted to use these pcbs - glued into the case or plugged instead of the step-up module:
http://www.ebay.de/itm/301652467812?_trksid=p2060353.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AITOr i install a small connector into the case and solder 2 wires to the board. Something like this http://www.ebay.de/itm/2-Pair-DC-Power-Female-Male-Connector-Cable-Pigtail-Plug-Wire-CCTV-camera-White-/252099946337?hash=item3ab253e761
Everything should stay "easy&simple" and i think, once installed, the sensor will "hang around" for a year or longer....
Sensors
I checked 3 properties to find the correct sensor:- minimum allowed voltage
- time for a measurement
- price
So, the htu21d was the winner for me - works great and fast after a little optimization of the arduino-library for this (replaced delay with gw.sleep)...
-
Next variant. Less flexible, but flexible enough. Boardsize now 50x30mm
It's only one pcb now and you can connect- 5x sensors (digital or analog)
- 1x I2C and 3x sensors (digital or analog)
Step-up can be soldered to the bottom.
What do you think?

-
hi Andreas,
What is the intention of TEMP4 and TEMP5 connectors ? I see that you pull up SCL and SDA, but all these connectors can do now is give VCC and GND on pin 1.
For TEMP1->3, it depends on how the sensor actually works. With Light Dependant resistor there is no issue. For other sensors (TMP36), a resistor pulling up to VCC would be a problem. A switch would be OK between pin 1 and 3 (GND) of those connectors. What is the usecase ?
I have a atmega1284 based design, which is not yet shared on OSHPark. The version I made has the NRF24 connector in the wrong direction (but this is still useful). However, I can not close the case with the NRF24 in place. It was made for a Hammond 1593N case (the transparent blue type, very cool):



I used the case for the Arduino Due (bought this from Mouser).
I now corrected the orientation of the NRF24 connector but this not put this on OSHPark, because I can live with the mistake I made. Many ports on this one. But only works on 6-24V input. The power converters are from TRACO (1 for 5V, 1 for 3V3). It has 64KB EEPROM and RTC. Level converters for 5v->3V3 on I2C (so 2 I2C ports actually) and most pins are brought out together with 5V and GND.
The point here is that adding resistors to the three pin connectors is not really necessary. But it is nice to have signal-VCC-GND on three wires each time.
I think I will order the 1593K case next (to see what can be done with that), nice little box. -
@Andreas: Very impressive CNC machine !!!
-
Hi Gert,
thx for the cnc-flowers :D
Sensors
I thougt about the different nodes i will have later. The biggest node will have 5x DS18B20 - so i really dont need more than 5 "ports" to connect sensors. I changed them to the analog-pins of the arduino, because i can use them as digital and analog ports too...
Temp4 and Temp5 can be used as I2C ("horizontal") OR as Temp4 and Temp5 for DS18B20 ("vertical"). See top left corner of the board. I think it is very flexbile to not solder the resistors (disconnect VCC) or to solder a wire instead of the resistor (vcc to pad). In this way i can connect PIRs, DS18B20, Analog-sensors and so on....i just solder the parts i need for the sensors...
Only thing: I cannot use I2C AND Temp4 / Temp5 at the same time, because A4 and A5 are SCL and SDA too....
I hope you understand what i mean and try to reach...Btw: Jumper-pins are not a must, if i want, i connect the sensors via wire to the pads, or solder them onto the pads directly....
Greetings
Andreas
-
A 3D view of my lastest board :+1:
Tool used: http://mayhewlabs.com/3dpcb
So cool to see a 3D render, very fluid when moving around :-)