Flowtoys connect props require a hardware “bridge” that speaks BLE and our custom “flowtoys connect” radio protocol, which can run on most nrf24 compatible radios. The bridge translates between flowtoys connect and bluetooth radio protocols to talk to your mobile device.
It is possible to make your own, and there are a variety of radio devices that could work. If you are an EE comfortable working on embedded systems, this might be something you’d want to do. If not, it probably isn’t.
The simplest and most convenient device we have found is the NRF52840 USB dongle. It requires some modification, and flashing the firmware to it cannot be done over USB - it’s a fairly advanced process and you would need:
- an SWD programming adaptor like this one
- and one of these: (or solder wires directly to the programming pads)
There are cheaper solutions, but setting up the software and determining the programming method is much more involved, and we can't help with that.
Soldering:
The dongle draws so little power that a portable power bank will go to sleep when it’s still running. To solve this, we bridged a few of the I/O pins and control them in firmware to periodically draw just enough power to keep the majority of power banks awake.
Housing:
The bare dongle is surprisingly durable, but would be much happier with a protective case, you could use something as simple as heatshrink, but we developed two 3D printed versions, one for a small power bank for pocket use, and one just for the dongle, for use with other USB power sources, like leaving it plugged in to a wall adapter or hub for your home flow network :)
Firmware upload instructions:
- download the current bridge firmware package from flowtoys
- install the j-link package from segger
- restart computer
- open terminal
- navigate to firmware folder: "cd "(drag folder into terminal and it should populate the file path)\
- hit enter
- connect USB bridge to USB power
- connect j-tag connector to bridge and hold firmly.
- enter "jlinkexe bridge-firmware-full.jlink"
- hit "enter"
- wait for process to complete.