Soarer's Keyboard Controller firmware
- Muirium
- µ
- Location: Edinburgh, Scotland
- Main keyboard: HHKB Type-S with Bluetooth by Hasu
- Main mouse: Apple Magic Mouse
- Favorite switch: Gotta Try 'Em All
- DT Pro Member: µ
Your linked guide said something about higher sensitivity with a smaller pad. Perhaps "sensitivity" isn't something you're looking for with a keyboard, though, as false positives are a real problem with any touch pads acting as keys. Definitely want to be sensible about where to put the sensor to avoid problems with unintended contact.
-
- Location: Belgium, land of Liberty Wafles and Freedom Fries
- Main keyboard: G80-3K with Clears
- Favorite switch: Capacitative BS
- DT Pro Member: 0049
I want to use it as Fn keys, so it's not like I'll need something like PawSense. Of course, it might get confusing though if it starts acting hairy while typing.Muirium wrote:Your linked guide said something about higher sensitivity with a smaller pad. Perhaps "sensitivity" isn't something you're looking for with a keyboard, though, as false positives are a real problem with any touch pads acting as keys. Definitely want to be sensible about where to put the sensor to avoid problems with unintended contact.
Also, if I get this to work, you saw it here first!
-
- Location: Belgium, land of Liberty Wafles and Freedom Fries
- Main keyboard: G80-3K with Clears
- Favorite switch: Capacitative BS
- DT Pro Member: 0049
Ok, electronics is hard, especially if you're doing without an oscilloscope or logic analyzer.
Seems the original circuit with the LED works. It doesn't react when your hand is near it, you actually need to make contact and thus apply gentle pressure. The downside is that the LED is only dimly lit (I guess about 60%). Since that LED is driven by a Schmitt-trigger, I fear the latter might be oscillating between on and off.
I haven't dared yet to connect it to a microcontroller... I could try hooking up a 555 timer in one-shot mode to reset on the rise edge, but I have only one of those ICs available while I want 3 touch pads. Intuitively, I was wondering if I couldn't send the square pulse through a low-pass filter and then use a comparator to detect that, except that I don't have that IC at all, only some logic gates and a single op-amp.
Any ideas or alternatives for a cost-effective solution?
EDIT: Maybe I should ask some moderator to split this into its own thread... Anyway, I'm going to try the 555 IC first, see if that can get me a more stable signal.
Seems the original circuit with the LED works. It doesn't react when your hand is near it, you actually need to make contact and thus apply gentle pressure. The downside is that the LED is only dimly lit (I guess about 60%). Since that LED is driven by a Schmitt-trigger, I fear the latter might be oscillating between on and off.
I haven't dared yet to connect it to a microcontroller... I could try hooking up a 555 timer in one-shot mode to reset on the rise edge, but I have only one of those ICs available while I want 3 touch pads. Intuitively, I was wondering if I couldn't send the square pulse through a low-pass filter and then use a comparator to detect that, except that I don't have that IC at all, only some logic gates and a single op-amp.
Any ideas or alternatives for a cost-effective solution?
EDIT: Maybe I should ask some moderator to split this into its own thread... Anyway, I'm going to try the 555 IC first, see if that can get me a more stable signal.
-
- Main keyboard: dell at101w
- Main mouse: corsair m60
- Favorite switch: alps
- DT Pro Member: -
Hi guys, i have a probably idiot question for you.
I am trying to make a teensy firmware to control my dell at101w.I hand wired it, removed pcb etc so its not a dell anymore
I want to try the soarer's fw but i dont understand how to write the hex file?
I can find the beta 4 firmware but dont i need to make changed to it? How do i do that?
Sorry for my ignorance and my bad english, not my native language.
Edit: I did the trick and flash the teensy but only the first line of f1,1,q,a,z,windows key (matteo wiring) works.
Maybe sense is not columns but rows?
This is what my matrix looks like
I am trying to make a teensy firmware to control my dell at101w.I hand wired it, removed pcb etc so its not a dell anymore
I want to try the soarer's fw but i dont understand how to write the hex file?
I can find the beta 4 firmware but dont i need to make changed to it? How do i do that?
Sorry for my ignorance and my bad english, not my native language.
Edit: I did the trick and flash the teensy but only the first line of f1,1,q,a,z,windows key (matteo wiring) works.
Maybe sense is not columns but rows?
This is what my matrix looks like
- Attachments
-
- soarers code.JPG (121.68 KiB) Viewed 8781 times
-
- Main keyboard: dell at101w
- Main mouse: corsair m60
- Favorite switch: alps
- DT Pro Member: -
Does anyone knows if this board works ok with soarers fw?
https://www.adafruit.com/products/296
https://www.adafruit.com/products/296
- scottc
- ☃
- Location: Remote locations in Europe
- Main keyboard: GH60-HASRO 62g Nixies, HHKB Pro1 HS, Novatouch
- Main mouse: Steelseries Rival 300
- Favorite switch: Nixdorf 'Soft Touch' MX Black
- DT Pro Member: -
32u4? It should do. Just get a Pro Micro for a fraction of the cost:
http://www.ebay.com/itm/Leonardo-Pro-Mi ... 4853468c6a
http://www.ebay.com/itm/Leonardo-Pro-Mi ... 4853468c6a
-
- Main keyboard: dell at101w
- Main mouse: corsair m60
- Favorite switch: alps
- DT Pro Member: -
What about the pins that are not named the same? would that be a problem?scottc wrote: ↑32u4? It should do. Just get a Pro Micro for a fraction of the cost:
http://www.ebay.com/itm/Leonardo-Pro-Mi ... 4853468c6a
- scottc
- ☃
- Location: Remote locations in Europe
- Main keyboard: GH60-HASRO 62g Nixies, HHKB Pro1 HS, Novatouch
- Main mouse: Steelseries Rival 300
- Favorite switch: Nixdorf 'Soft Touch' MX Black
- DT Pro Member: -
I've written a guide on how to use a Pro Micro for Soarer's tools. I'm out right now so can't go looking for it but it's around here somewhere.
- Khers
- ⧓
- Location: Sweden
- Main keyboard: LZ CLSh
- Main mouse: Logitech MX Ergo
- Favorite switch: Buckling Springs | Topre | Nixdorf Black
- DT Pro Member: 0087
I've finally got my Bigfoot up and running using Soarer's Controller today as well. Was inspired by your port and thought that I had delayed this long enough! What an awesome board this is! Almost 30 years old (March '85), going strong once again!Laser wrote: ↑Soarer, I hope that you can read this: BIG thanks for your controller & converter firmware ... your work just brought to life another 29-year old Bigfoot.
- Laser
- emacs -nw
- Location: Romania
- Main keyboard: Plum TKL \w Topre domes (work) / Novatouch (home)
- DT Pro Member: 0180
That's great, I'm very happy to hear itKhers wrote: ↑I've finally got my Bigfoot up and running using Soarer's Controller today as well. Was inspired by your port and thought that I had delayed this long enough! What an awesome board this is! Almost 30 years old (March '85), going strong once again!Laser wrote: ↑Soarer, I hope that you can read this: BIG thanks for your controller & converter firmware ... your work just brought to life another 29-year old Bigfoot.
This evening i'll come up with a (of course) smart solution to fix the arduino safely inside the keyboard case, then, it will start singing!
-
- Main keyboard: dell at101w
- Main mouse: corsair m60
- Favorite switch: alps
- DT Pro Member: -
Thanks scottc but i think i will go with either teensy 2 or the one from adafruit because i really like the quality of the board itself. Does anyone knows how to implement leds for backlight?scottc wrote: ↑I've written a guide on how to use a Pro Micro for Soarer's tools. I'm out right now so can't go looking for it but it's around here somewhere.
I am thinking to make a passive circuit with maybe dip switches for 3 different colours and 1 pin of the teensy to power on/off the circuit.
-
- Location: US
- Main keyboard: Omnikey 102 Blackheart
- Main mouse: Kensington Expert Mouse
- Favorite switch: White Alps
- DT Pro Member: 0174
I've just tried to build a small numpad using this firmware. It's an old Genovation 17-key pad which I scrapped the PCB from and fitted with Matias switches.
The first two rows work fine, but the last three never seem to fire.
I'm using a Pro Micro clone, and have it wired so that the rows of the keypad correspond to pins A1, A0, 15, 14, A3 of the Pro Micro, and the columns to 2,3,4,5.
If it were a single diode bad running down a column, I'd expect at least some combinations in those bottom rows would still fire. Same, if it were a single loose wire. I checked the connections between the controller and the rows of the numpad with a meter, and they seemed to register okay.
My configuration looks like this:
I figured I'd get the layout coherent first, then map the keys to media controls and macros.
I'm wondering if there's some non-obvious thing I'm missing. The controller could be faulty, but if so, it's an odd way to be faulty. Maybe I damaged it trying to clean up some of the solder joints. I could try another.
The first two rows work fine, but the last three never seem to fire.
I'm using a Pro Micro clone, and have it wired so that the rows of the keypad correspond to pins A1, A0, 15, 14, A3 of the Pro Micro, and the columns to 2,3,4,5.
If it were a single diode bad running down a column, I'd expect at least some combinations in those bottom rows would still fire. Same, if it were a single loose wire. I checked the connections between the controller and the rows of the numpad with a meter, and they seemed to register okay.
My configuration looks like this:
Code: Select all
matrix
scanrate 4
debounce 5
blocking 0
sense PD1 PD0 PD4 PC6
strobe PF6 A B C D
strobe PF7 E F G H
strobe PB1 UNASSIGNED J K L
strobe PF4 UNASSIGNED N O P
strobe PB3 Q R S UNASSIGNED
end
I'm wondering if there's some non-obvious thing I'm missing. The controller could be faulty, but if so, it's an odd way to be faulty. Maybe I damaged it trying to clean up some of the solder joints. I could try another.
- Muirium
- µ
- Location: Edinburgh, Scotland
- Main keyboard: HHKB Type-S with Bluetooth by Hasu
- Main mouse: Apple Magic Mouse
- Favorite switch: Gotta Try 'Em All
- DT Pro Member: µ
I'd try hooking up to different pins and seeing what goes different. I haven't used a Pro Micro, but my experiences with Teensy 2s running Soarer's Controller are rock solid.
-
- Location: US
- Main keyboard: Omnikey 102 Blackheart
- Main mouse: Kensington Expert Mouse
- Favorite switch: White Alps
- DT Pro Member: 0174
Tried different pins to no avail.
What worked was converting to a 2kro matrix... I wonder if the diodes-- cheap "1N4148"s from China-- had too high a voltage drop for using in this way.
Good I discovered this BEFORE building an aircrraft carrier style board with them.
What worked was converting to a 2kro matrix... I wonder if the diodes-- cheap "1N4148"s from China-- had too high a voltage drop for using in this way.
Good I discovered this BEFORE building an aircrraft carrier style board with them.
- Muirium
- µ
- Location: Edinburgh, Scotland
- Main keyboard: HHKB Type-S with Bluetooth by Hasu
- Main mouse: Apple Magic Mouse
- Favorite switch: Gotta Try 'Em All
- DT Pro Member: µ
Juh? Diodes should be the easiest thing to source from wherever. Maybe the Pro Micro isn't up to powering much of a matrix. Anyone got a positive experience with them? (Besides protocol converters, which is how I've used the wee guys.)
-
- Location: Alachua, FL USA
- Main keyboard: QFR w/Greens
- Main mouse: Sharkk SK2242
- Favorite switch: Greens...so far
- DT Pro Member: -
Sorry to drag this thread out of the deep but I am looking for guidance. I am just finishing up my Phantom and am about to start working on the firmware. I have downloaded Soarer's file and looked over the documentation but I think I'm missing something. From soarer's documentation for the convertor:
"Typically, you edit your config file(s), assemble them with scas, then load them onto the converter with scwr."
So create/edit a .sc file, assemble it with scas then use scwr to load it onto the convertor...but where does the teensy loader come into play?
"Typically, you edit your config file(s), assemble them with scas, then load them onto the converter with scwr."
So create/edit a .sc file, assemble it with scas then use scwr to load it onto the convertor...but where does the teensy loader come into play?
- chzel
- Location: Athens, Greece
- Main keyboard: Phantom
- Main mouse: Mionix Avior 7000
- Favorite switch: Beamspring, BS, Vintage Blacks.
- DT Pro Member: 0086
You need the Teensy loader to load the .hex for the first time. Then the firmware can jump to the bootloader by itself and get programmed by scwr.
- chzel
- Location: Athens, Greece
- Main keyboard: Phantom
- Main mouse: Mionix Avior 7000
- Favorite switch: Beamspring, BS, Vintage Blacks.
- DT Pro Member: 0086
I think so, but I haven't really worked with Soarer's other than straight up converter.
Maybe Mu can chip in, he's got way more experience at this!
Maybe Mu can chip in, he's got way more experience at this!
- Muirium
- µ
- Location: Edinburgh, Scotland
- Main keyboard: HHKB Type-S with Bluetooth by Hasu
- Main mouse: Apple Magic Mouse
- Favorite switch: Gotta Try 'Em All
- DT Pro Member: µ
The Pro Micro is a pain in the arse. I only ever successfully got a hex file on one, once! Fortunately that's all I needed to do, as it was Soarer's Converter of course.
Andrewjoy is your man for Pro Micro voodoo. I sold mine to him and went 100% Teensy after that experience. (Followed by the fact my Pro Micro flaked out at the power draw of an IBM AT Model F… grr!) They do work, supposedly even as a controller, but the hassle is Not Worth The Money in my experience. Steep learning curve if this is your first time with Soarer's. Scottc is anther pro Pro Micro, as I recall.
Andrewjoy is your man for Pro Micro voodoo. I sold mine to him and went 100% Teensy after that experience. (Followed by the fact my Pro Micro flaked out at the power draw of an IBM AT Model F… grr!) They do work, supposedly even as a controller, but the hassle is Not Worth The Money in my experience. Steep learning curve if this is your first time with Soarer's. Scottc is anther pro Pro Micro, as I recall.
- Halvar
- Location: Baden, DE
- Main keyboard: IBM Model M SSK / Filco MT 2
- Favorite switch: Beam & buckling spring, Monterey, MX Brown
- DT Pro Member: 0051
I don't think that's exactly how it works. AVR microcontrollers have three kinds of memory: RAM, EEPROM and flash memory. The HEX-file (firmware) is written into the flash memory by the teensy loader, and then the firmware communicates with the scwr tool to write the configuration data into the EEPROM. The SoC doesn't have to go into programming mode any more after the firmware has been flashed, except if you want to overwrite the firmware.chzel wrote: ↑You need the Teensy loader to load the .hex for the first time. Then the firmware can jump to the bootloader by itself and get programmed by scwr.
So for configuration, Teensy and Pro Micro should be the same.
- Muirium
- µ
- Location: Edinburgh, Scotland
- Main keyboard: HHKB Type-S with Bluetooth by Hasu
- Main mouse: Apple Magic Mouse
- Favorite switch: Gotta Try 'Em All
- DT Pro Member: µ
Yeah. Once it's up and running. Which is the awkward part.
Has anyone got success stories running Soarer's CONTROLLER from a Pro Micro? With all the flaky nonsense I was getting, I didn't bother trying. I left mine to Converter duties, which it duly sucked at too.
Has anyone got success stories running Soarer's CONTROLLER from a Pro Micro? With all the flaky nonsense I was getting, I didn't bother trying. I left mine to Converter duties, which it duly sucked at too.
-
- Location: Alachua, FL USA
- Main keyboard: QFR w/Greens
- Main mouse: Sharkk SK2242
- Favorite switch: Greens...so far
- DT Pro Member: -
Ahhh, that was the step I was missing. The Easy AVR USB Firmware suddenly makes sense now too. So the first step is to load the included .hex file for the ATMEGA32U4 to the teensy with the Teensy Loader.chzel wrote: ↑You need the Teensy loader to load the .hex for the first time. Then the firmware can jump to the bootloader by itself and get programmed by scwr.
There was such a flurry of replies to this thread that I thought maybe I was in the wrong thread when I came looking! Thanks for the help!
- Halvar
- Location: Baden, DE
- Main keyboard: IBM Model M SSK / Filco MT 2
- Favorite switch: Beam & buckling spring, Monterey, MX Brown
- DT Pro Member: 0051
Just to avoid confusion , note that you can't use the Teensy loader with the Pro Micro. You can use AVRDude instead.
See Scottc's related tut: http://deskthority.net/workshop-f7/how- ... t8448.html
See Scottc's related tut: http://deskthority.net/workshop-f7/how- ... t8448.html
-
- Main keyboard: IBM Wheelwriter 2 Keyboard with Soarers Controller
- Main mouse: Logitech Wireless
- Favorite switch: Buckling Spring
- DT Pro Member: -
Anyone able to use Soarer's Controller with the Teensy LC or Teensy 3.0? I would attempt to compile it myself, but I can't find the source code.
The Teensy 2.0 was my best option, since I need at least 24 pins, at the lowest cost. But it is no longer produced, the Teensy 2.0++ is usually $10 more, the Pro Micro doesn't have enough pinouts, and Adafruit's UPS shipping cost is quite high...
The Teensy 2.0 was my best option, since I need at least 24 pins, at the lowest cost. But it is no longer produced, the Teensy 2.0++ is usually $10 more, the Pro Micro doesn't have enough pinouts, and Adafruit's UPS shipping cost is quite high...