geekhack

geekhack Community => Keyboards => Topic started by: hazeluff on Sun, 29 January 2012, 20:15:59

Title: Teensy Keyboard Firmware Discussion
Post by: hazeluff on Sun, 29 January 2012, 20:15:59
Just to remove the amount of posts in the Phantom GB about firmware and things about it. This thread has been made.

Feel free to discuss, ask questions, help out.

At the moment I think it'll be focusing on PHANTOM/DOX keyboards, but it doesn't limit it just to those two.

I'll be uploading my firmware and helping out a lot here.

If you've seen my signature, I'm willing to help draw up layouts for if you want like Custom WASD keycaps.

Here's my layout for now:

[ATTACH=CONFIG]38978[/ATTACH]
Title: Teensy Keyboard Firmware Discussion
Post by: tsangan on Sun, 29 January 2012, 20:19:36
We should have the OP containing all the different layout everyone is doing + the firmware they are using, so people can swap around and try them out, like a little teensy library :)
Title: Teensy Keyboard Firmware Discussion
Post by: hazeluff on Sun, 29 January 2012, 20:22:06
Quote from: tsangan;502745
We should have the OP containing all the different layout everyone is doing + the firmware they are using, so people can swap around and try them out, like a little teensy library :)

PLACE HOLDER FOR EXACTLY THIS
Title: Teensy Keyboard Firmware Discussion
Post by: TheProfosist on Sun, 29 January 2012, 20:23:53
thread stuck
Title: Teensy Keyboard Firmware Discussion
Post by: litster on Sun, 29 January 2012, 21:08:12
subscribed!
Title: Teensy Keyboard Firmware Discussion
Post by: litster on Sun, 29 January 2012, 21:47:15
Hum, I was actually thinking to create a dedicated thread for just Phantom soldering discussion and firmware discussion for a one stop shop for am Phantom technical needs.  This is actually not the thread I was hoping to create.

Phantom soldering instruction wiki: http://deskthority.net/wiki/Phantom_Instruction

Phantom Firmware from PrinsValium:

Phantom Plates:

Working firmware for PHANSI layout.  This version is currently running on Phantom prototype:  PHANSI.HEX

EDIT1: added PHANSI.HEX for PHANSI layout.
Title: Teensy Keyboard Firmware Discussion
Post by: TheProfosist on Sun, 29 January 2012, 22:23:51
Quote from: litster;502824
Hum, I was actually thinking to create a dedicated thread for just Phantom soldering discussion and firmware discussion for a one stop shop for am Phantom technical needs.  This is actually not the thread I was hoping to create.

Phantom soldering instruction wiki: http://deskthority.net/wiki/Phantom_Instruction

Phantom Firmware from PrinsValium:

Phantom Plates:

Working firmware for PHANSI layout.  This version is currently running on Phantom prototype:  PHANSI.HEX

EDIT1: added PHANSI.HEX for PHANSI layout.

best my guest and make the thread pleanty of space in my subforum.
Title: Teensy Keyboard Firmware Discussion
Post by: mkawa on Mon, 30 January 2012, 00:00:54
can someone link how to build a working teensy compile toolchain in one of the initial posts? is there a teensy howto somewhere?
Title: Teensy Keyboard Firmware Discussion
Post by: litster on Mon, 30 January 2012, 03:07:01
Hi guys.  I started a Phantom solder instruction on deskthority.net.  But there isn't really a discussion feature there.  There is, but it is just another wiki page it seems like.  I thought about starting a new page on the mod section here on GH, but I don't think people can change the original post of a mod page.  I think I will start a wiki page here with a pointer to the deskthority.net phantom wiki page, and links to other attachments.  I want people be able to edit and update the original instruction *and* be able to have a continuous discussion in the GH wiki section.

EDIT:
Looks like the mod section is the same as wiki.  Maybe I will stick it there instead.
Title: Teensy Keyboard Firmware Discussion
Post by: bpiphany on Mon, 30 January 2012, 03:52:49
Quote from: mkawa;502943
can someone link how to build a working teensy compile toolchain in one of the initial posts? is there a teensy howto somewhere?

http://pjrc.com/teensy/index.html
Title: Teensy Keyboard Firmware Discussion
Post by: hazeluff on Mon, 30 January 2012, 08:18:17
Litster's thread is much more detailed, specially for Phantom. But no worries, we welcome everyone here @_@.
Title: Teensy Keyboard Firmware Discussion
Post by: litster on Mon, 30 January 2012, 11:08:06
This thread is cool too.  There are certainly a lot in common between Dox and Phantom, and most likely there is a lot to share between the two versions at the source code level.  My goal is to have one single thread to cover all Phantom building needs and discussion.  This thread can serve as the bridge to share firmware knowledge and design between Dox and Phantom.
Title: Teensy Keyboard Firmware Discussion
Post by: hazeluff on Mon, 30 January 2012, 11:36:49
Quote from: litster;503220
This thread is cool too.  There are certainly a lot in common between Dox and Phantom, and most likely there is a lot to share between the two versions at the source code level.  My goal is to have one single thread to cover all Phantom building needs and discussion.  This thread can serve as the bridge to share firmware knowledge and design between Dox and Phantom.

Exactly = D

I'm quite excited for the Phantom. I want mine NAO.
Title: Teensy Keyboard Firmware Discussion
Post by: riffautae on Mon, 30 January 2012, 21:24:46
I got my tool chain working again. There was a bug in binutils. Anyway its not working quite yet but its pretty close... something silly is blocking it. The code for the tmk derivative is at my github (https://github.com/riffautae/tmk_keyboard) if anyone wants to help me debug it. This has media keys, multiple layers etc.
Title: Teensy Keyboard Firmware Discussion
Post by: TheProfosist on Tue, 31 January 2012, 00:34:42
Well im trying to find hazu's dox firmware so you can just repurpose the code but i cant seem to find it anywhere
Title: Teensy Keyboard Firmware Discussion
Post by: Dox on Tue, 31 January 2012, 17:28:33
Quote from: TheProfosist;503965
Well im trying to find hazu's dox firmware so you can just repurpose the code but i cant seem to find it anywhere
Here: https://github.com/doxkb/tmk_keyboard
Title: Teensy Keyboard Firmware Discussion
Post by: TheProfosist on Tue, 31 January 2012, 19:47:48
Quote from: Dox;504679
Here: https://github.com/doxkb/tmk_keyboard

Thanks lots!
Title: Teensy Keyboard Firmware Discussion
Post by: riffautae on Wed, 01 February 2012, 09:16:49
Nice, looks like his is based on tmk like mine is, so I have already done 99% of the work needed to get phantom working with that firmware.
Title: Teensy Keyboard Firmware Discussion
Post by: TheProfosist on Wed, 01 February 2012, 21:03:53
Quote from: riffautae;505206
Nice, looks like his is based on tmk like mine is, so I have already done 99% of the work needed to get phantom working with that firmware.

Nice sounds great how far are you along with that and are you currently able to test it?
Title: Teensy Keyboard Firmware Discussion
Post by: riffautae on Wed, 01 February 2012, 23:22:40
Quote from: TheProfosist;505844
Nice sounds great how far are you along with that and are you currently able to test it?

TBH I think I have all the code done that would make it work, I just messed something tiny up and need to find it. Yes I have a teensy, there is also simulavr for more indepth debugging with gdb.
Title: Teensy Keyboard Firmware Discussion
Post by: TheProfosist on Thu, 02 February 2012, 00:52:31
Quote from: riffautae;506009
TBH I think I have all the code done that would make it work, I just messed something tiny up and need to find it. Yes I have a teensy, there is also simulavr for more indepth debugging with gdb.

great to hear do you think well have a working firmware when the Phantom ships?
Title: Teensy Keyboard Firmware Discussion
Post by: hazeluff on Thu, 02 February 2012, 10:08:57
Quote from: riffautae;506009
TBH I think I have all the code done that would make it work, I just messed something tiny up and need to find it. Yes I have a teensy, there is also simulavr for more indepth debugging with gdb.

I'm dling simulavr as I write this. See if I can be debugging my layout before I even get my Phantom. And maybe write up some templates = p

Edit: Simulavr is a pain in the ass to do on Cygwin. Getting WinAVR now.

Edit2: Changed my mind again getting the AVR Plugin for Eclipse.
Title: Teensy Keyboard Firmware Discussion
Post by: riffautae on Thu, 02 February 2012, 10:27:43
Nice, with the tmk firmware I made layouts and such a bit easier. you can just put them in phantom/layouts and then include them in the layer array in whatever order. This means I can keep popular layouts in the repo and people just move around the includes.

As far as being done, I hope so. Since I got the toolchain working again I should be able to step through with gdb and see where it is hanging.
Title: Teensy Keyboard Firmware Discussion
Post by: hazeluff on Thu, 02 February 2012, 13:24:25
I think i just got WinAVR stuff installed correctly to use with eclipse...now lets see if I can get some simulation going...
Title: Teensy Keyboard Firmware Discussion
Post by: riffautae on Thu, 02 February 2012, 14:05:49
Quote from: hazeluff;506492
I think i just got WinAVR stuff installed correctly to use with eclipse...now lets see if I can get some simulation going...

Sweet, I hang out in the IRC if you need to chat about any of it.
Title: Teensy Keyboard Firmware Discussion
Post by: mkawa on Mon, 06 February 2012, 20:00:54
can whoever put the code on github repost the repo link?
Title: Teensy Keyboard Firmware Discussion
Post by: riffautae on Mon, 06 February 2012, 20:04:46
here is the existing working code (https://github.com/riffautae/phanorig)

the new code (https://github.com/riffautae/tmk_keyboard)
Title: Teensy Keyboard Firmware Discussion
Post by: Hzza on Tue, 07 February 2012, 09:29:16
Is anyone working on ISO Phantom firmware? If not, how difficult would it be for someone with absolutely no experience to repurpose the ANSI firmware?

Also, I've been working on some layout ideas but I don't know the limitations of the Teensy; how many different FN layers are possible and are mouse movement keys possible? I've read through some of the links above but they're quite a bit above my understanding tbh, so would like a simple answer for my simple brain.

Cheers,

Tom
Title: Teensy Keyboard Firmware Discussion
Post by: litster on Tue, 07 February 2012, 09:35:56
Phantom firmware is already working.  To create an ISO firmware, it is just a matter or remapping a few keys in the array and recompile.  That is it.
Title: Teensy Keyboard Firmware Discussion
Post by: hazeluff on Tue, 07 February 2012, 23:02:04
Quote from: litster;508158
Phantom firmware is already working.  To create an ISO firmware, it is just a matter or remapping a few keys in the array and recompile.  That is it.

Unless you are me and like adding extra functions like Windows key disable and using numlock for swapping in and out of the 7bit numpad thing = D.
Title: Teensy Keyboard Firmware Discussion
Post by: litster on Tue, 07 February 2012, 23:46:35
Disabling Windows keys is the same as assigning nothing to the row, column pair for the Windows keys, or changing them to whatever you want.  No big deal.  Current firmware doesn't support layers.  For that you do need to modify the firmware.  But that is outside of the scope of Hzza's question.
Title: Teensy Keyboard Firmware Discussion
Post by: TheProfosist on Wed, 08 February 2012, 00:27:36
Quote from: hazeluff;508923
Unless you are me and like adding extra functions like Windows key disable and using numlock for swapping in and out of the 7bit numpad thing = D.

Same here im going to custom firmware as well. I hope that The DOXs gets converted over so that we have all those additional features that are crucial to my layout
Title: Teensy Keyboard Firmware Discussion
Post by: mkawa on Wed, 08 February 2012, 10:36:20
i should be able to do all of this stuff but probably not until later next week, as i have a huge stack of grading to do and more incoming...

except for the mousekeys stuff; i don't know enough about the usb hid device protocol to know whether that's possible...
Title: Teensy Keyboard Firmware Discussion
Post by: TheProfosist on Wed, 08 February 2012, 15:23:13
Quote from: mkawa;509242
i should be able to do all of this stuff but probably not until later next week, as i have a huge stack of grading to do and more incoming...

except for the mousekeys stuff; i don't know enough about the usb hid device protocol to know whether that's possible...

It was possible with Hazu's firmware on the DOX but if that cannot now be done its not the end of the world, it would just be something that I would benefit from as I am more accurate with the mouse when I dont have to click with it.
Title: Teensy Keyboard Firmware Discussion
Post by: riffautae on Wed, 08 February 2012, 21:26:31
):< I ported the new code to avr studio 5, but it turns out atmel's simulator wont do the teensy processor!

If anyone wants that version I can upload it, it compiles but I don't know anything else.
Title: Teensy Keyboard Firmware Discussion
Post by: mkawa on Sat, 11 February 2012, 09:19:20
ugh, undergrads! i'll let you know when i'm ready to start hacking riff.
Title: Teensy Keyboard Firmware Discussion
Post by: mkawa on Sun, 19 February 2012, 19:57:42
ping

i cannot for the life of me get simulavr running on teensy binaries. atmega32 doesn't seem to be a supported micro for the simulavr in the ubuntu package.
Title: Teensy Keyboard Firmware Discussion
Post by: TheProfosist on Mon, 20 February 2012, 08:58:03
well i changed up my layout a bit http://tinyurl.com/7u6oczr I really hope someone can write up some code to get it o run.