Como construir um smartwatch: escolhendo o chip
(ericmigi.com)- Foi escolhido o SF32LB52J da SiFli como chip do Core Time 2
- Uma das decisões mais importantes no projeto de um smartwatch é justamente a escolha do chip
- Compatibilidade de software, consumo de energia e custo unitário têm grande influência nessa escolha
- O chip da SiFli oferece SDK open source, baixo consumo de energia e memória de sobra
- Esta série vai abordar futuramente como escolher outros componentes principais, como o display
Visão geral
- Este texto é a primeira parte de uma série sobre como construir um smartwatch por conta própria
- O objetivo é mostrar que qualquer pessoa, com um pouco de esforço, pode criar um smartwatch utilizável por volta de 2025
- Espera-se que a abertura do código do PebbleOS incentive o desenvolvimento de smartwatches mais criativos
- Um smartwatch é composto, em linhas gerais, por três elementos principais: hardware, software (firmware/sistema operacional) e aplicativo móvel
Desmembrando os componentes de hardware
- O hardware de um smartwatch pode ser dividido em cinco grandes elementos de sistema
- Chip microcontrolador (geralmente com rádio Bluetooth integrado)
- Display
- Sensores e dispositivos de saída (botões, toque, microfone, acelerômetro, alto-falante etc.)
- Outros componentes eletrônicos (chips, componentes passivos, PCB, bateria etc.)
- Estrutura mecânica (caixa do relógio, vidro, botões, pulseira, cabo de carregamento etc.)
- Sensores, bateria, pulseira, microfone e itens do tipo já têm muitas opções disponíveis em várias faixas de preço, então hoje são escolhas relativamente fáceis
- As decisões mais difíceis são o microcontrolador + rádio Bluetooth e o display
A importância da escolha do chip (microcontrolador)
- O MCU funciona como o “coração” do smartwatch, integrando em um único chip CPU, RAM, armazenamento flash, I/O e rádio
- Escolher o MCU adequado é encontrar um ponto de equilíbrio entre várias restrições, como custo, consumo de energia e compatibilidade de software
- Como cada MCU tem SDK, drivers e sistema de build diferentes, o desenvolvimento de software fica mais complexo
- O PebbleOS foi ajustado apenas para MCUs de uma empresa específica (STM), então migrar para outro MCU exige mudanças nos drivers e no sistema de build
- Alguns MCUs têm dificuldade para oferecer o suporte a FreeRTOS necessário ao PebbleOS
- Como não se trata de produção em massa, o custo de desenvolvimento de software passa a representar uma parte significativa do custo do produto
Chips usados anteriormente e processo de escolha
- Os relógios Pebble do passado usavam o STM32F2, e no início a escolha do chip muitas vezes era feita com base em relacionamentos e conselhos do entorno
- Mais recentemente, foi usado o chip Nordic nRF52840 para criar o protótipo do smartwatch Core 2 Duo
- O desenvolvimento avançou com a migração para a stack BLE open source (nimBLE)
- Para o Core Time 2, que exige mais memória e desempenho, o nRF52840 chegou ao seu limite
- O chip mais novo e barato da Nordic (nRF54L15) não tem RAM suficiente, e o chip avançado (nRF54H) tem preço alto
- Também é necessária uma interface especial para acionar o display colorido do Core Time 2
Descoberta e escolha do chip da SiFli
-
Vários candidatos (Apollo, BES, Dialog etc.) foram avaliados, mas não atenderam às expectativas por motivos como a ausência de SDK open source
-
Alguns chips, como os da BES, tinham um ambiente de desenvolvimento inadequado por causa de NDA e da falta de divulgação de código de exemplo
-
Depois de receber por acaso um e-mail do CEO da SiFli e começar a conversar, ficou claro que a empresa é bastante ativa no ecossistema open source
-
Os chips da SiFli já estão sendo usados em dezenas de milhões de smartwatches (marcas: Redmi, Oppo, Noise etc.)
- O modelo mais compacto (SF32LB52x) traz mais de 512K de SRAM, 16M de PSRAM e um controlador dedicado para display MIP
- Baixo consumo de energia (~50uA com BLE conectado), com preço abaixo de 2 dólares
- Opções com mais 1~2MB de SRAM
- SDK open source no GitHub e promessa de suporte ao port do PebbleOS
-
Como resultado, o chip escolhido para o Core Time 2 foi o SF32LB52J (versão 1.8V)
Conclusão e próximos passos
- O Core Time 2 será desenvolvido com o chip SiFli SF32LB52J
- No próximo texto, o tema será o processo de escolha do display
1 comentários
Comentários do Hacker News