create new tag
, view all tags

Design Documents

Board designs, circuit diagram and parts list of the monash packet radios.

Random notes that will eventually find their places in the documentation

  • Use AVR Studio 4 (not 5!) as the IDE (Windows). See for download: http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2725
  • Hopefully Jordan’s FYP report details a bit about compiling and flashing the MCU... [Basically, all you need is a USB A-to-Mini Cable and Atmel Flip software].
  • Latest firmware/code snapshot @ http://code.google.com/p/monash-wsrnlab/source/browse/#svn%2Ftrunk%2FSPR
  • Use a Windows SVN client such as TortoiseSVN: http://tortoisesvn.net/
  • … As you’ve probably noticed, the development is done completely in Windows...
  • RAR archive containing datasheets, PCB notes, PCB files etc. here: http://dl.dropbox.com/u/11967961/SPR/Smart%20Packet%20Radio%20%5B11th%20November%202011%5D.rar
  • IMPORTANT: Read “Notes.txt” in the above archive!
  • IMPORTANT: Read and understand the RFM22B datasheet as well as “AN440.pdf” (also in above archive)! <- understanding how the module works/is set up could take a while!
  • Note that new SPR boards (Rev. C) have the RFM22B shutdown pin tied to 3.3V - thus, that pin needs to be pulled down before using the boards (unlike the two prototype boards) [remember to change that in the code! Check line 300 of SPR.c]
  • “Si443x-Register-Settings_RevB1.xls” in the archive can also come in handy when setting the RFM22B registers.
  • When implementing Direct Mode, implement Direct Synchronous Mode as it allows all modulation types (FSK/GFSK/OOK) [as opposed to Asynchronous Mode which only allows two].
  • I suggest you use a jumper on one of the port header pins (shorting to ground or 3.3V) and read it as an input (enable pull-ups if needed -> i.e. if shorting jumper to ground) to determine whether the board will function in FIFO or Direct Mode.
  • Probably a good idea (actually, probably HAVE TO) to make nIRQ pin = TX/RX Data Clock as we will want to either send or read bits from the RFM22B module in synch. with one of the edges of this clock [and the pin connected to nIRQ can trigger interrupts -> i.e. not all MCU pins can!].... Read the RFM22B datasheet section on Direct Mode smile
  • All 3 RFM22B GPIO pins are free for use (if you are using the new REV. C boards that is... if not, just assume you are because the FW will eventually run on them!)... (GPIO 2 and 1 require jumpers on header P8 to use which connects them to PA6 and PA7 on the MCU respectively -> see schematic). GPIO 0 is connected to PC3. Note that none of these MCU pins can generate interrupts! (see previous point).
  • Debug can be done via JTAG with AVR Studio 4... I have a AVR JTAG-ICE mk-II (http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3353) for this purpose - if you desperately need to debug code. Let me know! (I can arrange for you to pick it up).
  • Try and make the FW as rock-solid as possible... I’m not sure how Jordan’s current FIFO implementation performs when large amounts of data are read/written - I suspect there may be some timing issues with the ISRs - might be worth a slight re-write.
  • Implement the “SMART” mode based on how the XBee API mode works: See http://ftp1.digi.com/support/documentation/90000976_H.pdf
    • Have a look at the ZigBee Transmit Request frame as a guide and see what features/options are included.
Topic revision: r3 - 2014-04-22 - AhmetSekercioglu
This site is powered by the TWiki collaboration platformCopyright © 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback