PCB Design
Abstract:
The SkyenLab Bluetooth module was developed using the nrf51422 QFN48 QFAC reference design as well as help from the Nordic Semiconductor support portal and white papers. A proof of concept circuit was developed to demonstrate functionality of our design. The proof of concept circuit revealed bugs in our initial design which were overcome with help from the Nordic Semiconductor support portal. Additionally, design improvements were made to reduce the size and reliability of the circuit.
Initial Design and Some Lessons Learned:
The first revision of our design aimed to test key system functionality. The working design should supply power to the system using a battery, allow for programming the NRF51422 chip through SWD protocol, allow for communication with external devices via the NRF51422 GPIO pins, and allow for wireless communication with a 2.4GHz radio.
Our first design used the Nordic Semiconductor reference design for the NRF51422 QFN48 QFAC Package. We used the reference design to choose the values for the decoupling capacitors, the crystal oscillators, and the LC matching network. However, we had designed the wrong decoupling capacitors for the 32 KHz oscillator that we chose. This was revealed during debugging process when we could not successfully initialize the oscillator. By referencing the Nordic Support portal and white papers on oscillator decoupling we found that we needed a design change. The oscillator we chose we actually needed a 21 pF capacitor, not a 12 pF capacitor, to work properly. This change was implemented in the second revision of our design.
In addition to the Nordic Semiconductor reference design we added a battery holder to supply a 3V system voltage as well as a reset switch and a current measurement shunt resistor. The current was to be calculated by measuring the voltage across test points 1 and 2. We also included test points to measure the battery voltage and oscillator signals.
In the first revision of our design we added 30 header pins to output the system voltage as well as 28 GPIO pins to external devices. We also added the mating connector to the J-Link Edu probe, in order the program our chip via SWD protocal. However this extra programming connector added quite a bit of extra area to our module and made the routing difficult. In the final revision we used 32 pins to output the SWD pins as well as the GPIO and system voltage. We were able to accomplish a much smaller board using this strategy. However, we did need to create an adapter board to be able to route the J-Link Edu connector to our 32 header pins.
Part of the senior design class is learning how to layout our own printed circuit boards through Mentor Graphics, so that we could eventually apply this knowledge in laying out our teams project PCB. While some members of the team were focusing on programming and simulating the mesh network, other members were focusing on laying out the hi-p and lo-p mesh modules. One issue with laying the board out was making sure the radio network was set up to work within the 2.45GHz ISM band. The issue wasn’t so much in the layout, but that we did not have easy access to a network analyzer, or an anechoic chamber, or any other RF signal integrity equipment. We realized there were two different reference designs for the transmission line between the nRF51 QFN chip and the antenna, one of which uses lump inductor and capacitor elements, while the other uses a bal-un. None of us had ever really done PCB RF layout, so we tried to follow an online guide for antenna tuning, link available below.
For the first design, we decided to go with the lump LC elements with an SMA jack and a trace antenna. We wanted a trace antenna because it allowed us to tune the antenna by cutting the trace, so we could at least know what the antenna was resonant at. We were able to gain access to a network analyzer, so we figured we could try to tune the antenna through reflection coefficients. The idea was to hook up a network analyzer to the SMA jack so that the analyzer was specifically looking at the scatter of just the antenna. We were unable to successfully tune the antenna to have a reasonable reflection at 2.45GHz. We realized that this method was all together an invalid way for tuning the RF network because the impedance of the network was going to change when we added the lump LC components and disconnected the network analyzer.
For our given situation, we decided the Johanson bal-un reference design was the most suitable, but realized it would still be difficult to debug if our radio communications were not working. The bal-un proved useful in that it passively matched an unbalanced port with a 50-ohm balanced port. Reducing the number of elements in the transmission line reduced parasitics, board space, and simplified the design, but introduced a new dilemma in board layout. The package size for the bal-un is approximately 2.1mm by 0.52mm, and is rather difficult to solder by hand. However, in the end we decided to go with the SWF connector that Nordic Semiconductor has used in their SDK reference designs. This connector has an internal switch which disconnects the transmission line while measurements are being made, and has a very low insertion loss at 2.4GHz (advertised as less than -0.1dB).
With the lack of test equipment, we thought we could improve our design by incorporating a ceramic chip antenna. Our reasoning cited an article (Lifländer, 2010), which claimed that ceramic antennas are less sensitive than trace antennas to detuning from environment changes. Because we were developing a bluetooth module which was intended to live in many different household environments, we wanted to make the antenna tuning as robust as possible. Since we could no longer tune the antenna by cutting the trace, we included a pi network.
Since our first revision PCB was a two-layer FR4 substrate, we made a microstrip transmission line, which is still a viable option, but can introduce unwanted parasitics. After consulting the Nordic Dev zone, we came to the conclusion that a four-layer FR4 PCB with a coplanar microstrip transmission line was best suited as it is a more compact design and maintains better signal integrity. Via stitching around the transmission line also helped improve signal integrity.
Even though the lump LC network is completely capable of working with a trace antenna, we simply did not have the means for testing and tuning this specific RF system, so we realized we ultimately needed reliable components that more or less, work out of the box. Following the Johanson bal-un application notes in conjunction with Nordic reference designs and antenna tuning whitepapers, we were able to successfully implement an RF network capable of interfacing the nRF51 chipset.
A further discussion of the final design as well as the schematic, PCB layout, and BOM will be given in a future blog post.
Helpful links for PCB RF networking:
DIY Online trace antenna tuning: http://colinkarpfinger.com/blog/2010/the-dropouts-guide-to-antenna-design/
Johanson Balun Application Note: http://www.johansontechnology.com/datasheets/baluns/JTI-AN020-v2.0.pdf
Johanson chip antenna layout tips: http://www.johansontechnology.com/tuning.html
Nordic antenna tuning whitepaper: https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.whitepapers%2Fdita%2Fwhitepapers%2Fpdflinks%2Fnwp_017.html
Nordic quarter-wave monopole antenna whitepaper: https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.whitepapers%2Fdita%2Fwhitepapers%2Fpdflinks%2Fnwp_008.html&cp=11_11
SkyenLab first revision mesh module
Trace antenna |S11| after tuning