Skip to main content


I have been using the constant current version of my LDBiasDriver and I felt that it would be handy to be able to control the current, monitor it, etc. via a PC. To this end, I designed and have so far had the PCB manufactured for my "LDBiasController".

This new board provides a variable resistance to two LDBiasDrivers as well as monitors the current using an Arduino Nano. I plan to create a serial protocol to do the control and monitoring but I will create a MATLAB or C# based GUI.

In terms of specifications, initially I was going to use a digital potentiometer but the cost of versions with more than 256 steps was prohibitive. I considered (and even designed) a version with two pots to create about 16 bits of resolution but it would have been non-linear and thus hard to control accurately. In the end, I went with the MCP4726 Digital to Analog Converter (DAC) which provides 12 bits of resolution from 0 to 2.5V.

I also wanted an external input capability which can be switched in (I used a 4066 IC for this) to modulate the laser drivers at up to 1 kHz (10 kHz is possible with higher noise version of the MLD203 drivers from ThorLabs). There is no way to guarantee or even sometimes generate a 0-2.5V external signal, so I opted to put a digital pot to attenuate this signal if need be. I am able to switch the output of the DACs through the digital pots too which further enhances the resolution to about 20 bits (I hope)!

Here's the GitHub link to the design files:

As a side note, I had these manufactured at Elecrow. I'm super impressed with them as they added slots to the DC power jack on the board on their own accord saving me a huge potential headache in future!


Popular posts from this blog

Simulink 2x1 MIMO Channel Estimation Test

I have been working on a MATLAB Simulink based Alamouti testbed for USRP software defined radio. I am using the Ettus B210.

I have implemented a very simplistic channel estimation scheme whereby I transmit each of the four QPSK constellation points on each antenna consecutively. I then receive using a single antenna, and after all of the frequency and phase synchronisation I divide what was received by the ideal constellation leading to a simple H-matrix.

Check out this video where you can see the pilot constellation change as I move the antenna! Awesome!

Custom VCSEL Bias Driver

I have been working on a laser diode bias driver for a while now, in line with my latest research project. ThorLabs recently released some great looking bias driver "chip" things, the MLD203 series. I felt that I could use these on a custom board to modulate laser diodes and VCSELs using my USRPs.

In the image above (and below) you can see the two red PCBs which I have designed and constructed. The bias driver (left) connects with an SMA connector to a Bias-T from Mini-Circuits to to TO-Can laser diode adaptor PCB which is visible on the right. I have designed everything to be low noise and high frequency compatible.

Unfortunately, I made a mistake with the laser diode footprint and so I had to mount it upside down! I soldered a SMD capacitor at the point where the little red wire connects to the diode to minimise adverse high frequency effects.

Check out the Git repo for this and more:

Aligning an LG Mode Sorter

The so-called "mode sorter" is a great optical device that allows for easy separation of Laguerre-Gaussian (LG) modes [Berkhout2010]. Combined LG modes, which contain Orbital Angular Momentum (OAM) are input to the one end of the mode sorter and on the other end they are output as "spots" which can be detected with a camera, fibre array, etc. This naturally has many uses in optical communications and physics in general.

I have been working with one of these devices and since the alignment is very tricky, I felt that it would be useful to document it here for my own reference and hopefully that of others!

The first thing to make absolutely sure of is the incoming beams' level. This beam must be perfectly parallel to the axis of the mode sorter, otherwise getting the alignment right after the installation of the mode sorter is close to impossible. I find it useful to mount the mode sorter in a pair of lens mounts. Before installing the sorter, use one of the mount…