Categories

Archives

Elsewhere

     
     

QR Code

QR Code

TinyTX3 Wireless Sensor Board

TinyTX3 DS18B20

TinyTX3 fitted with a DS18B20 temperature sensor

Since I put the files for the first PCB version of my TinyTX wireless sensor node online in June I’ve heard from people around the world who have had their own boards made which is really encouraging, especially as it was my first PCB design and was mainly done just to learn how to use the Eagle CAD design package (I wish I’d seen these great tutorial videos when I started, it would have saved a lot of time). There is obviously a big demand for this sort of thing.

Like the earlier stripboard versions the first PCB version was designed purely for use with the DS18B20 temperature sensor but if you’ve been following the TinyTX progress you will know that I’ve since found lots of other uses for it.  Having only 2 of the ATtiny I/O pins being available was starting to become limiting though so I wanted to do a respin with additional pads for some of the unused I/O pins and I also took the opportunity to fix the tight clearance between the power connections and the RFM12B, improve some of the layout and add spaces for decoupling capacitors on the ATtiny and RFM12B, I’ve not had any problems without them on the previous version or on the original stripboard design but it is good practice to have them so we might as well have the option of fitting them if required.

The biggest change is at the top where I’ve added space for 6 I/O pins plus ground and Vcc (Row 1) and instead of a fixed space for a pull up resistor I’ve added two rows of standard 2.54mm spaced holes, one row (Row 2) connected to the header row and one unconnected row (Row 3) which will allow for many more configurations. The IO pins are labelled with the equivalent of the Arduino digital pins as used in arduino-tiny, it looks a little odd as the numbers aren’t consecutive but I didn’t think it made sense to do it any other way. 

TinyTX3 Front and Back

Front and rear views of the TinyTX3 PCB

This new arrangement allows sensors to be connected directly to the board as before or a male or female header could be installed on either side of the board, opening up the possibility of adding expansion boards (think mini Arduino shields) above or below the TinyTX3, perhaps an add on board with a step up/boost converter and DHT22 temperature/humidity sensor.

If you wanted to duplicate the original design with the DS18B20 sensor for example you could install the sensor across the pins marked 9 and 10 and GND on Row 1 and put a 4K7 resistor across the pads next to 9 and 10 on Row 2. The original code will then run unmodified.

TinyTX3 DS18B20

Pin numbers refer to Arduino pins when using the arduino-tiny core

Other possibilities include multiple sensors on one board, using resistors to create voltage dividers for reading analogue sensors, eg. thermistors or a voltage divider could be useful for reading the battery voltage when powering the board with a step up/boost converter board as the usual programmatic “readVcc” method won’t work in that case as the board always receives 3V3. I’m sure more uses will develop over time just as they did for the first PCB and as all the existing TinyTX code will still work nothing is lost.

You might notice I’ve soldered the ATtiny84 directly to the board on the one in the pictures above, what do I do if I want to reprogram it you might ask?

TinyTX Programming

IC test clip attached to ATtiny84 chip

These IC test clips are very handy, just wire it up to your programmer (or Arduino using ArduinoISP) and clip it onto the chip to program. If you don’t have test clips you will want to fit a socket to the board instead so you can remove the chip for reprogramming.

Here’s the schematic for the new board:

tinytx3_schematic

You can download the Eagle or Gerber files below if you want to order your own boards, I get mine made at Seeed Studio and for 10 boards it costs $9.90 (with a green solder mask, add $10 for other colours) + shipping, including shipping to the UK that comes to $13.86 in total which is currently £9.01 or 90p each. The guys at Circuits.io were also kind enough to import the Eagle files into their site for me so you can order boards in a pack of 3 from them for $14.67 plus $5 for international shipping. Unfortunately they don’t yet support adding text to the silkscreen so you will lose all the labelling with their boards.

Downloads:
Schematic (PNG format)
Eagle files
Gerbers (one per board) or 2 panelised on one board (you will need to separate them yourself).
Code

The hardware design files are also available on SolderPad here.

Parts List (excluding any sensors):
TinyTX3 PCB
ATtiny84A-PU microprocessor
RFM12B transceiver
14 pin DIP socket (optional if you have an IC test clip)
2 x 0.1uF (100nF) 2.5mm ceramic capacitors (optional)
Wire for antenna, eg. 0.6mm solid core (165mm for 433MHz, 82mm for 868MHz)
Battery holder for 2 x AA or AAA batteries

 

Open Source HardwareThis is Open Source Hardware licenced under a
Creative Commons Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) licence.

 

11 comments to TinyTX3 Wireless Sensor Board

  • Hi!

    Many thanks for your design. I think I will order the PCBs, but I have never done such a thing. If I get it right I can just upload your gerber zip to seeed and go with all the default settings?

    /Eric

  • Hi Eric,

    Yes, the defaults will be fine, just upload the tinytx3_gerbers.zip file.

    Cheers,
    Nathan

  • Eric Soderman

    Thanks Nathan. I sent the order now.. :-)

  • Alexander (@alexandervdsar on Twitter)

    Hi Nathan,
    Just want to thank you for your great design and TinyTX code. I’m running several temperature sensors now, talking to a central node which is uploading data to open.sen.se
    Think I’m going to order some of your ttx3 boards. Looks really good!

    Thanks!
    Alexander

  • Eric Soderman

    Hi,

    I received my PCBs from Seeed a few days ago. Worked great and I only had to upload your zip-archive with Gerbers. Had to rename the archive as the name was already in use (by your order maybe…).

    Now I soldered the first board and also has a open energy rpi board. Seems to work on first try! Packets coming in when watching with minicom on the rpi. Next step to see what I will do with them. Probably follow the open energy route. Thanks again Nathan!

    Here is a pic of my first board:

    http://www.lysator.liu.se/~esn/temp/sa5bke-tinytx-01.jpg

    BR

    Eric in Sweden

  • Excellent, looks great Eric and yes I noticed that the file name had to be different to a previous order too.

    Cheers,
    Nathan

  • D83 (@Deepesh_ on Twitter)

    Hi Nathan,

    Been following your blog for few weeks now, I must say your work is very helpful. Thanks for all of this.

    Also, it is strange why aren’t you providing pre-made PCB’s, assembly kits and fully-assembled ready to run units for sale, how about crowdfunding?, having them bulk made will also result in lower costs for everyone with money to keep your efforts funded.

    Thanks

  • John

    I had the 2 per board panelised boards produced by Seeed. Quite difficult to cut the boards but managed it with a Stanley knife. Very nice work and many thanks for sharing your skills.

  • Yes it requires a bit of patience but I’ve found a Stanley knife the best way too. Experiments with a Dremel didn’t go so well. I believe a wet tile saw, the circular saw type are good but I think it might need a bit more space between the panels for that. I might give it a go anyway.

  • Vlad

    Just wondering how long 2 AA battery’s will last when powering this thing.

  • I did some rough calculations that estimated a couple of years and so far that is looking about right, one of my early ATmega328 based sensors has been running since December 2011 and is now down to 2.8V and the first stripboard ATtiny84 version has been running since February 2012 and now at 3.0V so plenty left to go yet and the code wasn’t very well optimised for low power usage at the start so it should be even better now. Both of those are transmitting every 60 seconds and with ACKs enabled.

Leave a Reply


 


 


 

You can use these HTML tags
(links will be automatically marked with rel="nofollow")

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Notify me of followup comments via e-mail. You can also subscribe without commenting.

By submitting a comment you agree that it can be reproduced under the same licensing terms as the rest of the content on this site.