Shop OBEX P1 Docs P2 Docs Learn Events
PropBOE Shield back on sale! (Compatible with Activity Board) — Parallax Forums

PropBOE Shield back on sale! (Compatible with Activity Board)

Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
edited 2013-05-08 19:20 in General Discussion
In honor of Parallax's release of the new Propeller Activity Board, I'm putting the PropBOE shield back on sale at $13.99
The PropBOE I/O Shield is compatible with both the PropBOE and Activity Board.

[Confession]I'd love to see a C based PS/2 Keyboard, IR, and Wii objects come into being.[/Confession]

http://propellerpowered.us/index.php?route=product/product&path=25_60&product_id=216

Thanks guys!

Jeff

Comments

  • mindrobotsmindrobots Posts: 6,506
    edited 2013-05-07 14:29
    Jeff,

    There's a PropGCC based keyboard package out there somewhere. Jazzed put it together as a demo on how to convert Spin/PASM objects to C. Let me see if I can find it this evening when I have some down time. It may need to be turned into something that's a more pretty library format.

    We, I MEAN someone, may be able to do the same with an IR and a Wii package.
  • NWCCTVNWCCTV Posts: 3,629
    edited 2013-05-07 14:44
    Parallax's release of the new Propeller Activity Board
    Has this actually been announced yet? I am not seeing anything in the forums.
  • mindrobotsmindrobots Posts: 6,506
    edited 2013-05-07 14:53
    It's in "New Products" and the page is live. But no trumpets being sounded or banners being flown yet.
  • NWCCTVNWCCTV Posts: 3,629
    edited 2013-05-07 15:27
    OK. Just odd that it is not even posted on the New Products Forum!! That's where I have been looking.
  • mindrobotsmindrobots Posts: 6,506
    edited 2013-05-07 19:33
    Jeff,

    I found the files from Steve (jazzed). they compiled in SimpleIDE but I'm unable to test them since I don't have the needed hardware handy. (I need to do some soldering on some things I bought!) So, instead, I zipped them up but for some reason, the forum is not letting me attach a .zip file.

    I may give up, I've had enough aggravation for one day!

    We'll get these puppies out there somehow!

    Let's try this. I put it in the public folder on my DropBox so you should be able to get it here.

    It's really a good example since it uses Chip's keyboard PASM file and then Steve wrote .c and .h wrappers for it so it can be used in PropGCC. It's also a good example of how to use mailboxes between C and PASM. I think when I ran it, I used a Demoboard but a PropBOE or Activity board with your PropBOE shield should work just fine.

    Let em know if the DropBox solution doesn't work out.
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2013-05-08 08:53
    Thanks Rick! Grabbed a copy of the file. It'll be interesting to see what it takes this newbie to get it working. :)

    Jeff
  • doggiedocdoggiedoc Posts: 2,243
    edited 2013-05-08 10:46
    I ordered two last night. Thanks Jeff!
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2013-05-08 11:58
    doggiedoc wrote: »
    I ordered two last night. Thanks Jeff!

    They are going out this afternoon! Thanks for your patronage Paul!

    Jeff
  • doggiedocdoggiedoc Posts: 2,243
    edited 2013-05-08 13:21
    They are going out this afternoon! Thanks for your patronage Paul!

    Jeff
    You bet.
  • dgatelydgately Posts: 1,630
    edited 2013-05-08 14:23
    [Confession]I'd love to see a C based PS/2 Keyboard, IR, and Wii objects come into being.[/Confession]

    Well, here's a shot at the Wii Nunchuk Object...

    A spin2cpp translation of the TestWiiNunchuck (sic) spin object from OBEX. Basically ran spin2cpp on TestNunchuck.spin and edited the results to remove dependencies on .spin files (FullDuplexSerial, ExtendedFull DuplexSerial, Float32 & Float32A). Rewrote just 3 functions in Nunchuck.c to remove the spin code for Floating point, replacing that with C functions.

    This project should directly build with SimpleIDE if you use the simpletools library provided with the new "Learn" folder found here: http://learn.parallax.com/propeller-c

    If you are NOT using the new "Learn" folder content, you may need to replace '#include "simpletools.h"' with '#include <propeller.h>' in the sources...

    Probably will need some TLC before publishing to the new OBEX, but it basically works. Let me know if you have problems and I'll update with fixes.

    I admit, When I was modifying the code, I replaced "Nunchuck" with "Nunchuk" where I made large changes :innocent:...

    dgately
  • mindrobotsmindrobots Posts: 6,506
    edited 2013-05-08 18:36
    Jeff reminded me that the keyboard example uses a "forgotten" feature of propeller-load to provide configuration values to your program when it is linked rather than having them hardcoded in your program. You get teh complete story, you can go read my stellar "blink" tutorials on the PropGCC download site (hint, bliky2 talks about this feature)...or you can just read the snippet from the code below to get the bare facts:
    // Instead of setting up led_pin as a constant, let's make it a variable that can be configured via the 
    // propeller-load program's configuration variable feature
    // First off, comment out (or remove) the #define
    
    // #define led_pin 15                  
    
    // and replace it with an int declaration and change any place we reference it in the code below
    // each _cfg_xxx_yyy variable needs to be defined in the correct board.cfg file in the propgcc
    // propeller-load directory - see the loader manual and tutorial for additional details on this feature
    
    int _cfg_led_pin = -1;          // The value will default to -1 if not patched by the loader
                                    // By having it default to -1, you can test if it's been patched and
                                    // take appropriate action
                                    // The variable name you use is VERY important
                                    // In the .cfg file for your board, you need to add a line:
                                    //    led-pin: nn # where nn is the pin number you want to use
                                    // _cfg_led_pin in c program matches led-pin in .cfg file
                                    // The fact that this was declared as a GLOBAL variable is also very important
                                    // If the variable scope is local to your main function or any other function
                                    // the loader won't find it and patch it.
                                    // Make sure the BOARDTYPE in your project matches your hardware
    

    Hope this help make the keyboard program a bit easier to use.
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2013-05-08 19:04
    Thank you @dgately. Looking at this now.

    @rick, that's some of that good RTFM I was hoping you might point me toward. Time to read and digest. :)
    Thanks!

    Jeff
  • mindrobotsmindrobots Posts: 6,506
    edited 2013-05-08 19:20
    In the PM I sent, I forgot the little point about underscores in the C variable names needing to be changed to hyphens in the .cfg file parameter names. THAT WILL MESS YOU UP! I got it right in the comments above.

    There's a lot of little written tips and tricks scattered around in the forums. I started to keep track of a bunch but obviously, not enough. Maybe somebody will write a book some day for PropGCC.
Sign In or Register to comment.