Sobre este projeto
it-programming / desktop-apps
Aberto
A Arcade Haus, empresa especializada na criação de salas de jogos interativas, busca um desenvolvedor Unity C# para integrar novos periféricos ao nosso sistema. Nossa engine proprietária, desenvolvida em Unity, atualmente controla o hardware das salas (pisos de led) através de conversores usr-n540, utilizando comunicação serial para ethernet/tcp. Estamos em fase de expansão e precisamos de um profissional para nos auxiliar na implementação de drivers de comunicação para novos dispositivos.
O Desafio:
O profissional selecionado trabalhará em conjunto com nosso Lead Developer para implementar drivers de comunicação na Unity para dois novos tipos de dispositivos, seguindo protocolos hexadecimais detalhados que serão fornecidos:
1. Botões Capacitivos (com LEDs RGB e Sensores):
- Implementar comunicação bidirecional a 115200 baud.
- Desenvolver a lógica para envio de comandos de cor (RGB, com valores de 0 a 254).
- Criar o parsing para leitura de input dos sensores, interpretando bytes de status (0A para pressionado / 05 para solto).
2. Telas Digitais (Displays):
- Desenvolver a funcionalidade para envio de comandos que permitam a exibição de números, letras e cores.
- Implementar a lógica de endereçamento dos displays, que é baseada em DIP Switch (com faixas de 1 a 63).
Escopo Técnico:
- Criar classes em C# dentro do ambiente Unity para gerenciar a comunicação via Sockets TCP.
- Implementar a montagem de pacotes de dados (Byte Arrays) de acordo com a documentação fornecida, incluindo Header (FF), Comandos, Parâmetros e o cálculo de Checksum (Low Byte).
- Gerenciar a comunicação de forma assíncrona para garantir que a Main Thread do jogo não seja bloqueada, mantendo a fluidez da experiência interativa.
Requisitos Obrigatórios:
- Proficiência avançada em Unity (C#).
- Domínio de conceitos e implementação de tcp/ip e sockets.
- Experiência comprovada com protocolos de baixo nível (Hexadecimal, Serial, Modbus ou similares).
- Capacidade de interpretar datasheets técnicos e traduzi-los em código funcional.
Diferencial:
- Experiência prévia com conversores USR-N540 ou em projetos de automação industrial.
Entregáveis:
O projeto resultará em um código C# modular, exaustivamente testado e bem documentado, capaz de enviar comandos e ler retornos dos hardwares integrados sem latência perceptível. Toda a documentação dos protocolos será fornecida ao profissional.
Categoria TI e Programação
Subcategoria Aplicativos desktop
Qual é o alcance do projeto? Criar um novo aplicativo
Prazo de Entrega: Não estabelecido
Habilidades necessárias