Page 1 of 1

Build your own midi controller based on BJ Devices platform

Posted: Tue Feb 02, 2016 3:10 pm
by burenkov
BJ Devices TB-12 and TB-5 midi controllers is now open for all developers to create alternative firmware!
Many peoples try to build midi contollers based on arduino or other platform, but the only problem is a make housing and reliable PCB without a tangle of wires. So now you have strong metal case with 12 or 5 reliable buttons, LCD screen, MIDI in, MIDI out connectors, 2 expression pedal connections, 2 relays output with total 4 relays.

We now start to develop open source library to make firmware creation easily. You just need to install free Atmel Studio, dowload library from github , implement and compile your own firmware and upload it to your TB-12(5) via chip45boot2 bootlader GUI https://www.chip45.com/avr_bootloader_a ... 5boot2.php
Provided examples explain how to get buttons actions, send and receive midi message, manipulate LED and LCD screen

You can return to default firmware any time, last firmware version is always available on our website

First version of library is available on github https://github.com/BurenkovS/bjdevlib
And of course you are always welcomed to improve library and send pull request!

You can find out wiring diagram:
for tb-12 http://bjdevices.com/manuals/tb12_diagram.pdf
for tb-5 http://bjdevices.com/manuals/tb5_diagram.pdf

See README.md for more details https://github.com/BurenkovS/bjdevlib/b ... /README.md

--
Best Regards
Sergey Burenkov
+7 903 580 02 86
www.bjdevices.com
Find us on Facebook www.facebook.com/bjdevices
Find us on Instagram www.instagram.com/bjdevices

Image

Re: Build your own midi controller based on BJ Devices platf

Posted: Sat Feb 06, 2016 9:27 pm
by junkgear
Very cool. I like the idea that you can modify the firmware.

Re: Build your own midi controller based on BJ Devices platf

Posted: Thu Feb 18, 2016 9:53 am
by burenkov
I have added support of basic functions of Fractal Audio AxeFx. Using this library you can easily send function requests to AxeFx and parse responses with preset names, IA states, tuner, etc. Simple example is implemented for illustrate this. See more at https://github.com/BurenkovS/bjdevlib

Re: Build your own midi controller based on BJ Devices platf

Posted: Sun Apr 03, 2016 1:46 pm
by burenkov
Some updates for Kemper users - KPA support was added to library. I have added all available parameters address, and implement a set of functions to get access to parameters address and values. Example demonstrate how to initialize bidirectional communication with KPA, get rig and performance names, IA states, and how to send change requests to KPA.
Also simple loggerwas added. Controller have usb port, which is USB-COM interface, and it is determined by the operating system as COM port, so you able to send debug messages to PC terminal and working with MIDI simultaneously. Sometimes it helps in debugging.
Some bugs fixed also. github.com/BurenkovS/bjdevlib

Re: Build your own midi controller based on BJ Devices platf

Posted: Tue Apr 12, 2016 8:26 am
by burenkov
First unofficial firmware release for TB-12 is now available! Many thanks to GM Arts for amazing ideas and implementation! More about this release on BJ Devices wiki.

Re: Build your own midi controller based on BJ Devices platf

Posted: Sun Nov 06, 2016 7:58 am
by burenkov
Developers is now able to create commercial firmware for BJ Devices midi controllers!

BJ Devices TB series Gen2 midi controllers contain DS2411 Silicon Serial Number, and user can see unique ID in the menu of default firmware. Firmware developer able to lock firmware on particular device, using this ID. Firmware just need to compare actual device ID with user provided ID and run only if IDs matched. Here is example of roadmap:

- User placed order on website, made payment and send ID to you.
- You can automatically or manual compile sources with ID as predefined symbol, your firmware should compare ID on startup
- Compiled binaries immediately sends to user. User install firmware without housing demolition via free bootloader. No need to burn physical IC and send it to user. All processes, including purchase, compilation and delivery to user, can be highly automated on web server

You can see ID reading and comparsion example in library "examples" folder

https://github.com/BurenkovS/bjdevlib/w ... l-firmware