<figcaption>RF Ring oscillator with NRF24L01. Note: the cursors are measuring half a cycle.</figcaption>
<figcaption>RF Ring oscillator with NRF24L01. Note: the cursors are measuring half a cycle.</figcaption>
</figure>
</figure>
<p>This RF ring oscillator runs on the NRF24L01 using an Xmega 8E5 microcontroller running at 32 MHz. C code is available in the linked files (<ahref='nrf-ftdi-ring.c'>nrf-ftdi-ring.c</a>, <ahref='nrf-ftdi-ring.make'>nrf-ftdi-ring.make</a>, <ahref='serial.h'>serial.h</a>), or visible below.</p>
<p>This RF ring oscillator runs on the NRF24L01 using an Xmega 8E5 microcontroller running at 32 MHz. In the oscilloscope trace above, yellow and blue traces each represent a module. A pin is pulled high when the radio is active and low while the radio is switching modes. By measuring two periods of this waveform, we can determine the round trip time (two transmits and two receives). </p>
<figure>
<imgsrc='nrf-ftdi-layout.png'height=40%>
<imgsrc='pcb.jpg'height=40%>
<figcaption>Layout and PCB.</figcaption>
</figure>
<p>C code is available in the linked files (<ahref='nrf-ftdi-ring.c'>nrf-ftdi-ring.c</a>, <ahref='nrf-ftdi-ring.make'>nrf-ftdi-ring.make</a>, <ahref='serial.h'>serial.h</a>), or visible below.</p>
<figcaption>RF Ring oscillator with nrf52.</figcaption>
<figcaption>RF Ring oscillator with nrf52.</figcaption>
</figure>
</figure>
<p>This RF ring oscillator runs on the NRF52 BLE SOC using the Adafruit feather development board. The NRF52 has an ARM Cortex M4F running at 64 MHz with built in BLE radio. An arduino sketch for the oscillator is available <ahref='nrf52-rf-ring.ino'>here</a>, or visible below.</p>
<p>This RF ring oscillator runs on the NRF52 BLE SOC using the Adafruit feather development board. The NRF52 has an ARM Cortex M4F running at 64 MHz with built in BLE radio. In the oscilloscope trace above, yellow and blue traces each represent a module. A pin is pulled high when the radio is transmitting and pulled low when the radio is receiving. By measuring the period, we can determine the time for a packet round trip (two transmits, two recieves). An arduino sketch for the oscillator is available <ahref='nrf52-rf-ring.ino'>here</a>, or visible below.</p>