1 pontos por GN⁺ 2025-05-16 | 1 comentários | Compartilhar no WhatsApp
  • 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

Links de referência

1 comentários

 
GN⁺ 2025-05-16
Comentários do Hacker News
  • Destaca que o PebbleOS não é o único player nesse espaço e também apresenta o Espruino, uma pequena implementação de JavaScript para microcontroladores, usada no bangle.js e no Fallout Pip-Boy, além de ser fácil hackear o dispositivo em tempo real; também compartilha um link de discussão no GitHub sobre o Espruino
    • Foi a primeira vez que ouvi falar do bangle.js, e gostei da ideia de poder mexer nele à vontade usando uma linguagem que já conheço; queria ter comprado a versão de primeira geração, mas é uma pena que não esteja mais à venda
    • Obrigado por mencionar também o ótimo trabalho de concorrentes menos conhecidos; o Pebble é ótimo, mas eles também merecem atenção; e o seriado Fallout da Amazon é bem divertido, então recomendo se tiver oportunidade de assistir
    • Para referência, também existe o PineTime
  • Chama atenção para a frase “o SDK é open source”; se interessou ao ouvir que um MCU BLE viria com um SDK em código aberto, mas na prática o código BLE é um blob binário; se foi descrito como open source, acha que deveria ser possível ler todo o código-fonte
    • O firmware de dispositivos com rádio BLE sempre é fornecido como blob binário por motivos de propriedade intelectual e regulação
  • Este smartwatch não é tão smart para os padrões de hoje; sentiria bastante falta de recursos convenientes como pagamento por NFC, GPS de banda dupla e conectividade 4G LTE presentes no smartwatch que uso atualmente; o Pebble (e o repebble) troca isso por várias semanas de bateria, mas o incômodo de carregar um Galaxy Watch a cada dois dias não é grande o bastante para abrir mão de todos esses recursos poderosos
    • Por outro lado, eu não ligo para nenhum desses recursos e valorizo bateria longa; é bom que existam vários dispositivos para vários tipos de usuário; só porque este smartwatch não serve para você não quer dizer que “não é smart”, apenas que não combina com aquele usuário
    • A Garmin já oferece a maioria desses recursos com bateria de várias semanas; só falta o 4G, e ouvi dizer que deve aparecer em aparelhos no ano que vem
    • Eu também sentiria falta de GPS, mas ainda não encontrei um dispositivo que entregue a mesma satisfação que o Pebble dava; a Garmin faz concessões em outras áreas (bateria, widgets, calendário, legibilidade da tela etc.), tudo é trade-off
    • Para mim, todos esses recursos são desnecessários; fico satisfeito com um relógio que receba notificações, faça medições simples de frequência cardíaca e permita alguma personalização; se eu tiver que carregá-lo mais de uma vez por semana, nem penso em usar
    • Só pela duração da bateria já é algo bastante impressionante
  • Compartilha um link de um artigo da cnx-software com mais informações sobre esse chip
  • Achei interessante terem escolhido um design de chip único, sem separar o chip principal do chip para BLE; MCUs de alto desempenho normalmente não têm RF, então em muitos casos um projeto com dois chips pode ser mais adequado
    • Mesmo entre MCUs modernos mais avançados, existem chips que oferecem Bluetooth e Wi‑Fi juntos, como NRF e ESP32; hoje em dia eu pessoalmente prefiro o ESP32, pelo aprimoramento contínuo e pelo bom suporte da comunidade; eu também estou desenvolvendo uma plataforma de smartwatch baseada em micropython
    • O núcleo Cortex-M33 do chip SiFli é muito mais rápido do que o núcleo M4 usado no Pebble original; não há necessidade de um MCU ainda mais rápido; o mais importante é a bateria, e desta vez usar um MCU com Bluetooth integrado foi um grande upgrade, expandindo a autonomia de cerca de 1 semana para cerca de 1 mês
    • Para um simples relógio, não é preciso chegar ao ponto de um computador UNIX; mostrar as horas, medir batimentos e se comunicar com a AWS são tarefas plenamente atendidas por um MCU simples
    • Aumentar o número de chips complica o projeto; cada chip precisa de passivos e osciladores, é preciso coordenar a comunicação entre eles, atualização de firmware, formas de depuração etc.; nesse caso, talvez valha mais a pena abrir mão de um pouco de bateria
  • Fico feliz em ver finalmente surgir, no setor de chips de baixo consumo, um produto com foco em open source; me cadastrei no rePebble assim que vi o anúncio; mas depois percebi que, na verdade, eu queria não um smartwatch, e sim um relógio “burro” com alerta vibratório; é um nicho com pouca demanda, mas com pessoas muito interessadas; depois de usar um Casio F105 nos últimos dois anos, não consigo mais tolerar nada maior, mais pesado ou mais grosso do que isso; se tivesse só Bluetooth, eu até aceitaria carregar uma vez por semana; por isso, hoje estou planejando prender entre as alças da pulseira um chip Bluetooth minúsculo que receba todas as notificações do iPhone, junto com um motor de vibração e uma pequena bateria de lítio; ainda lembro da primeira vez que usei a Mi Band 1: sem tela nenhuma, apenas três LEDs RGB com cores diferentes por aplicativo, e eu conseguia saber facilmente que tipo de mensagem tinha chegado
    • Menciona um produto da Citizen chamado W770; comprou recentemente um usado por menos de US$ 200 e achou um relógio bem interessante, combinando cronógrafo, BLE, alarme e motor de vibração; em vez de tela, ele mostra a maioria das informações com os ponteiros, então é essencial ler o manual para aprender a usar; com carregamento solar baseado em supercapacitor, dá para passar meses sem preocupação com bateria mesmo no escuro total; o supercapacitor é uma peça substituível depois de uns 15 a 20 anos de uso; ele simplesmente cumpre sua função sem exigir nada; pode haver outros modelos da Citizen com BLE; se alguém fizer engenharia reversa do protocolo de notificações/Bluetooth e criar um app open source, isso abriria possibilidades interessantes para hackers
    • Ainda uso meu OG Pebble e fico animado com a volta, mas não tenho planos de fazer upgrade; alerta por vibração e notificações já bastam; mas preciso, isso sim, de uma tela legível mesmo sob luz forte e amigável para presbiopia; a tela eInk do OG Pebble cumpre muito bem esse papel; consigo ler mensagens sem tirar o celular do bolso; usado custa US$ 30, e uma bateria nova sai por US$ 15, então o custo-benefício é ótimo; a comunidade Rebble.io também continua funcionando muito bem
    • Eu também gostaria de poder colocar uma pulseira ou fecho “smart” em um relógio Seiko vintage; para mim bastaria receber alertas por vibração só em situações muito específicas; qualquer outra função ou tela mais atrapalha do que ajuda
    • A UX do Apple Watch é desconfortável (tocar uma tela de 2 cm com um dedo de 1 cm...); também não gosto da tentativa de fazer coisa demais; no Pebble, receber notificações de chamadas ou mensagens já era suficiente para eu conseguir ficar longe do celular; o Pebble é extremamente leve, e quando coloco um mostrador específico parece que voltei para casa
    • Eu também só quero um relógio “burro” com alerta vibratório; a grande maioria das notificações não é urgente e só rouba atenção desnecessariamente; no fim, desligo todas e passo a checar o celular manualmente a cada poucas horas; o que realmente preciso é de vibração para alarmes, em casos como “o ônibus está chegando” ou “hora da pausa”; não preciso de sensores desnecessários
    • O Withings ScanWatch também é um produto que se encaixa bem nesse uso, com bateria de quase um mês
    • Meu desejo de encontrar um fitness tracker em vez de um relógio também é uma demanda bastante rara; não gosto de anéis, preferiria algo em formato de pulseira ou, idealmente, uma tornozeleira; mas imagino que isso dificultaria medir frequência cardíaca ou coletar dados extras
    • Dispositivos como a Mi Band preenchem bem esse nicho; são pequenos e leves, não incomodam, e ainda oferecem tela e uma autonomia razoável
  • Começou a hackear um SoC barato da Freqchip, da China; no Ali é possível encontrar smartwatches com esse chip por 3 euros
    • Pede um link de um relógio com esse chip, dizendo que não conseguiu encontrar mesmo após algumas buscas
    • Fica surpreso ao ver que alguns chips, com MOQ de 3 mil unidades, custam 2,6 yuans (US$ 0,36) e ainda trazem Arm Cortex-M3, BLE e suporte a sig-mesh; fica curioso sobre a usabilidade do SDK
  • Fico feliz em ver um hardware até certo ponto open source rodando PebbleOS; tomara que em 2025 o formato de blog com texto alinhado à esquerda finalmente desapareça, já que com a popularização das telas widescreen é uma pena dificultar a leitura sem necessidade
  • Sobre a afirmação de que “a restrição mais interessante e mais difícil é a compatibilidade de software”, acha que isso na verdade deveria estar no fim da lista, de tão fácil que seria resolver
    • Neste produto específico, a compatibilidade de software é muito importante por duas grandes razões: primeiro, a equipe atual é muito menor do que na época do antigo Pebble, então reduzir o trabalho de software é prioridade máxima; segundo, todos os apps e watchfaces são distribuídos como binários ARM, então se a arquitetura do MCU for diferente, a compatibilidade anterior desaparece; isso também vale para o ESP32
    • Se tudo for proprietária, muita coisa pode emperrar; é bem diferente do hardware padrão de PC
  • Li este texto com grande interesse; o nimBLE é uma excelente stack Bluetooth e é empolgante pensar que ele pode abrir caminho para futuros avanços no Core Devices