Yes indeed, I'm a senior engineer with 15+ year's experience in the industrial / medical electronic field. In July 2010 I decided to start working as a freelance with the name of PureDSP. Since then, I closely collaborate with companies, technological centers and other independent professionals in order to design and develop electronic devices with various levels of complexity, in the least of time and using the cutting-edge technologies.
To do that, I rely on three basic pillars:
Agility as a result of the Technology Watch, implementation of innovative solutions and the use of legally-licensed Toolchains.
Flexibility to adapt to different situations and work environments, both locally and remotely.
Responsibility in relation to the undertaken commitment in a given project, maintaining strict confidentiality. And above all, preserving the environment and its habitat.
- Sensor Signal Acquisition
- C/C++ Programming
- Device Drivers Creation
- Analog and Digital Design
- Testing and Assay
- Real Time Operating Systems
- Schematic Capture
- Serial Communications
- PCB Routing for EMC and signal integrity
- PCB design using KiCAD
- Cross-platform Applications
- 8/16/32-bit Microprocessors and DSP
- DSP algorithms
- Manufacturing support
Sensor Signal Acquisition
The sensor signal acquisition is performed by Analog to Digital Converters (ADC).
With these devices it is possible to capture signals from the physical environment at different speeds and intervals, which can be stored and processed by a Microprocessor based system.
Here's some physical signals (scalar or vector) that can be highlighted:
The written and debugged code to be embedded into a 8/16/32-bit Microprocessor, usually in a FLASH memory and in some cases in other storage media (E2PROM, SRAM, FRAM).
Besides the development of the code, we also carry out other activities:
Device Drivers Creation
The driver development involves creating an abstraction layer between the physical Hardware and the logical world of Software. This layer (HAL) that acts as an interface between the two entities can be provided by third parties but sometimes it has to be developed completely from scratch.
A device driver can be configured as follows:
Analog and Digital Design
In addition to data capture from physical world and its conversion to digital (Analog to Digital Converter), you may switch the process to the inverse. That is, the digital data conversion into an analog signal by means of a Digital to Analog Converter (DAC).
Here's some applications that use this technique:
Testing and Assay
Once the manufacturing and assembly is done, the electronic system is submitted to a verification process that can be:
Functional or Black-box, where the outputs are checked applying different input stimulations.
In circuit or White-box, where tooling is required to access different parts of the circuit and analyse its operation.
In some cases it may be interesting to apply other stimuli:
Real Time Operating Systems
Commonly known as RTOS, these kind of operating systems gain importance in equipments that requires a deterministic operation.
In this case, the system is comprised of one or multiple tasks running during a sliced-time assigned by the scheduler. The management is achieved by assigning different priorities to those tasks, managing shared resources or receiving/sending events, among other features.
Thanks to the use of Electronic Design Automation Software (EDA), it is possible to quickly draw the schematic of an electronic circuit through the following phases:
It considers both Synchronous or Asynchronous communication, as well as Half or Full-duplex. There is an extensive variety of protocols and physical mediums like:
PCB Routing for EMC and signal integrity
The layout of the Printed Board Circuit (PCB) is a critical step of the Hardware design. For this reason, we'll consider the need to manufacture 1, 2 or multiple layers, depending on the circuit density. Moreover it is important to take into account:
PCB design using KiCAD
Course organized in two exercises (Lab1 and Lab 2) of increasing difficulty. In these exercises it will be explained the operation of KiCad step by step and covering many of its options. The tool will be used in order to carry out a successful fabrication of a 4-layer (class 5) Printed Circuit Board.
Here's some KiCAD's advantages:
High-level application development for the support, maintenance and interfacing of electronic systems. Eg:
Such applications can run on different computers regardless of the installed Operating System.
8/16/32-bit Microprocessors and DSP
If it's needed to implement a Microprocessor-based system, should I take into account an 8 or 16-bit device for the design? We may have to use a 32-bit solution?
The answer depends on the application complexity and the available Hardware resources for data capturing, processing and interfacing with other devices.
All choices are valid if they can argue.
Sometimes It's required to perform certain operations of a high computational load. Data processing in chunks of blocks allows to implement algorithms optimized for speed and memory in order to get an expected result.
To achieve this we can take advantage of:
For the manufacture and assembly of the cutting-edge electronic devices, the support comprises different options:
Tel: (+34) 649 610 809