Neural Circuits and Behaviour - CNCB


The Centre for Neural Circuits and Behaviour (CNCB) is an autonomous research centre based within Oxford University. It aims to understand how intelligence emerges from the physical interaction of nerve cells by studying the brain from the top down rather than the bottom up. Much of their research is done with fruit flies since the physical events in nerve cells can be linked to brain function more easily than in other animals. 


Fruit Flies are used by the CNCB to understand the brain and the way we learn

Fruit Flies are used by the CNCB to understand the brain and the way we learn

CNCB had developed some LabVIEW code which could control their experiments. The code was developed by a principle engineer who had left the team, bits of it worked, other sections had bugs in it and the in general the code needed needed refreshing, standardising and modernising.

The code had a number of functional areas. Control code was used to set gas flows and valves to inject the odours into a test chamber to stimulate and condition the flies. NI Vision was used to trace the position of the flies in the test chambers and see how they react to the stimulus. A custom script had also been developed in house which allowed measurement routines to be designed and run to perform operant and non-operant conditioning.


We worked with the team at CNCB rewriting the code, optimising it for efficiency and bringing it up to the latest LabVIEW version. In order to do this we did almost a total rebuild of the software taking everything back to basics to ensure no redundant code was left and industry standard designs and methods were used. Tracing algorithms were rewritten and code was improved. We left them with scalable maintainable code which they can now work with in the future.

Used in this project


LabVIEW, DLLs, NI Vision, custom scripting

Hardware & Interfaces

DAQmx, NI IMAQ camera and imaging hardware, 3rd party control circuits


Rewiring code to coding standards, external code reviews & audits, code re-architecture, working using remote technologies, LabVIEW programming