
Les UPS sont couramment utilisés dans les applications de serveur pour se protéger contre les pannes de courant. Pour les applications domestiques, par exemple pour protéger un NAS, de petites alimentations sans interruption (UPS) existent, mais elles n'ont toutes pas la communication HID USB pour arrêter le NAS / serveur / hôte lorsque la batterie est faible. Pour les applications à petite échelle comme les produits Synology NAS qui fonctionnent à 12V, il n'y a actuellement aucun produit UPS qui est capable de tamponner la puissance et de communiquer sur USB lorsque le niveau de la batterie est extrêmement bas. Seules les solutions à haute tension (110 V ou 230 V) existent, qui incluent également un onduleur et sont donc beaucoup moins efficaces et maîtrisées pour un simple NAS de synologie 12V. Il s'agit d'un ups open source simple, basé autour d'un STM32F405 et écrit en rouille.



La communication USB HID est basée sur l'excellent travail effectué par Abratchik pour la plate-forme Arduino ici. Le matériel est essentiellement juste un circuit de charge où la capacité restante est surveillée par le MCU.

Attention! Ce PCB ne contient pas de circuit de protection de la batterie - si vous souhaitez en implémenter un, utilisez simplement le boîtier de batterie Keystone 1047 au lieu du Keystone 1048p et câblez un BMS BROP 2S avant de connecter les batteries au PCB. Le matériel se trouve dans le dossier matériel, contenant des fichiers étapes pour le boîtier ainsi que des fichiers Eagle pour le PCB.
Connectez la carte à l'aide d'un V3 ST-Link (avec TagConnect) à un port USB sur l'ordinateur. Assurez-vous d'alimenter la carte avec un connecteur USB-C supplémentaire. (St-Link ne fournit pas de puissance)
Démarrez d'abord le serveur OpenOCD dans une fenêtre Terminal / Console: openocd -f interface/stlink-v2-1.cfg -f target/stm32f4x.cfg
Flash / Exécutez le code sur le matériel en utilisant:
cargo run --release
Remarque: la libération est importante pour que l'USB fonctionne de manière fiable!
Pour configurer votre système, assurez-vous de suivre ce guide!