Author Topic: Tipro 96 board with Teensy controler  (Read 8116 times)

0 Members and 1 Guest are viewing this topic.

Offline AGmurdercore

  • Thread Starter
  • Posts: 261
  • Location: Bulgaria
Tipro 96 board with Teensy controler
« on: Tue, 14 May 2019, 09:10:01 »
Hey guys, recently I purchased a Tipro 96 board that unfortunately seems to be faulty as I can't get it to work. Since I planned on using this as a macro board/stream deck I was wondering if I can still use the PCB, plate, case and switches the way that they are and wire all of this to a Teensy controller? I have a Teensy laying around somewhere that I purchased for a board I never created so I was wondering if I can get this to work. Any tips and tricks are appreciated as I don't much have a clue how the Teensy works in terms of wiring and if I can get the 8x12 Tipro to work with this controller.

Let me know if PCB images will be helpful so that I can post some.
What the hell am I even doing

Offline nevin

  • Posts: 1646
  • Location: US
Re: Tipro 96 board with Teensy controler
« Reply #1 on: Tue, 14 May 2019, 10:17:13 »
you ...might be able to use the traces in the pcb but you will have to figure out where the rows & colums are and will probably have to cut a number of traces on the pcb as well. on the other hand, you could certainly get rid of the pcb and just do a hand wire... up to you. there are a bunch of guides here and on deskthority for hand wiring.

and here's a jump on the firmware
Code: [Select]
[{a:7},"","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""]

- go here https://kbfirmware.com/
- and paste the code above into the "paste layout here" box, then import. (it's a web configurator for QMK)
Keeb.io Viterbi, Apple m0110, Apple m0120, Apple m0110a, Apple 658-4081, Apple M1242, Apple AEK II, MK96, GH60/Pure, Cherry g84-4100, Adesso AKP-220B, Magicforce 68

Offline AGmurdercore

  • Thread Starter
  • Posts: 261
  • Location: Bulgaria
Re: Tipro 96 board with Teensy controler
« Reply #2 on: Wed, 15 May 2019, 01:29:34 »
you ...might be able to use the traces in the pcb but you will have to figure out where the rows & colums are and will probably have to cut a number of traces on the pcb as well. on the other hand, you could certainly get rid of the pcb and just do a hand wire... up to you. there are a bunch of guides here and on deskthority for hand wiring.

and here's a jump on the firmware
Code: [Select]
[{a:7},"","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""]

- go here https://kbfirmware.com/
- and paste the code above into the "paste layout here" box, then import. (it's a web configurator for QMK)
Hm, thank you very much for that. Will I have enough pins on the Teensy to wire so many rows and columns though I wonder or I will have to do some kind of funky wiring to make this happen?
What the hell am I even doing

Offline nevin

  • Posts: 1646
  • Location: US
Re: Tipro 96 board with Teensy controler
« Reply #3 on: Wed, 15 May 2019, 06:40:23 »
teensy 2.0 has 24 i/o pins. tipro layout is 8 rows + 12 columns = 20, so yes, you're good. will be very straight forward following one of the wiring guides.
Keeb.io Viterbi, Apple m0110, Apple m0120, Apple m0110a, Apple 658-4081, Apple M1242, Apple AEK II, MK96, GH60/Pure, Cherry g84-4100, Adesso AKP-220B, Magicforce 68

Offline AGmurdercore

  • Thread Starter
  • Posts: 261
  • Location: Bulgaria
Re: Tipro 96 board with Teensy controler
« Reply #4 on: Wed, 15 May 2019, 07:21:24 »
teensy 2.0 has 24 i/o pins. tipro layout is 8 rows + 12 columns = 20, so yes, you're good. will be very straight forward following one of the wiring guides.
That's great, thank you very much for clarifying this. I will probably do this in the next few weeks as I am really excited to get the board working one way or another.
What the hell am I even doing

Offline AGmurdercore

  • Thread Starter
  • Posts: 261
  • Location: Bulgaria
Re: Tipro 96 board with Teensy controler
« Reply #5 on: Wed, 15 May 2019, 07:41:15 »
you ...might be able to use the traces in the pcb but you will have to figure out where the rows & colums are and will probably have to cut a number of traces on the pcb as well. on the other hand, you could certainly get rid of the pcb and just do a hand wire... up to you. there are a bunch of guides here and on deskthority for hand wiring.

and here's a jump on the firmware
Code: [Select]
[{a:7},"","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""],
["","","","","","","","","","","",""]

- go here https://kbfirmware.com/
- and paste the code above into the "paste layout here" box, then import. (it's a web configurator for QMK)
I played a little bit with this just to see how it runs and to get a better understanding of it and I have a few questions:
  • I want to use this board as replacement of Elgato stream deck so it will be for utility only
  • Do you have any idea if I can bind F keys above F12 to the buttons on the board and if I can do that how? (Sorry I didn't see the option for that)
  • The original Tipro had 4 lears, will I be able to assign some of the keys as toggles to have more than on layer on the board? If possible how?
  • If I am able to add the layering system that I am looking for will I will be able to add toggle LED indicators (like the once we have for num/caps lock)?

Sorry for the stream of questions and thank you so very much for helping me out, I really appreciate it!
What the hell am I even doing

Offline nevin

  • Posts: 1646
  • Location: US
Re: Tipro 96 board with Teensy controler
« Reply #6 on: Wed, 15 May 2019, 09:25:48 »
QMK is an open source firmware for keyboards. lots of info & flexibility if you want to dig into it. https://github.com/qmk/qmk_firmware
- F1-F24 are available as standard F-keys
- Layers - absolutely. you can easily add up to 16 layers
- LEDs - i'm sure you can, i've never messed with LEDs (other than to remove them from my 60%) but i've seen sticky toggles to indicate layer switching. and you should have enough extra pins on the teensy to do it.

do this for me.

use this link & adjust to what you'd like it to be (this is not the firmware, but a simple way to figure out what layout you want to program

you can see i already have 2 layers setup Fn1 & Fn2, built-in numberpad (easy with orholinear layouts) as well as your full 24 F-keys

just click on a key & relabel it whatever you want.

or start from scratch (link)

then i can help you replicate your layout in the firmware builder
Keeb.io Viterbi, Apple m0110, Apple m0120, Apple m0110a, Apple 658-4081, Apple M1242, Apple AEK II, MK96, GH60/Pure, Cherry g84-4100, Adesso AKP-220B, Magicforce 68

Offline AGmurdercore

  • Thread Starter
  • Posts: 261
  • Location: Bulgaria
Re: Tipro 96 board with Teensy controler
« Reply #7 on: Wed, 15 May 2019, 09:41:02 »
QMK is an open source firmware for keyboards. lots of info & flexibility if you want to dig into it. https://github.com/qmk/qmk_firmware
- F1-F24 are available as standard F-keys
- Layers - absolutely. you can easily add up to 16 layers
- LEDs - i'm sure you can, i've never messed with LEDs (other than to remove them from my 60%) but i've seen sticky toggles to indicate layer switching. and you should have enough extra pins on the teensy to do it.

do this for me.

use this link & adjust to what you'd like it to be (this is not the firmware, but a simple way to figure out what layout you want to program

you can see i already have 2 layers setup Fn1 & Fn2, built-in numberpad (easy with orholinear layouts) as well as your full 24 F-keys

just click on a key & relabel it whatever you want.

or start from scratch (link)

then i can help you replicate your layout in the firmware builder
YOU ARE THE MAN! I will spend some time thinking what exactly I would need and draft the layout. Thank you so much for all the help on this!
What the hell am I even doing

Offline nevin

  • Posts: 1646
  • Location: US
Re: Tipro 96 board with Teensy controler
« Reply #8 on: Wed, 15 May 2019, 09:47:53 »
no prob.

i'll keep an eye on the thread.
Keeb.io Viterbi, Apple m0110, Apple m0120, Apple m0110a, Apple 658-4081, Apple M1242, Apple AEK II, MK96, GH60/Pure, Cherry g84-4100, Adesso AKP-220B, Magicforce 68

Offline AGmurdercore

  • Thread Starter
  • Posts: 261
  • Location: Bulgaria
Re: Tipro 96 board with Teensy controler
« Reply #9 on: Mon, 03 June 2019, 06:31:54 »
Hey everyone, a quick update on my end - I am currently waiting for a new soldering iron and some supplies before I jump into the project.

While waiting I was considering different options and directions in which I can take this, inspired by this https://www.elgato.com/en/gaming/stream-deck and this https://www.touch-portal.com/?fbclid=IwAR1avCTy6pSSNEJWnt8R-DBPpII-fVg3zS2m2xySAsCbxVnFdQcpCAixQ0E which made me think that I should try and "replicate" the stream deck by building a keyboard which keys wont be bind to specific keys (for example M, F4, Page up...) but will be bind to actions, like the stream deck is doing. In regards to that is there anybody that did something similar here or have any knowledge on how to actually do this? I am discussing this with a friend of mine that is programmer who will investigate a little further on the matter but I felt like asking in here as well.
What the hell am I even doing

Offline nevin

  • Posts: 1646
  • Location: US
Re: Tipro 96 board with Teensy controler
« Reply #10 on: Mon, 03 June 2019, 11:28:16 »
you'd need to explain what you have the stream deck programmed to do as it looks extremely customizable.

if it's more than macro commands sent by keyboard, more advanced actions would require you to run a app/macro program on your PC to watch for certain key combinations to manipulate certain windows/apps (search for scripting/automating your OS)
Here's a link to one discussion (old thread, just to give you an idea)
Keeb.io Viterbi, Apple m0110, Apple m0120, Apple m0110a, Apple 658-4081, Apple M1242, Apple AEK II, MK96, GH60/Pure, Cherry g84-4100, Adesso AKP-220B, Magicforce 68

Offline AGmurdercore

  • Thread Starter
  • Posts: 261
  • Location: Bulgaria
Re: Tipro 96 board with Teensy controler
« Reply #11 on: Tue, 04 June 2019, 06:08:04 »
you'd need to explain what you have the stream deck programmed to do as it looks extremely customizable.

if it's more than macro commands sent by keyboard, more advanced actions would require you to run a app/macro program on your PC to watch for certain key combinations to manipulate certain windows/apps (search for scripting/automating your OS)
Here's a link to one discussion (old thread, just to give you an idea)

I don't have a deck personally and this is pretty much why I want to build a product that would replace it. In terms of functionalities I am looking forward to have all the basic and advanced functionalities in OBS binded directly to the board - for example changing scene, muting mic, starting/stopping a recording, mutting/displaing particular sources and so on. In addition to that I look forward to be able to bind basic Spotify functions and some windows functions as well, like volume control, changing between sound outputs (from headset to speakers and vice versa).

This is pretty much what I want to do and from what i've heard these should be possible using the APIs of the apps i mentioned and invoking (is this even the correct word?) windows commands. However for the time being neither me nor my friend programmer knows how to do the connection between the driver/firmware of the board and the apps without actually creating presets/macros for the keys but effectively binding them to the grid of the board (in other words I don't want to have a macro keyboard but a "stream deck")

I hope that what I described makes sense, please let me know if I am not clear enough to try and explain things a little bit better as I might be confusing.
What the hell am I even doing

Offline nevin

  • Posts: 1646
  • Location: US
Re: Tipro 96 board with Teensy controler
« Reply #12 on: Tue, 04 June 2019, 07:50:43 »
Quote
I am looking forward to have all the basic and advanced functionalities in OBS binded directly to the board - for example changing scene, muting mic, starting/stopping a recording, mutting/displaing particular sources and so on.
Do these have shortcuts within OBS? (i'm not familiar with OBS other than what the program is used for) Most programs have a TON of shortcuts built into the app which makes simple scripting/automating actions really easy. If they DO have shortcuts, then it's dead simple. just make a macro with that shortcut on the keyboard. When you're in that program and hit that key it will output the desired shortcut. Now, this would NOT be application specific (would not call up OBS & do the requested action. It would just output the key sequence. You'd have to be in the program for the shortcut to work)

Let's use "save" as an example (control + s), make this a macro in the keyboard firmware with this key combination. then, whatever app you're in, when you hit that key, it will send that key combination and "save" whatever you are working on.

Volume controls are built into both QMK & TMK keyboard firmwares, as well as some other media commands.

As far as changing audio outputs... that would have to be a script run on the computer. Did a quick search and here's an example i found. Should help with some of the other scripting/automating you're looking to do.

Most of these media controls like the stream deck or other media control consoles have an app that watches for output from that device and in turn runs the needed script on the computer. (it's not actually the console sending the command, it's the control panel for the console that runs in the background on the computer that sends/runs these more advanced scripts/functions)

Look into what scripting/automation apps are available for your OS.

Make a list of the actions you want to do and see if there are any corresponding shortcuts within the apps to do so. Then we can see what can be done with simple shortcuts and what would need scripted.

Hope this helps.
Keeb.io Viterbi, Apple m0110, Apple m0120, Apple m0110a, Apple 658-4081, Apple M1242, Apple AEK II, MK96, GH60/Pure, Cherry g84-4100, Adesso AKP-220B, Magicforce 68

Offline AGmurdercore

  • Thread Starter
  • Posts: 261
  • Location: Bulgaria
Re: Tipro 96 board with Teensy controler
« Reply #13 on: Tue, 04 June 2019, 08:24:31 »
Thank you again for the response nevin!

Creating shortcuts/macros is exactly what I want to avoid, I can do this with any keyboard but I want to avoid pressing any buttons/macros/key combinations that might interfere with anything else apart from the application I want to interact with. This is why I am looking into something that watches for a keystroke on the board I will create and then executing particular script on the PC. Unfortunately this might be harder to execute/build software-wise than I anticipated initially and I don't know if me and my friend will be able to do it in the end.

As I mentioned in my previous post both OBS and Spotify have some kind of APIs which we can use to "invoke" the commands/scripts without having them binded to a macro as far as I am aware, but in order to do this we will have to build a software that executes these scripts/commands when a particular key from the matrix is being pressed down.

Effectively what I want to build if this makes sense, is a keyboard that won't do do anything on it's own - if you press the 5th button on the 3rd row nothing will happen if you don't have Spotify running (for example) as this particular key is bind to "Next song on Spotify). I know this is hard and complex but if you have any suggestions on how we can build this and/or where to look for resources it will be extremely highly appreciated!
What the hell am I even doing

Offline nevin

  • Posts: 1646
  • Location: US
Re: Tipro 96 board with Teensy controler
« Reply #14 on: Tue, 04 June 2019, 09:35:17 »
doing a quick search...   here's the options for spotify scripting. there are a bunch of languages supported, including python (the git repository with examples)

obs scripting
https://obsproject.com/docs/scripting.html
https://obsproject.com/forum/threads/need-help-on-starting-python-scripting.83732/
and check the forum: https://obsproject.com/forum/

looks like python will be your best bet for both apps

how to get python to "listen" for the keyboard. use this as the basis for creating the hotkeys on the computer side, and create the python scripts to interact with the programs, calling these scripts from the hotkeys you created.

on the keyboard side.... 96 keys is A LOT not to have any crossover between regular keyboard & media console (tipro).That's why a bunch of these media controllers/gaming clusters don't have a ton of keys (usually 24 or less). for starters, use the higher F-keys 13+, then i'd suggest making macros to output combinations you don't use on your regular keyboard. again start with something like (control + alt + f1-24) or similar and have python watch for this combo. macros will still give you one key press, but output a sting that won't really won't register with anything else.
Keeb.io Viterbi, Apple m0110, Apple m0120, Apple m0110a, Apple 658-4081, Apple M1242, Apple AEK II, MK96, GH60/Pure, Cherry g84-4100, Adesso AKP-220B, Magicforce 68

Offline AGmurdercore

  • Thread Starter
  • Posts: 261
  • Location: Bulgaria
Re: Tipro 96 board with Teensy controler
« Reply #15 on: Sun, 09 June 2019, 07:00:26 »
doing a quick search...   here's the options for spotify scripting. there are a bunch of languages supported, including python (the git repository with examples)

obs scripting
https://obsproject.com/docs/scripting.html
https://obsproject.com/forum/threads/need-help-on-starting-python-scripting.83732/
and check the forum: https://obsproject.com/forum/

looks like python will be your best bet for both apps

how to get python to "listen" for the keyboard. use this as the basis for creating the hotkeys on the computer side, and create the python scripts to interact with the programs, calling these scripts from the hotkeys you created.

on the keyboard side.... 96 keys is A LOT not to have any crossover between regular keyboard & media console (tipro).That's why a bunch of these media controllers/gaming clusters don't have a ton of keys (usually 24 or less). for starters, use the higher F-keys 13+, then i'd suggest making macros to output combinations you don't use on your regular keyboard. again start with something like (control + alt + f1-24) or similar and have python watch for this combo. macros will still give you one key press, but output a sting that won't really won't register with anything else.
Thank you so much for this! We are still looking into different options how we can approach this project (my friend and I) and I will keep you guys posted as soon as there is anything new.
What the hell am I even doing