First of all, I wish all members of the FX-Sabers forum a Happy New Year!!
It being long overdue I'm very excited to share the news to the community: the Infinity v1.1
Those who follow me on Facebook know about this for several weeks (uhum, months? ), however since here we have an expert community I chose to wait until we fully verify the hardware before making any hasty announcement. But now the time is ripe, the hardware is alive and outperforming all my expectations.
Before going over the details of changes, features etc., I would like to take the opportunity to tell the story of the last nearly one year, starting where we left off introducing the v1.0, until now. Well, I know the silence grew long, and I sincerely apologise to those who sent me messages asking me how the Infinity was progressing and why I shut down my website. I guess the simple answer is: I needed a break. Creative minds need that. I wanted to get out of the squirrel's barrel of producing boards, testing, shipping them. I felt it took too much time away from more important matters, like creating something new.
To make things more complicated, I was approached by an offer in my day job from which I knew I could not possible say no, but which still took me quite a while to say that yes to, as it turned my life quite upside down. I got a management position in another city, same country but still far away from home. It took a lot of adjustments and tremendous sacrifices from my wife and family to make this step possible, but looking back at the first half a year, we made the best out of it.
First I thought this would give a huge boost to the Infinity development, as being far away during the weekdays from family and home will leave me with plenty of time to tinker. Well, as often in life, reality just kicked in and I was left with even less time than ever before. Longer working hours, building up social life in a far away place, travelling times, many of you probably know how this story goes...
And this is where two other guys enter the story, whom I could well call the main actors where I was playing the role of a side character. If you see Jakesoft on the board silkscreen, it is a well deserved acknowledgement that the Infinity it more his creation than mine. Jake - apart from making regular updates on forums about the development progress - built up the whole software ecosystem around the board. I can tell you, even though I'm very proud of the Infinity board, designing the hardware was peanut compared to the effort Jake put into the software development. I can tell a long story (he too I guess), let it be enough to say that developing for the this new, insanely more powerful processor was quite the opposite of how we started the Open Source sabering. Back in 2015 we found an established ecosystem existing for the avr cores (on which all previous DIYino boards are based on), and it was a lot of fun seeing how we can develop features quickly, using open source code provided by the Arduino community. We jumped into the new development with the same energy and enthusiasm, researching what we could build up on.
And found out it was literally NOTHING
! No joke, we had to start from scratch. As it turned out the Arduino community just started to discover the potential of the nRF52 chip, in fact the Infinity v1.0 came a few months prior to the announcement of the new Nano 33 BLE platform putting us at the forefront of development. In a sense this was our opportunity to repay our debt to the Arduino community by developing the basic building blocks for an emerging platform. We covered a lot of ground here, and it was Jake's work. Period. Simply put, the programming skills needed for many of the advanced features simply were beyond my scope. But well in his.
Here I would like to name another key player, my friend and colleagues Stefan who brought in his extensive experience in the field of embedded programming, which more than once helped us out of seemingly dead-ends.
We paid of course special attention to also provide libraries for the two key features of modern sabering: a DMA based neopixel driver (aka 0-CPU) and an I2S based sound processing including polyphonic playback and pitch adjustment necessary for SmoothSwing. Again, credit goes to Jake and Stefan. I tried to contribute by supplying housekeeping functions for a system code, like power saving modes, button control, gesture detection and acting as hardware expert and software tester.
Now I feel we are at the stage where we can put all these together to form a new saber core with BLE support.
OK, long talking, now lets get to the gory details with those who are still with me :)
Hardware wise the v1.1 builds on the v1.0, with slight but important changes made both functionally and in the layout:[NEW] What changed:
- improvements to audio chip wiring, which enables now to use the full dynamic range of the I2S amp
- true 0.5A USB charging, no need for clumsy recharge port (improved features based on v1.0 and Stardust)
- layout polishing using Altium 18 advanced set of DRCs to improve manufacturability (with simpler words, this board is designed for high fabrication yield and zero defect)
- last but most importantly for IoT users, keeping the same board size the Infinity v1.1 comes now with dedicated I2C breakout signals. With this feature it offers more signals for developers as the DIYino Prime, making it a flexible, multi-purpose Arduino board.[LEGACY] What did not change:
- integrated BlueTooth Low Energy using the powerful nRF52 based BLE module MDBT42Q
- with integrated BLE chip antenna.
- the SoC contains a 32-bit ARM® Cortex™ M4F CPU, with 512kB Flash
Memory / 64kB RAM
- comes certified for all major regions, therefore needing no additional measures to be used as BlueTooth module worldwide.
- size: still (WxLxH) 19mm x 48mm x 5mm
- ultra low power consumption, 0.2mA in deep sleep
- integrated charge status LED on-board. No need to wire an extra LED, making installation easier, reducing cram-fu.
- 5V audio amp supply via SMPS, no need to add a 2nd battery only to make the board louder, and still >3W audio output.
- 4 PWM controllable Low-Side drivers (i.e. for driving LEDs, other peripherals or using them as kill key for neopixel blades)
- dedicated UART controller for more reliable access via USB (mostly important for developers)
- besides the on-board USB port breakout signals are provided to wire an external USB port for easier access to installed boards
- 100mil (2.5mm) breakout signal spacing with 0.9mm thru-holes for an easy and reliable installation
- component placement and signal layouting optimized for prop building by someone who builds props himself
We plan on providing updates and demos in a regular fashion, in fact I already installed two, one in my signiture demo saber with RGB LED mocule and a neopixel build in a saber hilt long waiting for a worthy core, a beautiful, screen accurate and sleek Part Obi-Wan.