Início

Serviços embedded de uma só mão

Hardware, firmware, projeto FPGA, diagnóstico e automação de testes — em contrato a preço fixo com compromisso firme de entrega ou em regime de horas para projetos em curso.

Os projetos embedded exigem frequentemente várias disciplinas em simultâneo: é preciso projetar um circuito, programar um microcontrolador, verificar um FPGA e montar uma bancada de ensaio. Em vez de coordenar uma cadeia de fornecedores, pode reunir estas tarefas numa só mão. Isto poupa interfaces, esforço de coordenação e diluição de responsabilidades.

Seguem-se as seis áreas de prestação em que atuo. Não estão pensadas como catálogo — a maioria dos projetos combina várias.

Desenvolvimento

Desenvolvimento de hardware e software

Conceção e desenvolvimento de placas e dispositivos eletrónicos — do circuito analógico ao projeto FPGA. Sistemas com microcontrolador e baseados em FPGA de uma só mão, incluindo esquema, traçado, firmware e desenvolvimento de drivers próximos do hardware. Se desejar, até à produção em série através de parceiros estabelecidos.

  • Projeto de circuitos (analógico e digital)
  • Traçado de placas para protótipo e série
  • Firmware de microcontrolador em C/C++/assembler
  • Projetos FPGA em VHDL e SystemVerilog
  • Desenvolvimento bare-metal em microcontroladores limitados
  • Desenvolvimento de drivers para interfaces próximas do hardware
  • Bootloader, watchdog, mecanismos de atualização de firmware
  • Escolha de hardware e aprovisionamento de componentes
Algoritmos

Desenvolvimento de algoritmos

Desenvolvimento sistemático do modelo matemático à implementação em hardware. Os algoritmos são primeiro modelados em pseudocódigo ou Matlab, depois implementados em C/C++ para microcontroladores ou em Verilog/SystemVerilog para FPGA — consoante a plataforma de destino e os requisitos de tempo real.

  • Modelação matemática e pseudocódigo
  • Implementação em C/C++ para microcontroladores
  • Implementação em Verilog/SystemVerilog para FPGA
  • Processamento de sinal (filtros, FFT, funções de janela)
  • Controlo automático (PID, controlo de estado, métodos adaptativos)
  • Algoritmos para protocolos de comunicação
  • Otimização sob restrições de memória e tempo de execução
Diagnóstico

Diagnóstico e comunicação de veículo

Desenvolvimento e ensaio de conceitos de diagnóstico e interfaces de comunicação para unidades de comando de veículo. Experiência com os bus consolidados no ambiente automóvel (CAN, CAN FD, MOST) e com o diagnóstico UDS segundo a ISO 14229.

  • Diagnóstico UDS (ISO 14229)
  • Análise e simulação CAN / CAN FD / MOST
  • Programação flash e configuração de unidades de comando
  • Conceitos de diagnóstico para automóveis ligeiros e veículos comerciais
  • Implementações de gateway entre bus
  • Análise de carga de bus e estudos de temporização
Ensaios & QA

Automação de ensaios e qualificação

Validação sistemática de sistemas embedded — da especificação de ensaio à libertação para série. As bancadas de ensaio são concebidas de modo a que a equipa do cliente possa operá-las e estendê-las autonomamente após o fim do projeto.

  • Automação de ensaios com CANoe/CAPL, LabView, Python
  • Ensaios HIL (hardware-in-the-loop)
  • Robot Framework para ensaios ponta a ponta
  • Especificação e documentação conforme ASPICE
  • Análise de cobertura de ensaios e identificação de lacunas
  • Bancadas de ensaio reproduzíveis com gestão de versões e configuração
Software

Desenvolvimento web e de apps para o contexto embedded

Software de acompanhamento para sistemas embedded: interfaces de configuração, painéis de bordo, visualização de dados e aplicações móveis. Esta camada é frequentemente subestimada — todavia determina como o utilizador final perceciona o sistema embedded.

  • Frontends web (JavaScript, HTML/CSS, Chart.js)
  • Backends web e APIs REST (Python/Flask, Node.js)
  • Visualização de dados em tempo real (Socket.IO, WebSocket, MQTT)
  • Aplicações Android (Kotlin)
  • Ferramentas de configuração para dispositivos embedded
  • Painéis para aquisição de dados e diagnóstico
Projeto

Apoio a projetos e consultoria

Quando um projeto embedded em curso necessita de substância adicional — estrangulamentos, código herdado, questões de detalhe delicadas — intervenho de forma orientada e flexível no tempo. Esta forma de cooperação é particularmente útil quando se sabe o quê é preciso, mas não quanto.

  • Consultoria de projeto para conceção embedded
  • Apoio flexível à hora
  • Assunção total a preço fixo
  • Transferência de conhecimento para equipas do cliente
  • Documentação técnica e revisões de código
  • Análise de bases de software herdadas
Projeto

Gestão de projeto desde o primeiro contacto até à entrega

Os projetos embebidos raramente falham em tarefas técnicas isoladas. Falham por requisitos pouco claros, documentação incompleta, falta de evidências perante normas e relatórios de estado que ocultam mais do que esclarecem. Mediante pedido, assumo não só o desenvolvimento em si, mas também a condução metódica do projeto — desde a primeira conversa até à aceitação.

  • Levantamento de requisitos na reunião inicial e estruturação num caderno de encargos
  • Especificação funcional, projeto de arquitetura e definição de interfaces
  • Planeamento de marcos, estimativa de esforço e registo de riscos
  • Matriz de rastreabilidade do requisito até à implementação e ao teste
  • Tabelas FMEA e FTA, pesquisa normativa IEC 61508, ISO 26262 e IEC 62304
  • Revisões de código e acompanhamento da implementação
  • Relatórios de estado, gestão de alterações e documentação de aceitação

No blogue: Gestão de projeto em projetos embebidos — porque o trabalho mais difícil está antes do primeiro esquema

Só ofereço gestão de projeto em combinação com a responsabilidade técnica — como parte de um desenvolvimento completo ou para acompanhar uma equipa liderada pelo cliente. A mera coordenação sem profundidade técnica não faz parte da minha oferta.

Formas de cooperação

Dois modelos de contrato consoante o tipo de projeto:

Sem cedência de pessoal. Detalhes na página Adjudicação.

Esquema de cores

Idioma