nls-technical
[Top] [All Lists]

Re: [nls-technical] chord keyset

To: Philip Gust <gust@NouveauSystems.com>
Cc: nls-technical@chm.cim3.net, go@ao.com
From: John Sechrest <sechrest@jas.peak.org>
Date: Mon, 20 Feb 2006 07:21:03 -0800
Message-id: <E1FBCqV-0002wx-UQ@jas.peak.org>


Philip Gust <gust@NouveauSystems.com> writes:    (01)


 % I'm following up with you about a quote for the NRE and production 
 % costs to create a new batch of keysets.  Will you be able to get us 
 % something this week?    (02)


Here is how far I have gotten on the quote. It is a bit on the rough
side, given that we have been asking some people things with short
notice and information. However, I think that it bounds the problem.    (03)

I am glad to work with you to refine it. I just sent a copy of this
to jonathan last night as part of another email.    (04)

Let me know if I can help with anything.     (05)




        Chording keyboard quote - first pass
        2006/2/13    (06)

        Design and build a chording keyboard in
        the Engelbart style that acts like a USB keyboard. 
        Power the unit by USB.     (07)

        I have asked several people locally for a quick
        estimate of what it would take to build the
        keyboard. Keep in mind that these are 
        rough estimates done quickly, so there is 
        some  error built into them. In an optimistic
        world, these are high prices, but to get
        better numbers would require a more detailed technical
        discussion about exactly what is being built.     (08)

        The building of a set of chording keyboards
        comes with several parts. First, building       
        the base, keys and case. Secondly, building
        a usb based micropocessor controlled keyboard.
        Then building the software to make it work. 
        Along the way, it may be worth getting some
        formal drawings of the keyboard might be worth doing.    (09)

        In fabricating the keyboard, there are several approaches that
        are possible. The initial solution is to use plastic injection
        molding. To do this, you need to have a set of plans which
        describe the parts, and then produce a set of molds.
        This can be expensive for a small number of units. 
        If there are going to be less than 10,000 units made,
        the industry will use aluminum molds.    (010)

        There is a low cost mold manufacturer called ProtoMold
        http://www.protomold.com which will do a part for less
        than $2000.     (011)

        However, if we are only going to be building 12 units, it is
        cheaper in the short run to just machine out with a CNC the
        parts. We have a local machine shop who works for $50/hour. He
        suspects it will take two hours per keyboard to put together a
        set of 12 keyboards.  ($100 for each set of parts)    (012)

        Mechanical design:
                Work out demensions and throw and mounting - 1 day
                Spacers and mounting configurations - .5 day
                box selection - 1.5 day
                Box mechanical drawings + cutouts - 1 day
                key cutting -> 1 day    (013)

        Secondly, after building the keyboard parts,
        the electronics needs to be defined and build.
        A single PC board with the switches directly attached
        to the board would be the cheapest pathway.     (014)


        To build that board, AO would need to:
                Find a switch - .5 day
                Design a mechanical switch on circuit board - .5 day
                schematic , board layout, photoplots - 1 day
                testing - 1 day
                Software  - .5 day
                Usb device selection -  3 days  
                processor and part selection - 1 day
                power supply -> USB power -> Design - .5 day     (015)


        12 days @ $95 =  9120    (016)

        circuit Board - $700 (makes up to 30 boards)    (017)

        Parts    -    3 * 5 + 5 + 2 + 3 => ~~ 35  (gross guess)
        keyboard parts - $100
        assembly - $55
        Shipping - $15    (018)


        NRE = $9820    (019)


        The total cost of engineering and building a keyboard 
        would be 96 hours of work. Given the briefness of the 
        discussions, this number can be refined. But given this
        as an approximation, the cost of doing that would
        be $9820.    (020)

        Amortizing the cost of the work over several keyboards
        would reduce the cost per keyboard. Having built one, 
        it is not substantially more expensive to build 10.    (021)

        It does not make sense to do plastic injection molding
        for a run of ten, but it would be able to cut the
        costs for this process if we built 50. But assuming
        a hand machining mechanism, then the amortization might
        look like:     (022)

        Per unit cost = $35 55 15 = $205 + board costs + keys ($100)    (023)


        Quantity   1 =  9820  -> $9820 each
        Quantity   5 =  10345 -> $2069 each
        quantity  10 =  10870 -> $1087 each
        Quantity  50 =  15770 ->  $315 each
        Quantity 100 =  23120 ->  $231 each
        Quanity  500 =  76320 ->  $152 each                         (024)




---- 
     Auxilary information:    (025)

     Drawing of it as it is designed now - Tom Winslow
     http://www.wintechdesignllc.com
     tom_winslow@wintechdesignllc.com
     3 days $ 576/day -> $1728    (026)

     Re-engineering mechanical design of the keyboard to be
     manufacturable and plastic moldable - $8,000 to $10,000
     http://www.wintechdesignllc.com
     tom_winslow@wintechdesignllc.com    (027)

     Board design, hardware layout, programming by Alpha Omega
     http://www.ao.com
     541 754-1911    (028)

     Machining by Kenbo - http://www.kenbo.org    (029)










 % At 04:08 PM 2/12/2006, Philip Gust wrote:
 % >At 03:11 PM 2/12/2006, John Sechrest wrote:
 % >
 % >
 % >>Philip Gust <gust@NouveauSystems.com> writes:
 % >>
 % >>  % >  One of the places we got stuck was the need for a driver to
 % >>  % >  coordinate the 5 bits from one keyboard with the 3 bits of the 
mouse.
 % >>  % >  That was something that we did not process very well.
 % >>
 % >>  % I'm a little confused by it myself.  We wrote some specialized Java
 % >>  % code that processed input from the keyset, and allowed Java to
 % >>  % perform its normal mouse handling.  I imagine that the same would be
 % >>  % done for any other programming language.  It's not clear what the
 % >>  % advantage would be of combining keyboard and mouse handling into a
 % >>  % single driver, especially in a windowed environment.
 % >>
 % >>  Appearently NLS used the three mouse keys as modifiers,
 % >>  so you could get 8 states from the right hand to modify
 % >>  key stroke on the left hand...
 % >>
 % >>  so if you have
 % >>
 % >>  10110 000
 % >>  10110 100
 % >>  10110 010
 % >>  10110 001
 % >>
 % >>  The the five keys on the left are generating different keys based
 % >>  on the keys on the right side.
 % >
 % >I can see how there may be advantages to combining mouse and 
 % >keyboard input into a single driver.  That way it can be used with 
 % >any application.  The challenge I can foresee is trying to do that 
 % >under multiple OSes and their window system environments, and making 
 % >it user or application configurable.  It would also be nice for such 
 % >a driver provide a way to emulate a keyset/mouse combo using a 
 % >standard keyboard/mouse with an appropriate modifier (similar to an 
 % >embedded numeric keypad using the numlock key)
 % >
 % >Up to now we've been treating the "vintage" keyset as an auxiliary 
 % >input device, and allowing the AugTerm application to read the 
 % >device through a set of APIs and interpret keypad/mouse input.  For 
 % >example, on Linux, the vintage keypad appear as a USB joystick and 
 % >we read it through /dev/input/js0.  The advantage is that we can 
 % >leverage existing drivers on various OSes.
 % >
 % >There's also a separate question of what type of USB device the 
 % >keyset should identify itself as, and if that should be one of the 
 % >standard types then which one.
 % >
 % >
 % >
 % >
 % >>  % >  It is possible that Gary might be persuadable to do it off the 
clock.
 % >>  % >  However, I do not see that happening on the time schedule you
 % >>  % >  are laying out. I will ask gary tomorrow if the things that he
 % >>  % >  is interested in stepping up to this project by end of May or
 % >>  % >  not.
 % >>
 % >>  % Thanks for taking this to them.  There are certain promotional
 % >>  % opportunities that AO might be able to take advantage of were it to
 % >>  % do this on a pro-bono basis.  However, I understand about the funding
 % >>  % issue as well.
 % >>
 % >>  Yes, there are some wins.
 % >>
 % >>
 % >>  % In that case, could you find out what it would cost
 % >>  % to get something ready to bid out for manufacturing in May or June by
 % >>  % completing the hardware and electrical design, and building a
 % >>  % prototype?
 % >>
 % >>  Yes, I can get Gary to put together a quote for putting together
 % >>  12 units. Is that the number that you want?
 % >
 % >I'd suggest breaking the quote down into two parts.  One is the NRE 
 % >required to get it ready for manufacturing.  The other is the cost 
 % >of manufacturing certain numbers of units.  It's hard to say how 
 % >many we may need over time.  As more people use the restored 
 % >NLS/Augment system or the next generation system being planned, they 
 % >may want to have a keyset.  Some people may also want one purely as 
 % >a collectable.  In that case, we would like to be able to sell them 
 % >one.  I recommend quoting an initial 12, and then incremental units 
 % >of 48 keysets (or whatever volume makes sense).
 % >
 % >
 % >
 % >>  % We can probably get someone to do the drivers on a
 % >>  % volunteer basis if you can take care of the hardware end.  I'd expect
 % >>  % that if we found funding, this would be work for hire that would be
 % >>  % whoever funded it.
 % >>
 % >>
 % >>  You will have to help me constrain the project some.
 % >>  Do you want us to replicate directly what is there?
 % >>  or do you want us to make some optimization for price?
 % >>  Or do you want us to make any evolutionary steps for it?
 % >
 % >Optimizing for price would be fine.  It would be great if we could 
 % >retain the look and feel of the original, for those who may want one 
 % >as an historical artifact.  No need, though, to go through the 
 % >effort of a 15-pin analog output that must be converted to a game 
 % >port and again to a USB interface, for example. As to what  type of 
 % >USB device it would appear as, we'll need to get a bit of a 
 % >technical discussion going on that.
 % >
 % >
 % >
 % >
 % >
 % >>  % I'll hope to hear from you again in the next few days.
 % >>
 % >>  I will talk to gary on monday and try to have you some
 % >>  details with in a day or so.
 % >
 % >Thanks!
 % >
 % >
 % >>-----
 % >>John Sechrest          .         Helping people use
 % >>                         .           computers and the Internet
 % >>                           .            more effectively
 % >>                              .
 % >>                                  .       Internet: sechrest@peak.org
 % >>                                       .
 % >>                                               . 
 % >> http://www.peak.org/~sechrest
 % >
 % >
 % >Philip Gust
 % >Nouveau Systems, Inc.
 % >
 % >phone: +1 650 961-7992
 % >fax:   +1 520 843-7217
 % >
 % >
 % >mailto: gust@NouveauSystems.com
 % 
 % 
 % Philip Gust
 % Nouveau Systems, Inc.
 % 
 % phone: +1 650 961-7992
 % fax:   +1 520 843-7217
 % 
 % 
 % mailto: gust@NouveauSystems.com 
 % 
 %     (030)

-----
John Sechrest          .         Helping people use
                        .           computers and the Internet
                          .            more effectively
                             .                      
                                 .       Internet: sechrest@peak.org
                                      .   
                                              . http://www.peak.org/~sechrest    (031)

_________________________________________________________________
Message Archives: http://chm.cim3.net/forum/nls-technical/
Shared Files: http://chm.cim3.net/file/work/project/nls-restore/
Community Portal: http://www.computerhistory.org/  
To Post: mailto:nls-technical@chm.cim3.net
Community Wiki: http://chm.cim3.net/cgi-bin/wiki.pl?NLS_Restoration    (032)
<Prev in Thread] Current Thread [Next in Thread>