After a few more days to tune the API between the nRF and the STM32, we’ve managed to get some interesting results. We’re now able to detect an incoming spell, to trigger wonderful LEDs animations, and most of all to broadcast it to the client. It is also working the other way around (if the server decides to attack the wizards!). The communication between the phone and our PCB is operational, and I have worked on the wand’s main thread to gather the different modules we’ve all been building. We have chosen to use an event-driven structure to keep the different parts of our code quite independent (that way, we can parallelize our efforts) and this choice seems so far efficient enough for our purpose. The connection between the BLE, the IR emitter/receiver, the LEDs and the motor is functional.
The rest of the team is working hard on the IMU, since movement recognition is a crucial part of our project. The last part of our 3D-printed wand was successfully printed today ; we made it very practical, and we will try to make it shinier when we have some time. We also decided to slightly switch priorities: instead of focusing on firmware flashing over USB (which is not essential for a prototype), we’ll try to set up the microphone when the human power becomes available. Yelling wizards would definitely improve the game play!
Oh, and we are struggling on the capacitive controller that yields unexpected (or un-understood) results. We’re not giving up since it would provide a much better user experience than a regular, poor, depressing switch. The great magi have been summoned. Also, I have started to build a basic Android application that will provide an user interface slightly more friendly than nRF Master Control Panel (well, maybe not, but at least it will be simpler). After a few hours of OTAs, the Nexus 5 I’ve been lent is now running Android 5.1 and I’ll be using the improvements API 21 brought to the BLE stack. This application will provide an interface between our game server (that’s also on the todo list) and our wand.
That pretty much sums it up. SGF2ZSBhIGJyaWdodCBTdW5kYXkh