Sistema embarcado para auxílio à rotina de medicação, desenvolvido com a placa BlackPill STM32F401CCU6. O equipamento permite configurar um horário diário, mantém data e hora por meio do RTC DS3231, apresenta as…
MediBox F401CC is an open-source printed circuit board by ChaMatteCoder, from the ChaMatteCoder/medi-box repository on GitHub. It is a 2-layer board of 100 × 70 mm with 41 parts on 43 nets, routed with 130 tracks and 0 vias.
It is built around the TMB12A05. Its parts include 9 capacitors, 5 resistors, 3 switches, 2 diodes and 1 transistor. It belongs with the STM32 boards of this library.
Sistema embarcado para auxílio à rotina de medicação, desenvolvido com a placa BlackPill STM32F401CCU6. O equipamento permite configurar um horário diário, mantém data e hora por meio do RTC DS3231, apresenta as informações em um display OLED e emite alertas sonoro e visual. A abertura da tampa, detectada por reed switch, confirma o acesso ao medicamento.
Guia rápido para avaliação
Os principais materiais da entrega estão disponíveis nos links abaixo:
MediBox/
├── datasheets/ # Datasheets dos componentes utilizados
├── docs/ # Memorial e relatórios auxiliares de ERC/DRC
├── firmware/
│ └── MediBox_F401CC/ # Projeto completo do STM32CubeIDE
│ ├── Core/ # Código-fonte da aplicação e drivers
│ ├── Drivers/ # CMSIS e STM32 HAL
│ ├── Debug/ # Binário, ELF, mapa e artefatos da compilação
│ └── MediBox_F401CC.ioc # Configuração do STM32CubeMX
├── hardware_PCB/
│ ├── BOM_E_CUSTOS/ # BOM em CSV e orçamento estimado
│ ├── GERBERS_E_FURACAO/ # Arquivos para fabricação da placa
│ ├── MediBox_F401CC_rework_V2_ZERO_ERC_DRC/
│ │ ├── 3D_Models/ # Modelos 3D utilizados no projeto
│ │ ├── *.pretty/ # Bibliotecas locais de footprints
│ │ ├── *.kicad_sym # Biblioteca local de símbolos
│ │ ├── *.kicad_sch # Esquemático eletrônico
│ │ ├── *.kicad_pcb # Leiaute da placa
│ │ └── *.kicad_pro # Arquivo principal do projeto KiCad
│ └── TESTES_E_VALIDACOES/ # ERC, DRC e testes de firmware em host
└── presentation/ # Apresentação final em PDF
Funcionalidades
configuração da data e da hora do sistema;
configuração de um horário diário para a medicação;
relógio de tempo real com RTC DS3231 e bateria de backup;
exibição de data, hora, alarme e estado da tampa no OLED SSD1306;
alerta sonoro por buzzer e alerta visual por LED;
confirmação de abertura da tampa por reed switch;
interface por três botões com tratamento de debounce;
indicação visual do estado do RTC pelo LED da BlackPill;
máquina de estados não bloqueante, executada periodicamente a cada 10 ms.
Funcionamento da interface
Na primeira inicialização, caso o RTC não possua uma data e hora válidas, o sistema conduz o usuário pelo ajuste do relógio. Em seguida é solicitado o horário diário do medicamento.
Situação
Botão UP
Botão DOWN
Botão OK
Operação normal
Abre o ajuste do alarme
Abre o ajuste do RTC
Reservado
Tela de ajuste
Incrementa o valor
Decrementa o valor
Avança ou salva
Quando o horário configurado é atingido, o buzzer e o LED de alerta são acionados. A abertura da tampa muda o estado da dose e encerra a sinalização conforme a máquina de estados do firmware.
O LED de status da BlackPill também informa a condição do RTC por diferentes frequências de piscada: operação normal, horário inválido ou falha de comunicação.
Selecione o projeto MediBox_F401CC e execute Build Project.
Para gravar a BlackPill, conecte um programador ST-Link às interfaces SWDIO, SWCLK, 3V3 e GND.
O projeto utiliza STM32Cube FW_F4 V1.28.3, compilador GCC e clock do sistema configurado em 84 MHz. Os arquivos pré-compilados .bin e .elf também estão na pasta Debug.
Projeto eletrônico e PCB
O projeto principal do KiCad é MediBox_F401CC.kicad_pro. Ele referencia bibliotecas locais de símbolos, footprints e modelos 3D incluídas na própria entrega, permitindo abrir o esquemático e o leiaute sem depender de arquivos externos do autor.
Para fabricação, envie o conteúdo da pasta GERBERS_E_FURACAO ao fabricante da PCB. Ela contém cobre, máscara, serigrafia, contorno, arquivos de furação PTH/NPTH e o arquivo de trabalho Gerber.
Validação
Os relatórios finais foram gerados no KiCad 10.0.4 em 31/07/2026:
A pasta TESTES_HOST_FIRMWARE reúne os fontes de testes complementares executáveis em computador, com simulação das dependências de hardware. Os relatórios intermediários e as linhas de base também permanecem em docs para rastreabilidade.
Documentação técnica
Os datasheets utilizados no dimensionamento, na integração e na conferência das interfaces estão organizados em datasheets. O acervo contempla os principais módulos e componentes do projeto, incluindo o STM32F401CCU6, o RTC DS3231, o display SSD1306 e os dispositivos de acionamento e proteção.
It measures 100 × 70 mm and has 2 copper layers, 1.6 mm thick.
What parts does the MediBox F401CC use?
41 parts, built around the TMB12A05. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the MediBox F401CC KiCad files?
From the ChaMatteCoder/medi-box repository on GitHub, at the commit this page was made from: the board is hardware_PCB/MediBox_F401CC_rework_V2_ZERO_ERC_DRC/MediBox_F401CC.kicad_pcb and its schematic hardware_PCB/MediBox_F401CC_rework_V2_ZERO_ERC_DRC/MediBox_F401CC.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the MediBox F401CC design in my own project?
Its repository states no licence, so its author keeps all rights: ask ChaMatteCoder before reusing the design.
An open-source project to develop a custom ESP32-based flight controller designed primarily for use with ArduPilot. Focused on affordability, flexibility, and ease of integration with various robotic and UAV platforms.
Scheda di controllo basata sul modulo Waveshare ESP32-S3-ETH, con ingressi sensore, RS-485, pilotaggio rele, buzzer e alimentazione/protezioni dedicate.
An 8-channel relay controller with Wi-Fi, an RS-485 field bus, and a 12 V power rail for downstream nodes. Designed as the master board for a small home-automation network: this board switches loads directly, talks to…