fiduciary

Author Topic: IoT board with integrated BlueTooth for sabers? Meet Infinity  (Read 8245 times)

0 Members and 1 Guest are viewing this topic.

Offline Obi_1

  • Board Moderator
  • Experienced Force User
  • *
  • Posts: 476
  • Creator of DIYino - first open source FX-board
IoT board with integrated BlueTooth for sabers? Meet Infinity
« on: February 14, 2019, 01:17:12 PM »
Hi fellow saber builders,

I've been working on a concept for some months now as to what could be the next step in saber board design. Looking at the existing portfolio of established board manufacturers, #meetoosaberboard copies and open-source boards, we have seen an awesome development since the DIYino Prime board started the open-source revolution back in 2015. Powerful processors, mid- to high-end motion engines, installation optimized board layout, USB-charging, cheap boards, quality boards, programmable boards, GUIs, advanced power saving, you name it. Not to mention the features implemented in software, SmoothSwing, full features with single button, neopixel animations, etc. I came to the conclusion that there is only one thing which would be a great addition, opening up endless new possibilities: a board having all these AND integrated Bluetooth capability.

Therefore I made research into what is required to build a over-the-air controllable board with BLE. Most major industrial nations require a certification in order to sell Bluetooth capable devices, so that was what I'd been looking for. And I found the ideal candidate: the new board will be built around a ready-to-use BL module, which is certified for all the countries where a certification to use a BL device is needed: Raytac Corporation .  This beauty integrates an nRF52 chip from Nordic, which in turn has an ARM Cortex M4F. I.e. it has one of the most powerful 32-bit controller cores (same core AFAIK as implemented by the proffieboard, which is a boon for what we are discussing with Fredrik) on the market, with 512k Flash and 64k RAM. Hence the name Infinity, as it offers nearly infinitely more resources than the AVR open source sabering started with.

Infinity is engineered for perfection and quality without compromises known for all DIYino boards: I use the world's most advanced PCB design tool for professionals. It is developed with the full power of two expert EEs, using state-of-the-art Design Rules. More, it will be among those few boards which utilize 4 layers for routing, therefore it will have the highest density of features on the smallest PCB possible. I guess this is already formidable, but I haven't mentioned the best part: it is designed by someone who actively builds sabers   Oh yeah, Infinity will be infinitely and definitely open-source, both in hardware and software.

But the most exciting topic comes now: I presented the idea  of a board with BLE support to Fredrik who created the awesome proffieboard, we are discussing now how proffieOS could be ported to the Infinity. This way synergies can be optimally used. Due to cross-pollination between TeensySaber and FX-SaberOS, I have all the features I aim to have in proffieOS and by Fredrik's generous offer to help modify the code to run on the Infinity, I could concentrate on some unique features like power saving and testing out the BLE connection. There is a very promising open-source wireless development platform called Blynk Blynk which I definitely will explore (and everyone willing to join us in this journey are more than welcome to do so).

The CPU of the BLE module has one more unique feature I instantly fell for: all of the pins can be configured for all possible functionalities. I.e. all 7 GPIOs available in addition to all signals controlling the motion engine, audio amp, power saving and UART link can be used for PWM, SPI, I2C etc. This makes the board ideally suited not only for saber boards but a whole range of other props and creations. The board supports USB charging of a single Li-Ion battery cell and has provisions to connect an external USB breakout board for both charging and programming the board, without the need to access the board itself. Well, not to mention that once BLE is up and running the saber can be interacted with, including config settings, from a smart phone or PC.

The first prototype PCBs just arrive yesterday, here are the first images.






The circuit is extremely small and densely populated, so it will definitely fit into all conceivable prop designs. Next step is to have the first prototypes assembled and verify the design. I'm totally excited!!! I will post updates as I progress with the feature checks.

Offline JakeSoft

  • Experienced Force User
  • ****
  • Posts: 393
  • The Arduino Jedi
    • Universal Saber Library
Re: IoT board with integrated BlueTooth for sabers? Meet Infinity
« Reply #1 on: February 14, 2019, 05:34:38 PM »
Looks great!

Will these have the USB recharge circuit like the Stardust V3?

Offline Yoda

  • Jedi Master
  • Administrator
  • Master Force User
  • *
  • Posts: 6171
  • Formerly known as MERIDIAN
Re: IoT board with integrated BlueTooth for sabers? Meet Infinity
« Reply #2 on: February 14, 2019, 05:41:45 PM »
Hmmm good job on alll the work put into these Obi. how big are they?


Offline JakeSoft

  • Experienced Force User
  • ****
  • Posts: 393
  • The Arduino Jedi
    • Universal Saber Library
Re: IoT board with integrated BlueTooth for sabers? Meet Infinity
« Reply #3 on: February 14, 2019, 07:28:42 PM »
Hmmm good job on alll the work put into these Obi. how big are they?

It's tinny. Obi_1 can give you exact dimensions, but it's smaller than a Stardust V3 which is 21mm x 51mm (0.82" x 2"). It will have the smallest footprint of any of the DIYino boards yet.

Offline Obi_1

  • Board Moderator
  • Experienced Force User
  • *
  • Posts: 476
  • Creator of DIYino - first open source FX-board
Re: IoT board with integrated BlueTooth for sabers? Meet Infinity
« Reply #4 on: February 15, 2019, 04:54:36 AM »
The size of the current PCB is 19mm x 48mm (rounded up). It is extremely densely populated, that is why it is one of the first boards which utilizes 4 layers (2 for routing, one full GND plane and one for the different power domain). It was designed with state-of-the-are design rules (I also do not want to hide the fact that due to the design rules used to make the board so tiny, only PCB manufacturers with advanced equipment can produce them).

I aimed to find the sweet spot wrt board size which is small enough to fit into all conceivable hilts but does not reduce the size such that it will make it a xxx to install it. It is breadboard-friendly, a must for Arduino or generally speaking open source boards, with enough clearance between signals to make it easy to solder for novices. All the signals are on the sides, so there is no hard-to-reach spot to solder.

All in all I'm quite happy with the PCB. Let's keep the fingers crossed that it also performs the way I want.

Offline Obi_1

  • Board Moderator
  • Experienced Force User
  • *
  • Posts: 476
  • Creator of DIYino - first open source FX-board
Re: IoT board with integrated BlueTooth for sabers? Meet Infinity
« Reply #5 on: February 15, 2019, 01:08:58 PM »
Looks great!

Will these have the USB recharge circuit like the Stardust V3?

Yes Sir! It will have all the great features of the Stardust and obviously more!

Not to mention a CPU which is 16x faster, has 32x more memory and 15x more code space :)

Offline erv

  • Plecter Labs Inc. "Keeper of the Buttered Toast"
  • Manufacturer
  • Master Force User
  • *
  • Posts: 4920
  • Formerly known as Irvin PLECTER
    • Plecter Labs - Props Electronics
Re: IoT board with integrated BlueTooth for sabers? Meet Infinity
« Reply #6 on: April 20, 2019, 03:43:36 AM »
Very cool, I'm in the process myself of porting the CFx core to a nRF device. I'm still hesitating between starting with a module or go baremetal. For now, I'm using a dev-board, I really don't need any new PCB to get started with the port. 4 layers PCBs are fun, aren't they ? :-)

Offline Obi_1

  • Board Moderator
  • Experienced Force User
  • *
  • Posts: 476
  • Creator of DIYino - first open source FX-board
Re: IoT board with integrated BlueTooth for sabers? Meet Infinity
« Reply #7 on: May 03, 2019, 04:02:23 AM »
Very cool, I'm in the process myself of porting the CFx core to a nRF device. I'm still hesitating between starting with a module or go baremetal. For now, I'm using a dev-board, I really don't need any new PCB to get started with the port. 4 layers PCBs are fun, aren't they ? :-)

The complexity calls for a 4 layer PCB, and it's quite astounding what density of features can be integrated onto a single PCB if more than 2 layers are utilized. In fact the Infinity is smaller than any of the boards I made before, and they were already tiny. But the important design goal is to be able to handle the currents involved with neopixel blades and USB charging with a decent speed, and for that large areas are needed albeit the small size for handling the excess heat.

The nRF is a cool little beast, with amazing features, not to mention an in-built BLE, (nearly) infinite resources compared to the earlier mainstream Arduino standard board, plus the full freedom in using the GPIO's for whatever you want.

The main reason for going for a PCB was:
- I like it that way, a big portion of the satisfaction comes from making a PCB which is state-of-the-art
- the practical reason was to verify the design goals in terms of thermal performance and current consumption

With regards to the latter the nRF truly lives up to its reputation as low power, combined with all the rest of the power saving features on the Infinity I was able to come down to 0.1mA in deep sleep. That translates practically to infinite shelf time.

Offline NobAkimoto

  • No Force
  • *
  • Posts: 18
  • Um...Hello?
Re: IoT board with integrated BlueTooth for sabers? Meet Infinity
« Reply #8 on: May 06, 2019, 08:01:41 PM »
Is there a rough timeline on when these might be available and how much they'll cost?

Definitely been looking for more compact electronics solutions, particularly for cross-guard sabers and for smaller/shorter hilts.

Offline Obi_1

  • Board Moderator
  • Experienced Force User
  • *
  • Posts: 476
  • Creator of DIYino - first open source FX-board
Re: IoT board with integrated BlueTooth for sabers? Meet Infinity
« Reply #9 on: May 10, 2019, 05:33:30 AM »
I assume I will have a smaller run in the summer for those who want to collaborate bringing up the firmware. Then the first group buy will be announced in due time, probably in September. This is just a rough heads-up, I will definitely keep the community up to date as to my plans.

Offline JakeSoft

  • Experienced Force User
  • ****
  • Posts: 393
  • The Arduino Jedi
    • Universal Saber Library
Re: IoT board with integrated BlueTooth for sabers? Meet Infinity
« Reply #10 on: November 01, 2019, 07:07:01 PM »
I think there are only about 8 of these in the world, but I was lucky enough to get a DIYino Infinity from the prototype batch. Here is a first look.


Offline EXAR KUN

  • SITH/EMPIRE Master MODERATOR
  • Master Force User
  • **
  • Posts: 3117
  • Formerly known as SpaceWindu
    • My YouTube channel: youtube.com/spacewindu
Re: IoT board with integrated BlueTooth for sabers? Meet Infinity
« Reply #11 on: November 02, 2019, 09:18:22 AM »
Awesome video, Jake. Thanks for the rundown. Board looking so, so good



Offline Obi_1

  • Board Moderator
  • Experienced Force User
  • *
  • Posts: 476
  • Creator of DIYino - first open source FX-board
Re: IoT board with integrated BlueTooth for sabers? Meet Infinity
« Reply #12 on: January 07, 2020, 01:20:38 PM »
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 arrived!

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.


Offline SirRawThunderMan

  • Master Force User
  • *****
  • Posts: 708
  • Very, Very English Poster
Re: IoT board with integrated BlueTooth for sabers? Meet Infinity
« Reply #13 on: January 07, 2020, 03:57:07 PM »
Very cool. When are they going to be available?
Better late than never.

Offline Obi_1

  • Board Moderator
  • Experienced Force User
  • *
  • Posts: 476
  • Creator of DIYino - first open source FX-board
Re: IoT board with integrated BlueTooth for sabers? Meet Infinity
« Reply #14 on: May 04, 2020, 06:56:51 AM »
Happy Star Wars day to each and every member of the community! May the 4th be with You!!!

To celebrate this fine day I though I would bring something exciting to cheer us up in our home-arrest. In our merry band of a development team we though best thing you could do in a quarantene was to keep yourself busy and true to this motto we spend creative hour collaborating across the pond to bring up the firmware running on Infnity up to speed with contemporary smoothswing-capable boards.

The algorith we came up with is loosely based on Thexter's SmoothSwing2 algorithm whitepaper. The core of it is Jake's nRF52 Audio library and NSaber system and it makes use of polyphonic playback of multiple swing and hum sounds to create a dynamic swing experience.

We had been experimenting with multiple setups to find the most satisfying blend of polyphonic sound processing, on-the-fly pitch shifting and smooth blending of effect sounds until we finally came up with the current solution. There is a short video focusing on the essentials:



I was for a long time quite skeptic about SmoothSwing in general, now holding my own saber with our jointly developed algorithm I'm suscribed to the idea fully. SmoothSwing sabers add a whole new level to the hobby, much like neopixels did earlier.

While this video is not new, those following the development on other channels migth have already seen it a couple of weeks ago, I created a longer shoot with loosly related topics:

- SmoothSwing demo based on XStream's OmniSwing2, showing responsiveness of the algorithm to fast and slower movements

- an interesting solo drill exercise from the late middle ages, the so called Meyerrad (Meyer's circle), which is used nowadays in HEMA (Historical Europian Martial Arts) long sword exercises to practice a sequence of low and high slashes. Indulge me, it is my new hobby (:))

- short videos about how we developed the swing algorithm, what alternative solutions we tried on the way, some which we discarded as kind of interesing but not quite what we wanted, some we integrated into the final algorithm



The short videos above show an in-hilt saber with a photon-blade (great stuff), as it was trivial to swap my previous Stardust V3 board to an Infinity v1.1, them being nearly identical in size (in fact the Infinity is smaller), and pinout.

I had to make a few detours to install a neopixel saber, with Covid hitting us and my available supply of components (as long as only my supplies are affected I'm happy), but now I made a 2nd saber, this time with pixels. Videos to come soon, firmware now have support for Nepixels as well.

Another great addition coming in in recent days was on-chip storage of configuration settings from Jake. I grew extremely fond of storing settings in EEPROM on the Prime and Stardust boards, I'm happy now to continue that nice tradition with Infinity too.

The DIYino family greets a new, SmoothSwing capable member :)

 

retrousse