The front side is just the fingered contacts for the switches, I didn't peel it off all the way because I didn't want to get it misaligned, but there is a slight lip to the rubber so you hould be able to reapply. And yes, I picked up a 10 pack.
Got it talking under PropCOMM/(Full Duplex Serial) with the following:
ser.start(serRecv,serXmit,1,9600)
Who's getting the job of writing an object for this?
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ New to the Propeller?
Getting started with the Protoboard? - Propeller Cookbook
Got an SD card? - PropDOS
A Living Propeller FAQ - The Propeller Wiki (Got the Knowledge? Got a Moment? Add something today!)
I'll start re-engineering "Full Duplex Serial" tonight and see if I can get a working drop-in replacement for "keyboard"
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ New to the Propeller?
Getting started with the Protoboard? - Propeller Cookbook
Got an SD card? - PropDOS
A Living Propeller FAQ - The Propeller Wiki (Got the Knowledge? Got a Moment? Add something today!)
I've disassembled the Palm driver and found the important section (attached).
Here's some translation...
First, subtract 16 ($10 in hex) from the code.
If ==0 then goto L762· (the "Q" button pushed !)
subtract 1
if ==0 then goto L780
....
L762:
Is·function is active?· · Yes:· move 49 (Ascii code for "1") into D3· and jump to L792 · No:· Is cap lock active? ····· No:· move 81 (Ascii code for "Q") into D3 and jump to L792 ····· Yes:· move 113 (ascii code for "q") into D3 and jump to L792
I've found what I think is a decent way to connect it. I'm a PC tech by day, so I've got lots
of PC junk laying around. (just ask Wizard, he also works in my shop) so I figured
I'll put a female CDROM header on my protoboard. (liberated from a dead soundcard)
and use a CD audio cable (three small wires with the proper end) to link my keyboard
to my protoboard. (say pin 6) and it will give me a quick disconnect when I don't want
to use it.
Spiffy?
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ New to the Propeller?
Getting started with the Protoboard? - Propeller Cookbook
Got an SD card? - PropDOS
A Living Propeller FAQ - The Propeller Wiki (Got the Knowledge? Got a Moment? Add something today!)
I have a start at reading the keyboard.· I am interested in people's opinion on the use of the Fn and Caps.· Are they sticky.· The code below uses the Fn key to swith to the blue characters until the Fn key is pressed again.· Fn followed by Space gives capital letters until the Fn key is pressed
Here's my own implementation of this, also using FullDuplexSerial
I like your code better, but I'd love to see it placed inside the a modified
serial driver. (like I've done) so that we can create a drop-in replacement
for "Keyboard"
My version has working UPPERS/lowers, carriage return, space, delete
I didn't like the idea of a CAPS lock, so my Fn/Caps only works once each
time it's pressed.
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ New to the Propeller?
Getting started with the Protoboard? - Propeller Cookbook
Got an SD card? - PropDOS
A Living Propeller FAQ - The Propeller Wiki (Got the Knowledge? Got a Moment? Add something today!)
I just dropped this Keyboard driver into PropDOS and immediately discovered that I wanted forward and backslashes.. [noparse]:)[/noparse] How about Phone/Todo double as \ & /
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ New to the Propeller?
Getting started with the Protoboard? - Propeller Cookbook
Got an SD card? - PropDOS
A Living Propeller FAQ - The Propeller Wiki (Got the Knowledge? Got a Moment? Add something today!)
John, the way I would expect the Fn key to work is two-fold:
press and hold - all secondary keypresses are the blue characters until the Fn break is received
press and release - the next keypress is blue character but subsequent keypreses are normal, if next character is Fn, Fn state is canceled.
I agree with Paul, but would just add a way to enter a "numlock" mode. I would make pressing the "Fn" twice engage/dissengage numlock, basically inverting the meaning of the Fn button.
Oldbitcollector said...
Yup, just got mine today too, opened and getting ready to remove the additional screws that hold the keyboard in..
I don't think we've got a prayer at getting a prop to fit in here.. pretty tight!
First thing to go will be the palm connector.
OBC
I think extending the case is straight forward. Use two matched strips·of hobby plastic to create your own side panels. 1/32"·thick is probably·good enough for the keyboard half and a strip of 1/16" with an inside strip of 1/32" for the top half. By using two strips you can duplicate the interleaved fillets of the clamshells, and bending 1/32 to fit can be done by hand. Once the strips are laminated together, they should easily hold the clamshell's curves.
For some reason I'm having trouble visualizing that...
(Not good with fabrication outside of computers and basic electronics)
If you do this, please take some pics. [noparse]:)[/noparse]
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ New to the Propeller?
Getting started with the Protoboard? - Propeller Cookbook
Got an SD card? - PropDOS
A Living Propeller FAQ - The Propeller Wiki (Got the Knowledge? Got a Moment? Add something today!)
lol, I am having trouble doing it. I find I need eleven fingers and four hands. Plus an air feed to save my liver from styrene glue.
I am now leaning towards tracing the bottom clamshell onto a plank of wood, cutting to the outline, routing the guides and then removing whatever is needed for ciricuits and batteries. Add shellac from a nice retro finish. 3/4 inch too fat? Use thinner wood.
I've a friend with a laser cutter itching to do some cutting, I'll ask him if he would be prepared to make a cut out for the keyboard, one which could then be mounted into any box one wanted. Then you don't have to worry about connectors etc and you can have plenty of room for the flip up oled etc [noparse]:)[/noparse]
My goal is to make a very small device that can be programmed in femtobasic.
Any ideas how to get coordinates of the buttons from the existing PCB ?
I though about scanning it but I don't know of any programs that will show the X,Y coordinates on the screen. And I don't know how accurate a scanner is ? I mean is 300 DPI REALLY 300 pixels per inch ?
Let me know if you have any ideas. I'm make the keyboard layout public when I get it made.
You should be able to get really close, as long as you don't use the Microsoft scanner wizard. It tends to make things slightly larger. Try the software that comes with your scanner first.
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ New to the Propeller?
Getting started with the Protoboard? - Propeller Cookbook
Got an SD card? - PropDOS
A Living Propeller FAQ - The Propeller Wiki (Got the Knowledge? Got a Moment? Add something today!)
Comments
I think the only way to fit a propeller inside is to create new PCB with all the key connections on the back side and the prop on the top.
I don't know how to get power for it though... No way of fitting even AAA batteries inside. Hmmmmm.
Bean.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
www.iElectronicDesigns.com
·
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
ser.start(serRecv,serXmit,1,9600)
Who's getting the job of writing an object for this?
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
New to the Propeller?
Getting started with the Protoboard? - Propeller Cookbook
Got an SD card? - PropDOS
A Living Propeller FAQ - The Propeller Wiki
(Got the Knowledge? Got a Moment? Add something today!)
Well, who'se doling it out?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Harley Shanko
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
New to the Propeller?
Getting started with the Protoboard? - Propeller Cookbook
Got an SD card? - PropDOS
A Living Propeller FAQ - The Propeller Wiki
(Got the Knowledge? Got a Moment? Add something today!)
I LOVE your avatar. But where is the disclaimer "Professional Stuntman, do not attempt" [noparse];)[/noparse]
What we need is an easy way of making connection to the pins. Any ideas ?
Bean.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
www.iElectronicDesigns.com
·
But, maybe I'll just solder a 3-pin header to the circuit board...
Post Edited (Rayman) : 1/24/2008 4:21:25 PM GMT
Maybe not terribly helpful..
Here's some translation...
First, subtract 16 ($10 in hex) from the code.
If ==0 then goto L762· (the "Q" button pushed !)
subtract 1
if ==0 then goto L780
....
L762:
Is·function is active?·
· Yes:· move 49 (Ascii code for "1") into D3· and jump to L792
· No:· Is cap lock active?
····· No:· move 81 (Ascii code for "Q") into D3 and jump to L792
····· Yes:· move 113 (ascii code for "q") into D3 and jump to L792
....
L792:
· send key code·to system
The serial stream idles at 0v. Therefore FDS mode s/b '0001' for 'invert rx'.
Even though I'd been scoping it, "Could have had a V8" time (slaps forehead).
ProtoBoard now displaying (TV) codes per Mike Cook list.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Harley Shanko
I've found what I think is a decent way to connect it. I'm a PC tech by day, so I've got lots
of PC junk laying around. (just ask Wizard, he also works in my shop) so I figured
I'll put a female CDROM header on my protoboard. (liberated from a dead soundcard)
and use a CD audio cable (three small wires with the proper end) to link my keyboard
to my protoboard. (say pin 6) and it will give me a quick disconnect when I don't want
to use it.
Spiffy?
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
New to the Propeller?
Getting started with the Protoboard? - Propeller Cookbook
Got an SD card? - PropDOS
A Living Propeller FAQ - The Propeller Wiki
(Got the Knowledge? Got a Moment? Add something today!)
[noparse][[/noparse]code]
Con
· DATA· = 7
· _clkmode = xtal1 + pll16x
· _xinfreq = 5_000_000
· #0, lc, fn, caps
OBJ
· tv· : "TV_Text"
· sio : "FullDuplexSerial"
VAR
· long char, junk1, junk2, state, idx, outchar
PUB Main·
· tv.start(12)
· sio.start(DATA, -1, 1, 9600)
· state := lc
· repeat
··· tv.out($00)
··· tv.str(string("Type a char", 13))
··· case state
····· lc:
······· ReadChars
······· if char == $1
········· state := fn
······· else
········· idx := lookdown(char: $10, $11, $12, $13, $6B)
········· outchar := lookup(idx: "qwert")
····· fn:
······· ReadChars
······· if char == $19
········· state := caps
······· elseif char == $01
········· state := lc
······· else
········· idx :=· lookdown(char: $10, $11, $12, $13, $6B)
········· outchar := lookup(idx: "12345" )
····· caps:
······· ReadChars
······· if char == $1
········· state := lc
······· else
········· idx := lookdown(char: $10, $11, $12, $13, $6B)
········· outchar := lookup(idx: "QWERT")······
··· tv.str(string("the character is:· "))
··· tv.out(outchar)···
··· waitcnt(CLKFREQ· + cnt)
Pri ReadChars
··· char := sio.rx
··· junk1 := sio.rx
··· junk2 := sio.rx
··· tv.hex(char, 2)
··· tv.out(13)
··· tv.hex(junk1, 2)
··· tv.out(13)
··· tv.hex(junk2, 2)
··· tv.out(13)
··· return
[noparse][[/noparse]/code]
I like your code better, but I'd love to see it placed inside the a modified
serial driver. (like I've done) so that we can create a drop-in replacement
for "Keyboard"
My version has working UPPERS/lowers, carriage return, space, delete
I didn't like the idea of a CAPS lock, so my Fn/Caps only works once each
time it's pressed.
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
New to the Propeller?
Getting started with the Protoboard? - Propeller Cookbook
Got an SD card? - PropDOS
A Living Propeller FAQ - The Propeller Wiki
(Got the Knowledge? Got a Moment? Add something today!)
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
New to the Propeller?
Getting started with the Protoboard? - Propeller Cookbook
Got an SD card? - PropDOS
A Living Propeller FAQ - The Propeller Wiki
(Got the Knowledge? Got a Moment? Add something today!)
press and hold - all secondary keypresses are the blue characters until the Fn break is received
press and release - the next keypress is blue character but subsequent keypreses are normal, if next character is Fn, Fn state is canceled.
But this is just me.
Caps would be sticky.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
Post Edited (Paul Baker (Parallax)) : 1/25/2008 6:32:17 AM GMT
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Share the knowledge: propeller.wikispaces.com
Lets make some music: www.andrewarsenault.com/hss
There are plenty available but they are in safe hands[noparse]:)[/noparse])
The price went up by 10x from that supplier[noparse]:)[/noparse]
EBay has some secondary sources but they want an outrageous $3[noparse]:)[/noparse]
These guys created a futures market in micro keyboards.
Let them loose on Wall Street and they would be dangerous[noparse]:)[/noparse]
Rich
Left to the reader: what to do with the screws.
(Not good with fabrication outside of computers and basic electronics)
If you do this, please take some pics. [noparse]:)[/noparse]
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
New to the Propeller?
Getting started with the Protoboard? - Propeller Cookbook
Got an SD card? - PropDOS
A Living Propeller FAQ - The Propeller Wiki
(Got the Knowledge? Got a Moment? Add something today!)
I am now leaning towards tracing the bottom clamshell onto a plank of wood, cutting to the outline, routing the guides and then removing whatever is needed for ciricuits and batteries. Add shellac from a nice retro finish. 3/4 inch too fat? Use thinner wood.
http://home.att.net/~jacksonharbor/palm.htm
There's a link to a document that explains the palm keyboard hardware interface.
Mike
Mine are in the air at the moment.
Graham
Any ideas how to get coordinates of the buttons from the existing PCB ?
I though about scanning it but I don't know of any programs that will show the X,Y coordinates on the screen. And I don't know how accurate a scanner is ? I mean is 300 DPI REALLY 300 pixels per inch ?
Let me know if you have any ideas. I'm make the keyboard layout public when I get it made.
Bean
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
www.iElectronicDesigns.com
·
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
New to the Propeller?
Getting started with the Protoboard? - Propeller Cookbook
Got an SD card? - PropDOS
A Living Propeller FAQ - The Propeller Wiki
(Got the Knowledge? Got a Moment? Add something today!)