Uma vez recebi a tarefa de fazer um quadro de informações para exibir os resultados do jogo de dardos.
Naturalmente, a primeira coisa que fiz foi acessar o Google para ver o que havia no mercado. E se em geral existem placares esportivos, por exemplo, para futebol / hóquei ...

então não há nada para dardos. Bem, não, alguns escritórios oferecem produção, mas sem fotos do resultado final, sem preços - não.

Ao jogar 501, os jogadores usam um aplicativo móvel para calcular a pontuação do jogador. Há um grande número deles. Bem, claro, isto é essencialmente apenas uma calculadora - apenas uma pessoa preguiçosa não escreverá no mesmo Android. No entanto, alguns aplicativos, além da conta do jogo, trazem no tabuleiro estatísticas dos jogadores. Assim, a tarefa era duplicar a pontuação dos jogadores exibida no aplicativo para este placar esportivo.

Foi-me mostrado um dos aplicativos que os jogadores usam. Eu me virei para o desenvolvedor, na vizinha Bielo-Rússia, com uma pergunta se ele seria capaz de introduzir a saída de informações em um dispositivo externo via BlueTooth em seu programa. Ao que ele respondeu que ele mesmo está aprendendo a escrever aplicativos no android, e não quer se incomodar.
Bom, o que fazer, você tem que fazer sozinho ... Tudo sozinho, com as próprias mãos (c)
Aliás, nunca comecei a programar no Android.
O seguinte esquema foi desenhado em minha cabeça.
Há um telefone / tablet com um aplicativo, há um placar com um microcontrolador, módulo Bluetooth e indicadores LED.
A primeira pergunta é quais indicadores usar? Sem ambiguidade alto (15-20 cm de altura), LED inequivocamente.
Clássico de sete segmentos?
Sem
desvantagens:
- Preço Alto
- irreparável
- controle e circuito de energia necessários
- não encontrou o tamanho que você precisa (máx. 5 cm)

Composição dos segmentos?
Também não, pelas mesmas razões, exceto a segunda e a última.

E então, como resultado de um brainstorming, surge a ideia de fazer números a partir de uma faixa de LED no ws2812b - LEDs controlados “inteligentes”. "Sim, exatamente igual !!!", - Eu gritei, "Obrigado, Kostya." Não poderia haver solução mais engenhosa.
As vantagens desta escolha:
- barato (na minha versão 250 rublos saíram para uma figura de 20 centímetros de altura),
- você pode substituir facilmente um LED quebrado (isso é importante ao usar ws2812b),
- controlado por apenas um fio do microcontrolador. Não é necessário bloquear o circuito de indicação dinâmica, registradores de deslocamento, acionador de energia. A fita é alimentada por 5 volts.
- você pode criar um dígito de qualquer forma e tamanho.
Bem, todo o esquema foi aprovado: 1.aplicação -> 2.módulo blutus HC-05 -> 3.microcontrolador (arduinya ou stm32) -> fita 4.ws2812b.
A partir desse esquema, o primeiro ponto foi o mais difícil (quase impossível) para mim. Eu trabalho com todo o resto.
Para criar aplicativos, eu uso o ambiente Android Studio, que funcionou muito no meu antigo computador. (2 núcleos, 2 GB, liga inicia por 5 minutos). Encontrei uma opção para criar aplicativos simples no ambiente Thunkable online, que permite programar em um ambiente gráfico em "blocos". Lá joguei um aplicativo simples, configurei o bluetooth. E exibiu as informações necessárias no placar.

Em algum momento, percebi que usar esse ambiente online não é certo, ainda preciso dominar o Android Studio. Comprei um novo computador, instalei, lancei o Studio. Comecei com HelloWorld, é claro. Tive que lidar com layouts, layouts, classes, Java e outras porcarias. Ao mesmo tempo, comprei uma conta no Google Play pagando $ 25 por ela.
Bem, então é uma questão de tempo dominar o Android e escrever código.
É assim que se parece no ambiente de desenvolvimento do Android Studio: É assim que se parece o

processo de desenvolvimento do microcontrolador stm32:

A própria placa foi feita de um pedaço de laminado, no qual os números coletados, arduino e módulo bluetooth foram colados. A frente foi coberta com plexiglass. E eles deram para testar a operação.

Imediatamente, surgiram comentários e uma nova lista de desejos (bem, isso é normal, desde um protótipo). Era necessário adicionar uma contagem de pernas e um ponteiro para o jogador atual e, se possível, adicionar um campo para exibir os nomes dos jogadores. Contagens de pernas e flechas foram adicionadas quase imediatamente.

Mas para os nomes dos jogadores eu tive que mexer e ao mesmo tempo criar imediatamente um segundo protótipo, que agora está trabalhando em um clube de dardos em uma pequena cidade fechada N.

Orçamento de
artesanato : fita ws2812b 1300 rublos
controlador stm32 150 rublos
HC-05 bluetooth 200 rublos
5V fonte de alimentação 250 rublos ...
laminado, plexiglass, fechos, tingimento - de todos os tipos de resíduos.
PS. O principal inspirador, Cliente e participante do Darts Club daqui a algumas semanas, defenderá a honra da Rússia no Campeonato Mundial de Dardos em Londres. Vamos desejar boa sorte a ele.