‣ WiFi (Nordic, ESP and other brands)
‣ Bluetooth and BLE (Bluetooth Low Energy)
‣ Radio Modems (including GSM and AT commanded)
‣ IR (Infrared): short range up to 1.1Mbs
My skills have enabled me to write many low-level drivers to circumvent various bugs within some higher-level modules.
‣ Ethernet: TCP, UDP, IPv4, Ipv6, and custom Ethernet
‣ USB
‣ IEEE-488
‣ EISA
‣ PCI
‣ UART
‣ LPT
‣ SPI
‣ I²C
‣ I²S
‣ SCI
‣ LIN
‣ CAN
‣ Others
I am experienced in:
‣ Programming a range of microcontrollers from 8 to 64-bit, with low to high pin count
‣ Complex algorithms
‣ Efficient real time coding
‣ From developing rolling code Garage Remote Control devices to specialised high-speed serial IO extenders
‣ Programming Language C, C++ plus many others
‣ Assembly Language (ARM, 6805, 6808, HC11, HC12, 8051, Z80 plus others)
My extensive range of tools to assist DSP development consist of:
‣ Filters – FIR and IIR
‣ FFT, DFFT, Linear FT
‣ Correlation and Convolution
Knowing what works and what doesn’t when it comes to IO interfacing allows me to be able to provide a solution to an industry’s nemesis e.g., lightning hitting a communications tower or static electricity generated by a plastic bag making machine. My ability to design for ECM Compliance streamlines this process.
Robustness is not limited to just hardware; all user interfaces need to be robust whether this be hardware or software.
I have been using discrete logic devices and PLDs (Programmable Logic Device) in many of my designs, I know that it is imperative to find the correct balance, saving time and money. While PLDs have the potential to offer a shorter design cycle, this can often backfire causing increased power consumption, a greater complexity with EMC compliance, and lower reliability due to reduced ESD and Latchup immunity.
Working with linear circuits can be tricky. Good grounding and shielding techniques are important.
Digitisation of linear signals requires a good understanding of Sampling Theorem, antialiasing and reconstruction, ADC (Analogue to Digital Conversion), and DAC (Digital to Analogue Conversion) techniques.
I have a excellent understanding of Compression and Expansion in both the Linear and Digital domains.
Having worked with electric motors for some time, I have an excellent understanding of motor control principles. This includes brushed, brushless, induction, synchronous, single phase, multiphase, stepper... and their various amplifiers and drives.
I also have an excellent understanding of position encoding.
I have worked on several projects requiring low power operation, including remote control devices.
These projects are often battery operated and also require battery maintenance solutions.
I have also worked with technologies like solar, supercap, and induction.