Kaimana RGB LED Board thread, RGB animations and more! SRK Tech Talk 2013 Product of the Year!

1212224262731

Comments

  • Jasen HicksJasen Hicks JasensCustoms.com Joined: Posts: 2,383
    edited October 2016
    Sorry, I don't share my schematics and haven't shared the pinouts for anything not pertinent to the basic function of the device. The arduino software is open source, but my hardware design is not nor is any of the details of the USB switching features.

    WARNING, IF YOU ATTEMPT TO USE THE ISP HEADER TO FLASH ANYTHING TO EITHER CHIP ON THESE BOARDS YOU VOID THE WARRANTY. I DO NOT CONDONE DOING THIS, NOR WILL I HELP YOU GET IT BACK TO STOCK. YOU HAVE BEEN WARNED.

    JP2 and JP3 in the following order:

    VCC, GND, RST, MOSI, SCK, MISO

    JP3 is the Leonardo Chip **I THINK** I don't have my original design file readily available at the time of this post.
    Post edited by Jasen Hicks on
    2014 SRK Tech Talk Company of the Year Jasen's Custom Creations - Custom Joysticks, SuperGuns, Vinyl Graphics
    2014 SRK Tech Talk New Arcade Stick of the Year Panzer Fight Stick - Retired
    2015 SRK Tech Talk New Arcade Stick of the Year Panzer Fight Stick 2.0 - Hiatus
    2016 SRK Tech Talk New Arcade Stick of the Year Panzer Fight Stick 3 - Order Now!
    2016 SRK Tech Talk Member of the Year Co-Recipient

    Have a question? Use the JASENSCUSTOMS HELP DESK

    - Jasen's Customs Facebook, it's where the pictures are: Facebook
    - Follow me on Twitter to see what new things I am adding: Twitter
    - Learn something? I try to publish all of my creations and tutorials at: The TechBlog
  • 32teeth32teeth Joined: Posts: 909
    edited October 2016

    Sorry, I don't share my schematics and haven't shared the pinouts for anything not pertinent to the basic function of the device. The arduino software is open source, but my hardware design is not nor is any of the details of the USB switching features.

    WARNING, IF YOU ATTEMPT TO USE THE ISP HEADER TO FLASH ANYTHING TO EITHER CHIP ON THESE BOARDS YOU VOID THE WARRANTY. I DO NOT CONDONE DOING THIS, NOR WILL I HELP YOU GET IT BACK TO STOCK. YOU HAVE BEEN WARNED.

    VCC, GND, RST, MOSI, SCK, MISO

    @Jasen Hicks i quite realize this and am well familiar with the pins required for ICSP programming :D

    i'm particularly interested in where you break out the pins for the 32u4, not the 328p. it seems that my friend who i installed it for has somehow managed to make it NOT show up as a COM port anymore (bricked arduino by serial overload)

    this is relatively simple to fix by reloading the stock bootloader (or alternate bootloader) via programmer
    unlike the 328p which shares MOSI, MISO and SCK with other 'exposed' pins, the 32u4 does not.

    it's all on PortB of the 32u4, yet the Khameleon does not expose these
    • SCK = PB1 (9/44)
    • MOSI = PB2 (10/44)
    • MISO = PB3 (11/44)
    • RST = RESET (13/44)

    thanks in advance, i'd like to get my friend up and running again.



  • Jasen HicksJasen Hicks JasensCustoms.com Joined: Posts: 2,383
    edited October 2016
    I did tell you what the pin order was. I just forgot to mention its JP2 and JP3 on said board. I updated the post.

    As far as giving me a lesson on where they are on the chip... was that was necessary? After all, I designed the board.

    Again, to everyone reading this and getting curious:

    WARNING, IF YOU ATTEMPT TO USE THE ISP HEADER TO FLASH ANYTHING TO EITHER CHIP ON THESE BOARDS YOU VOID THE WARRANTY. I DO NOT CONDONE DOING THIS, NOR WILL I HELP YOU GET IT BACK TO STOCK. YOU HAVE BEEN WARNED.
    2014 SRK Tech Talk Company of the Year Jasen's Custom Creations - Custom Joysticks, SuperGuns, Vinyl Graphics
    2014 SRK Tech Talk New Arcade Stick of the Year Panzer Fight Stick - Retired
    2015 SRK Tech Talk New Arcade Stick of the Year Panzer Fight Stick 2.0 - Hiatus
    2016 SRK Tech Talk New Arcade Stick of the Year Panzer Fight Stick 3 - Order Now!
    2016 SRK Tech Talk Member of the Year Co-Recipient

    Have a question? Use the JASENSCUSTOMS HELP DESK

    - Jasen's Customs Facebook, it's where the pictures are: Facebook
    - Follow me on Twitter to see what new things I am adding: Twitter
    - Learn something? I try to publish all of my creations and tutorials at: The TechBlog
  • 32teeth32teeth Joined: Posts: 909
    I did tell you what the pin order was. I just forgot to mention its JP2 and JP3 on said board. I updated the post.

    As far as giving me a lesson on where they are on the chip... was that was necessary? After all, I designed the board.

    Apologies for how you implied my inference. Wasn't meant in that way, i was simply stating the pins i need.

    thank you for this
    JP2 and JP3 in the following order:

    VCC, GND, RST, MOSI, SCK, MISO

    JP2 is the Leonardo Chip.

    Now i can go and turn his 32u4 back into the PS3 Keyboard with WS2812b Cherry Switches it was intended to be ++
  • 32teeth32teeth Joined: Posts: 909
    @Jasen Hicks
    call me crazy, but to confirm, JP2 is Leonardo?

    aTGvWA8.png

    JP2 is below 328p
    JP3 is on the left below the 32u4
  • Jasen HicksJasen Hicks JasensCustoms.com Joined: Posts: 2,383
    JP3 is the Leonardo Chip **I THINK** I don't have my original design file readily available, its on my PC at home.. im on deployment.

    It should be obvious from the traces where the JP3 and JP2 run off to.

    2014 SRK Tech Talk Company of the Year Jasen's Custom Creations - Custom Joysticks, SuperGuns, Vinyl Graphics
    2014 SRK Tech Talk New Arcade Stick of the Year Panzer Fight Stick - Retired
    2015 SRK Tech Talk New Arcade Stick of the Year Panzer Fight Stick 2.0 - Hiatus
    2016 SRK Tech Talk New Arcade Stick of the Year Panzer Fight Stick 3 - Order Now!
    2016 SRK Tech Talk Member of the Year Co-Recipient

    Have a question? Use the JASENSCUSTOMS HELP DESK

    - Jasen's Customs Facebook, it's where the pictures are: Facebook
    - Follow me on Twitter to see what new things I am adding: Twitter
    - Learn something? I try to publish all of my creations and tutorials at: The TechBlog
  • 32teeth32teeth Joined: Posts: 909
    JP3 is the Leonardo Chip **I THINK** I don't have my original design file readily available, its on my PC at home.. im on deployment.

    It should be obvious from the traces where the JP3 and JP2 run off to.

    cool. thanks again. :star: :star:
    end of the day i don't think it matters as avr will barf if you try to upload bootloader to a mismatched signature :prayer:
  • 32teeth32teeth Joined: Posts: 909
    edited October 2016
    @Jasen Hicks

    Thank you again for providing the information
    VCC, GND, RST, MOSI, SCK, MISO

    I was able to upload arduino bootloader to the 32u4

    Next question
    Was the original bootloader the stock arduino bootloader (catalina?)

    Last question
    Can you share the bootloader (hex at least) for the 328? I think that guy is my problem, not the 32u4

    Thanks in advance for your help

    :kiss: 32teeth :kiss:

    /*
    
    how amazing is this signature? i might keep it
    
          .....           .....
      ,ad8PPPP88b,     ,d88PPPP8ba,
     d8P"      "Y8b, ,d8P"      "Y8b
    dP'           "8a8"           `Yd
    8(              "              )8
    I8                             8I
     Yb,        kaimana          ,dP
      "8a,                     ,a8"
        "8a,                 ,a8"
          "Yba             adP"   
            `Y8a         a8P'
              `88,     ,88'
                "8b   d8"
                 "8b d8"
                  `888'
    
    @copyright   32teeth
    @author       32teeth
    @description ...
    */
    
    Post edited by 32teeth on
  • DarksakulDarksakul Your lack of faith disturbs me Joined: Posts: 24,241
    Welcome Back Teeth
    “Strong people don't put others down... They lift them up.”
    - Darth Vader, Philanthropist
  • Jasen HicksJasen Hicks JasensCustoms.com Joined: Posts: 2,383
    @32teeth -

    If that button on the board is working to switch the LEDs between modes, then its not that chip that's causing the issue. Plus, I'm not willing to put my software out in the world. Too many bad experiences with people taking advantage of things like that. Not saying you are one, just not worth the risk.

    Jasen

    2014 SRK Tech Talk Company of the Year Jasen's Custom Creations - Custom Joysticks, SuperGuns, Vinyl Graphics
    2014 SRK Tech Talk New Arcade Stick of the Year Panzer Fight Stick - Retired
    2015 SRK Tech Talk New Arcade Stick of the Year Panzer Fight Stick 2.0 - Hiatus
    2016 SRK Tech Talk New Arcade Stick of the Year Panzer Fight Stick 3 - Order Now!
    2016 SRK Tech Talk Member of the Year Co-Recipient

    Have a question? Use the JASENSCUSTOMS HELP DESK

    - Jasen's Customs Facebook, it's where the pictures are: Facebook
    - Follow me on Twitter to see what new things I am adding: Twitter
    - Learn something? I try to publish all of my creations and tutorials at: The TechBlog
  • KunikuKuniku Joined: Posts: 351
    Just a quick Update on where my Joystick LED woes currently sit:

    Had it all working, had to take it apart to actually install the joystick, stopped working. Left it as it was to go to my local tournament, and actually turns out that the hollow shaft I ordered from PAS isn't the standard JLF length of shaft as I understood it to be, thus the spring has much more pressure on it and its so tight you can't actually do diagonal inputs... I'm not sure if I can get a shorter spring here in the UK to compensate for this, or if I can get a longer hollow shaft. But until I can fix either of those I'm going to have to put in the original LEDless joystick configuration.

    Regarding the LED setup, I originally had a terminal block strip, however the LED wires were far too fine for it to grip and apparently the electrical wholesalers near me don't stock smaller terminal blocks and weren't sure smaller existed. So suggested this single use permanent clips that "cut" into the wire (no idea what they're called and can't find them on their site). Which did the trick, but now I've installed them and its not working and I need to change the spring/shaft clearly single use isn't going to work, so will need another non-permanent solution... Has anyone got any suggestions on another kind of pass through?
  • 32teeth32teeth Joined: Posts: 909
    edited October 2016
    Darksakul wrote: »
    Welcome Back Teeth

    @Darksakul missed you to buddy
    @32teeth -

    If that button on the board is working to switch the LEDs between modes, then its not that chip that's causing the issue. Plus, I'm not willing to put my software out in the world. Too many bad experiences with people taking advantage of things like that. Not saying you are one, just not worth the risk.

    Jasen

    It would just be a compiled hex though wouldn't it?
    Kind of like sharing a static library with an api. you can't really do anything to the source, but use it as intended.

    Anyway, should you change your mind, it would be helpful and appreciated.
    If not, can you at least provide the pinouts. probably something trivial in v-usb passthrough

    here's the deal
    • i like the product :love:
    • i've learnt to enjoy it :giggle:
    • the 32u4 is a fun chipset to play with :plus_one:
    • im looking to contribute but need your insight :glasses:
    • i totally know what you mean about people who steal designs, ideas, code, so crazy :amazed:
    • my github is 32teeth should you wish to add me as a contributor. :whistle:

    again, thanks in advance


    /*
     * @description duck test - https://en.wikipedia.org/wiki/Duck_test
     */
    
    /*
     * @property arduino {bool}
     */
    bool arduino = false;
    
    /*
     * @property look {struct}
     */
    typedef struct {
       bool looks;
       bool swims;
       bool quacks
    } DUCK;
    
    /*
     * @assign
     */
    DUCK duck = {true, true, true};
    
    /*
     * @assert
     */
    if(duck.looks && duck.swims && duck.quacks)
    {
       arduino = true;
       
       Serial.println("                             +-----+");
       Serial.println("+----[PWR]-------------------| USB |--+");
       Serial.println("|                            +-----+  |");
       Serial.println("|         GND/RST2  [ ][ ]            |");
       Serial.println("|       MOSI2/SCK2  [ ][ ]  A5/SCL[ ] |");
       Serial.println("|          5V/MISO2 [ ][ ]  A4/SDA[ ] |");
       Serial.println("|                             AREF[ ] |");
       Serial.println("|                              GND[ ] |");
       Serial.println("| [ ]N/C                    SCK/13[ ] |");
       Serial.println("| [ ]IOREF                 MISO/12[ ] |");
       Serial.println("| [ ]RST                   MOSI/11[ ]~|");
       Serial.println("| [ ]3V3    +---+               10[ ]~|");
       Serial.println("| [ ]5v    -| A |-               9[ ]~|");
       Serial.println("| [ ]GND   -| R |-               8[ ] |");
       Serial.println("| [ ]GND   -| D |-                    |");
       Serial.println("| [ ]Vin   -| U |-               7[ ] |");
       Serial.println("|          -| I |-               6[ ]~|");
       Serial.println("| [ ]A0    -| N |-               5[ ]~|");
       Serial.println("| [ ]A1    -| O |-               4[ ] |");
       Serial.println("| [ ]A2     +---+           INT1/3[ ]~|");
       Serial.println("| [ ]A3                     INT0/2[ ] |");
       Serial.println("| [ ]A4/SDA  RST SCK MISO     TX>1[ ] |");
       Serial.println("| [ ]A5/SCL  [ ] [ ] [ ]      RX<0[ ] |");
       Serial.println("|            [ ] [ ] [ ]              |");
       Serial.println("|  UNO_R3    GND MOSI 5V  ____________/");
       Serial.println("\_______________________/");
    }
    
    Post edited by 32teeth on
  • armi0024armi0024 Dash Cancel Expert, paradisearcadeshop.com Joined: Posts: 1,826
    Kuniku wrote: »
    Just a quick Update on where my Joystick LED woes currently sit:

    Had it all working, had to take it apart to actually install the joystick, stopped working. Left it as it was to go to my local tournament, and actually turns out that the hollow shaft I ordered from PAS isn't the standard JLF length of shaft as I understood it to be, thus the spring has much more pressure on it and its so tight you can't actually do diagonal inputs... I'm not sure if I can get a shorter spring here in the UK to compensate for this, or if I can get a longer hollow shaft. But until I can fix either of those I'm going to have to put in the original LEDless joystick configuration.

    Regarding the LED setup, I originally had a terminal block strip, however the LED wires were far too fine for it to grip and apparently the electrical wholesalers near me don't stock smaller terminal blocks and weren't sure smaller existed. So suggested this single use permanent clips that "cut" into the wire (no idea what they're called and can't find them on their site). Which did the trick, but now I've installed them and its not working and I need to change the spring/shaft clearly single use isn't going to work, so will need another non-permanent solution... Has anyone got any suggestions on another kind of pass through?

    Kiniku, that doesn't make a lot of sense on the shaft, like you may have received the wrong one, can you email a picture of the new shaft and the original JLF shaft next to each other to support@paradisearcadeshop.com so we can help resolve that.

    It sound like you used scotchlocks? if you can post pics of your set up here or to support, @JRDIBBS and the rest of the PAS crew can help.
    www.paradisearcadeshop.com Sanwa, Seimitsu and a ton of custom parts
    2015 Tech Talk Store of the Year and Product of the Year, OBS-MX buttons
    2014 Tech Talk Stick Mod of the Year, LVT3 TE2
    2013 Tech Talk Store of the Year and Product of the Year, Kaimana Led Controller
  • 32teeth32teeth Joined: Posts: 909
    @Jasen Hicks

    Thanks for all the help :plus_one: for you

    Our success from last night

    The Kaimana Pendulum



  • JRDIBBSJRDIBBS Neighborhood Modder Joined: Posts: 474
    armi0024 wrote: »
    Kuniku wrote: »
    Just a quick Update on where my Joystick LED woes currently sit:

    Had it all working, had to take it apart to actually install the joystick, stopped working. Left it as it was to go to my local tournament, and actually turns out that the hollow shaft I ordered from PAS isn't the standard JLF length of shaft as I understood it to be, thus the spring has much more pressure on it and its so tight you can't actually do diagonal inputs... I'm not sure if I can get a shorter spring here in the UK to compensate for this, or if I can get a longer hollow shaft. But until I can fix either of those I'm going to have to put in the original LEDless joystick configuration.

    Regarding the LED setup, I originally had a terminal block strip, however the LED wires were far too fine for it to grip and apparently the electrical wholesalers near me don't stock smaller terminal blocks and weren't sure smaller existed. So suggested this single use permanent clips that "cut" into the wire (no idea what they're called and can't find them on their site). Which did the trick, but now I've installed them and its not working and I need to change the spring/shaft clearly single use isn't going to work, so will need another non-permanent solution... Has anyone got any suggestions on another kind of pass through?

    Kiniku, that doesn't make a lot of sense on the shaft, like you may have received the wrong one, can you email a picture of the new shaft and the original JLF shaft next to each other to support@paradisearcadeshop.com so we can help resolve that.

    It sound like you used scotchlocks? if you can post pics of your set up here or to support, @JRDIBBS and the rest of the PAS crew can help.

    If I remember correctly the wires in the default RGB LED are a bit thinner than usual, another solution is to solder 22awg wire into the LED and then take advantage of the thicket gauge to connect to the terminal i think its barely enough to allow clearance through the joystick shaft. Another practical question is, re you REAAALLY going to remove your joystick that often? You can dissassemble the stick with the led threaded through even though its more work.
    I mod so you can play!
    Joysticks, buttons and PCBs, all at paradisearcade.com!
    The Man @ MightyJRMods- PM me for fixes and mods in the USA www.mightyjrmods.com
    Kaimana Guru, check out my GitHub for layouts, animations and more!
    Member of the Church of Dremel and the Cult of Hot Glue.
    No mod is finished until you wrangle that wiring!
  • KunikuKuniku Joined: Posts: 351
    armi0024 wrote: »
    Kuniku, that doesn't make a lot of sense on the shaft, like you may have received the wrong one, can you email a picture of the new shaft and the original JLF shaft next to each other to support@paradisearcadeshop.com so we can help resolve that.

    It sound like you used scotchlocks? if you can post pics of your set up here or to support, @JRDIBBS and the rest of the PAS crew can help.

    I'll try and dismantle everything after work tonight and get pics posted. I've not checked the shafts against each other, but its the only reason I can think of for the sudden huge difference in stiffness in the joystick...

    I googled Scotchlocks, they look somewhat similar, but not quite, shall get some pics of those too!
    JRDIBBS wrote: »
    If I remember correctly the wires in the default RGB LED are a bit thinner than usual, another solution is to solder 22awg wire into the LED and then take advantage of the thicket gauge to connect to the terminal i think its barely enough to allow clearance through the joystick shaft. Another practical question is, re you REAAALLY going to remove your joystick that often? You can dissassemble the stick with the led threaded through even though its more work.

    Once I get the spring/shaft/actuator etc sorted I doubt I'll need to remove the joystick etc. But the problem while I've not got that sorted the next time I want to remove it all to fix it, I need to cut the wires out, if I do that too many more times I'll not have long enough wires ;op

    The LED Wires are crazy thin!
  • JRDIBBSJRDIBBS Neighborhood Modder Joined: Posts: 474
    Kuniku wrote: »

    The LED Wires are crazy thin!

    I was also thinking you could use screw in terminals like the ones that go into PCBs/breadboards. You could hot-glue them to the inside of the stick so its not floating around.
    I mod so you can play!
    Joysticks, buttons and PCBs, all at paradisearcade.com!
    The Man @ MightyJRMods- PM me for fixes and mods in the USA www.mightyjrmods.com
    Kaimana Guru, check out my GitHub for layouts, animations and more!
    Member of the Church of Dremel and the Cult of Hot Glue.
    No mod is finished until you wrangle that wiring!
  • El_HarryEl_Harry Joined: Posts: 13
    Hi, last time I posted the list of stuff I needed to put LEDs on my arcade stick. I've been kinda busy but with the help of a couple friends we tackled the project and now, almost done, we are stuck.

    When I try to upload the stuff (code I suppose) from the Arduino 1.6.5 to the board it fails.
    The error is "avrdude: butterfly_recv(): programmer is not responding"

    From the very beginning we've followed every step from Fundando's youtube channel tutorials and worked like a charm, all the LEDs works, they light up (stick and 8 buttons) and even do the "rainbow" idle "animation". But we can't configure them because of the error already mentioned.

    All the stuff I used:
    Hori Real Arcade Pro EX
    PS360+ board
    sanwa buttons
    seimitsu LS-32 stick
    Paradise Kaimana Mini LED Driver + 8 button kit
    Neutrik NE8FDP RJ45 Panel Mount etherCon Connector
    Rj45 to USB cable

    If I'm missing something just let me know. We are pretty frustrated right now, we'd love some help and thanks in andvance :D
  • JRDIBBSJRDIBBS Neighborhood Modder Joined: Posts: 474
    El_Harry wrote: »
    Hi, last time I posted the list of stuff I needed to put LEDs on my arcade stick. I've been kinda busy but with the help of a couple friends we tackled the project and now, almost done, we are stuck.

    When I try to upload the stuff (code I suppose) from the Arduino 1.6.5 to the board it fails.
    The error is "avrdude: butterfly_recv(): programmer is not responding"

    First download the latest Arduino IDE (1.6.12 as of this comment) Here with the Kaimana unplugged.

    Try uploading the base code and report results.
    I mod so you can play!
    Joysticks, buttons and PCBs, all at paradisearcade.com!
    The Man @ MightyJRMods- PM me for fixes and mods in the USA www.mightyjrmods.com
    Kaimana Guru, check out my GitHub for layouts, animations and more!
    Member of the Church of Dremel and the Cult of Hot Glue.
    No mod is finished until you wrangle that wiring!
  • El_HarryEl_Harry Joined: Posts: 13
    JRDIBBS wrote: »
    El_Harry wrote: »
    Hi, last time I posted the list of stuff I needed to put LEDs on my arcade stick. I've been kinda busy but with the help of a couple friends we tackled the project and now, almost done, we are stuck.

    When I try to upload the stuff (code I suppose) from the Arduino 1.6.5 to the board it fails.
    The error is "avrdude: butterfly_recv(): programmer is not responding"

    First download the latest Arduino IDE (1.6.12 as of this comment) Here with the Kaimana unplugged.

    Try uploading the base code and report results.


    I tried with the version you said and still failed but with this error:

    "Arduino:1.6.12 (Windows 10), Tarjeta:"Arduino Leonardo"

    kaimana.h:152: error: 'prog_uint8_t' does not name a type

    const prog_uint8_t sinusoid[257] PROGMEM = {

    ^

    kaimana.h:176: error: 'prog_uint8_t' does not name a type

    const prog_uint8_t colorCycleData[] PROGMEM = {

    ^
    exit status 1
    'prog_uint8_t' does not name a type

    I tried without the board plugged and it failed at verifying and I even plugged it in and tried to upload it and the same error appears.

    Thanks for the quick response :D
  • JRDIBBSJRDIBBS Neighborhood Modder Joined: Posts: 474
    El_Harry wrote: »
    JRDIBBS wrote: »
    El_Harry wrote: »
    Hi, last time I posted the list of stuff I needed to put LEDs on my arcade stick. I've been kinda busy but with the help of a couple friends we tackled the project and now, almost done, we are stuck.

    When I try to upload the stuff (code I suppose) from the Arduino 1.6.5 to the board it fails.
    The error is "avrdude: butterfly_recv(): programmer is not responding"

    First download the latest Arduino IDE (1.6.12 as of this comment) Here with the Kaimana unplugged.

    Try uploading the base code and report results.


    I tried with the version you said and still failed but with this error:

    "Arduino:1.6.12 (Windows 10), Tarjeta:"Arduino Leonardo"

    kaimana.h:152: error: 'prog_uint8_t' does not name a type

    const prog_uint8_t sinusoid[257] PROGMEM = {

    ^

    kaimana.h:176: error: 'prog_uint8_t' does not name a type

    const prog_uint8_t colorCycleData[] PROGMEM = {

    ^
    exit status 1
    'prog_uint8_t' does not name a type

    I tried without the board plugged and it failed at verifying and I even plugged it in and tried to upload it and the same error appears.

    Thanks for the quick response :D

    Awesome! Now I fixed this on my fork of the code let me get home and I'll give you the correct declaration. @armi0024 we need to bring this update to the main branch.
    I mod so you can play!
    Joysticks, buttons and PCBs, all at paradisearcade.com!
    The Man @ MightyJRMods- PM me for fixes and mods in the USA www.mightyjrmods.com
    Kaimana Guru, check out my GitHub for layouts, animations and more!
    Member of the Church of Dremel and the Cult of Hot Glue.
    No mod is finished until you wrangle that wiring!
  • El_HarryEl_Harry Joined: Posts: 13
    JRDIBBS wrote: »
    El_Harry wrote: »
    JRDIBBS wrote: »
    El_Harry wrote: »
    Hi, last time I posted the list of stuff I needed to put LEDs on my arcade stick. I've been kinda busy but with the help of a couple friends we tackled the project and now, almost done, we are stuck.

    When I try to upload the stuff (code I suppose) from the Arduino 1.6.5 to the board it fails.
    The error is "avrdude: butterfly_recv(): programmer is not responding"

    First download the latest Arduino IDE (1.6.12 as of this comment) Here with the Kaimana unplugged.

    Try uploading the base code and report results.


    I tried with the version you said and still failed but with this error:

    "Arduino:1.6.12 (Windows 10), Tarjeta:"Arduino Leonardo"

    kaimana.h:152: error: 'prog_uint8_t' does not name a type

    const prog_uint8_t sinusoid[257] PROGMEM = {

    ^

    kaimana.h:176: error: 'prog_uint8_t' does not name a type

    const prog_uint8_t colorCycleData[] PROGMEM = {

    ^
    exit status 1
    'prog_uint8_t' does not name a type

    I tried without the board plugged and it failed at verifying and I even plugged it in and tried to upload it and the same error appears.

    Thanks for the quick response :D

    Awesome! Now I fixed this on my fork of the code let me get home and I'll give you the correct declaration. @armi0024 we need to bring this update to the main branch.

    Ok so we did nothing wrong, right? I mean, we just need to download the fixed one and should work, right? We're really pumped up right now, knowing that we kinda worked thru this and we're almost there :D
  • JRDIBBSJRDIBBS Neighborhood Modder Joined: Posts: 474
    El_Harry wrote: »
    JRDIBBS wrote: »
    El_Harry wrote: »
    JRDIBBS wrote: »
    El_Harry wrote: »
    Hi, last time I posted the list of stuff I needed to put LEDs on my arcade stick. I've been kinda busy but with the help of a couple friends we tackled the project and now, almost done, we are stuck.

    When I try to upload the stuff (code I suppose) from the Arduino 1.6.5 to the board it fails.
    The error is "avrdude: butterfly_recv(): programmer is not responding"

    First download the latest Arduino IDE (1.6.12 as of this comment) Here with the Kaimana unplugged.

    Try uploading the base code and report results.


    I tried with the version you said and still failed but with this error:

    "Arduino:1.6.12 (Windows 10), Tarjeta:"Arduino Leonardo"

    kaimana.h:152: error: 'prog_uint8_t' does not name a type

    const prog_uint8_t sinusoid[257] PROGMEM = {

    ^

    kaimana.h:176: error: 'prog_uint8_t' does not name a type

    const prog_uint8_t colorCycleData[] PROGMEM = {

    ^
    exit status 1
    'prog_uint8_t' does not name a type

    I tried without the board plugged and it failed at verifying and I even plugged it in and tried to upload it and the same error appears.

    Thanks for the quick response :D

    Awesome! Now I fixed this on my fork of the code let me get home and I'll give you the correct declaration. @armi0024 we need to bring this update to the main branch.

    Ok so we did nothing wrong, right? I mean, we just need to download the fixed one and should work, right? We're really pumped up right now, knowing that we kinda worked thru this and we're almost there :D

    Nope you're not doing anything wrong. This is becuase the datatype is deprecated in the newer Arduino builds. In the Kaimana_custom.h file change both prog_uint8_t to uint8_t, they are at the bottom of the file.
    I mod so you can play!
    Joysticks, buttons and PCBs, all at paradisearcade.com!
    The Man @ MightyJRMods- PM me for fixes and mods in the USA www.mightyjrmods.com
    Kaimana Guru, check out my GitHub for layouts, animations and more!
    Member of the Church of Dremel and the Cult of Hot Glue.
    No mod is finished until you wrangle that wiring!
  • El_HarryEl_Harry Joined: Posts: 13
    JRDIBBS wrote: »
    El_Harry wrote: »
    JRDIBBS wrote: »
    El_Harry wrote: »
    JRDIBBS wrote: »
    El_Harry wrote: »
    Hi, last time I posted the list of stuff I needed to put LEDs on my arcade stick. I've been kinda busy but with the help of a couple friends we tackled the project and now, almost done, we are stuck.

    When I try to upload the stuff (code I suppose) from the Arduino 1.6.5 to the board it fails.
    The error is "avrdude: butterfly_recv(): programmer is not responding"

    First download the latest Arduino IDE (1.6.12 as of this comment) Here with the Kaimana unplugged.

    Try uploading the base code and report results.


    I tried with the version you said and still failed but with this error:

    "Arduino:1.6.12 (Windows 10), Tarjeta:"Arduino Leonardo"

    kaimana.h:152: error: 'prog_uint8_t' does not name a type

    const prog_uint8_t sinusoid[257] PROGMEM = {

    ^

    kaimana.h:176: error: 'prog_uint8_t' does not name a type

    const prog_uint8_t colorCycleData[] PROGMEM = {

    ^
    exit status 1
    'prog_uint8_t' does not name a type

    I tried without the board plugged and it failed at verifying and I even plugged it in and tried to upload it and the same error appears.

    Thanks for the quick response :D

    Awesome! Now I fixed this on my fork of the code let me get home and I'll give you the correct declaration. @armi0024 we need to bring this update to the main branch.

    Ok so we did nothing wrong, right? I mean, we just need to download the fixed one and should work, right? We're really pumped up right now, knowing that we kinda worked thru this and we're almost there :D

    Nope you're not doing anything wrong. This is becuase the datatype is deprecated in the newer Arduino builds. In the Kaimana_custom.h file change both prog_uint8_t to uint8_t, they are at the bottom of the file.

    It still fails at uploading to the board, the verifying works perfectly but this error shows up when we try to upload to the board:

    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    Found programmer: Id = "S"; type = p
    Software Version = V .Hardware Version = v.M
    avrdude: error: buffered memory access not supported. Maybe it isn't
    a butterfly/AVR109 but a AVR910 device?
    avrdude: initialization failed, rc=-1
    Double check connections and try again, or use -F to override
    this check.

    avrdude: error: programmer did not respond to command: leave prog mode
    avrdude: error: programmer did not respond to command: exit bootloader
    avrdude: error: programmer did not respond to command: exit bootloader



  • 32teeth32teeth Joined: Posts: 909
    @El_Harry
    A few questions in order to better assist you

    1. Mac or PC?
    2. Arduino version? 1.0.x, 1.6.x?
    3. Kaimana mini or Khameleon?

    If you are on Khameleon do make sure you've entered into Arduino mode by either:
    1. Press onboard tact switch and look at indicator led
    2. Press home + low kick (does the same as 1)

    In the Arduino IDE can you select board and port to match the Kaimana

    1. COM + # on PC, tty on Mac
    2. Board can be Micro, Leonardo or Feather

    If you live to hate the Arduino IDE and use Sublime or Atom, both have Arduino packages available

    I prefer the Sublime version as it allows you to compile and upload right from the text editor

    You can also change all your compiling settings and do not need to conform to Arduino IDE

    Happy programming
  • JRDIBBSJRDIBBS Neighborhood Modder Joined: Posts: 474
    El_Harry wrote: »
    JRDIBBS wrote: »
    El_Harry wrote: »
    JRDIBBS wrote: »
    El_Harry wrote: »
    JRDIBBS wrote: »
    El_Harry wrote: »
    Hi, last time I posted the list of stuff I needed to put LEDs on my arcade stick. I've been kinda busy but with the help of a couple friends we tackled the project and now, almost done, we are stuck.

    When I try to upload the stuff (code I suppose) from the Arduino 1.6.5 to the board it fails.
    The error is "avrdude: butterfly_recv(): programmer is not responding"

    First download the latest Arduino IDE (1.6.12 as of this comment) Here with the Kaimana unplugged.

    Try uploading the base code and report results.


    I tried with the version you said and still failed but with this error:

    "Arduino:1.6.12 (Windows 10), Tarjeta:"Arduino Leonardo"

    kaimana.h:152: error: 'prog_uint8_t' does not name a type

    const prog_uint8_t sinusoid[257] PROGMEM = {

    ^

    kaimana.h:176: error: 'prog_uint8_t' does not name a type

    const prog_uint8_t colorCycleData[] PROGMEM = {

    ^
    exit status 1
    'prog_uint8_t' does not name a type

    I tried without the board plugged and it failed at verifying and I even plugged it in and tried to upload it and the same error appears.

    Thanks for the quick response :D

    Awesome! Now I fixed this on my fork of the code let me get home and I'll give you the correct declaration. @armi0024 we need to bring this update to the main branch.

    Ok so we did nothing wrong, right? I mean, we just need to download the fixed one and should work, right? We're really pumped up right now, knowing that we kinda worked thru this and we're almost there :D

    Nope you're not doing anything wrong. This is becuase the datatype is deprecated in the newer Arduino builds. In the Kaimana_custom.h file change both prog_uint8_t to uint8_t, they are at the bottom of the file.

    It still fails at uploading to the board, the verifying works perfectly but this error shows up when we try to upload to the board:

    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    Found programmer: Id = "S"; type = p
    Software Version = V .Hardware Version = v.M
    avrdude: error: buffered memory access not supported. Maybe it isn't
    a butterfly/AVR109 but a AVR910 device?
    avrdude: initialization failed, rc=-1
    Double check connections and try again, or use -F to override
    this check.

    avrdude: error: programmer did not respond to command: leave prog mode
    avrdude: error: programmer did not respond to command: exit bootloader
    avrdude: error: programmer did not respond to command: exit bootloader



    One interesting solution I found browsing the forums below. Try this and report back, also try another computer, the boards are sometimes very finicky about where it's connected.
    Hello all!!
    I had the same problem with my Arduino Leonardo and my Windows 7. After trying many things, I found a solution.
    First: you must find the COMx used for your "Arduino Leonardo" in the "Device Manager" of Windows.
    Second: make double click to see the properties of the device, and go to the "Port configuration tab"
    Third: enter in "Avanced Options" and deactivate "Use FIFO buffers", and accept all changes.

    That is it, now you can program your Arduino Leonardo without the error ..."buffered memory access not supported"

    I hope this will be useful!!!! :) :) .
    I mod so you can play!
    Joysticks, buttons and PCBs, all at paradisearcade.com!
    The Man @ MightyJRMods- PM me for fixes and mods in the USA www.mightyjrmods.com
    Kaimana Guru, check out my GitHub for layouts, animations and more!
    Member of the Church of Dremel and the Cult of Hot Glue.
    No mod is finished until you wrangle that wiring!
  • El_HarryEl_Harry Joined: Posts: 13
    32teeth wrote: »
    @El_Harry
    A few questions in order to better assist you

    1. Mac or PC?
    2. Arduino version? 1.0.x, 1.6.x?
    3. Kaimana mini or Khameleon?

    If you are on Khameleon do make sure you've entered into Arduino mode by either:
    1. Press onboard tact switch and look at indicator led
    2. Press home + low kick (does the same as 1)

    In the Arduino IDE can you select board and port to match the Kaimana

    1. COM + # on PC, tty on Mac
    2. Board can be Micro, Leonardo or Feather

    If you live to hate the Arduino IDE and use Sublime or Atom, both have Arduino packages available

    I prefer the Sublime version as it allows you to compile and upload right from the text editor

    You can also change all your compiling settings and do not need to conform to Arduino IDE

    Happy programming

    1. PC
    2. Arduino version 1.6.12
    3. Kaimana mini

    In the Arduino IDE I can select only COM3 as port and I can select Arduino Leonardo board (between many more)
    Of course I selected Arduino Leonardo board and COM3 port

    I think I could try to use Sublime or Atom, never heard of them (sorry, first time doing stuff like this)

    Thanks :D
    JRDIBBS wrote: »
    El_Harry wrote: »
    JRDIBBS wrote: »
    El_Harry wrote: »
    JRDIBBS wrote: »
    El_Harry wrote: »
    JRDIBBS wrote: »
    El_Harry wrote: »
    Hi, last time I posted the list of stuff I needed to put LEDs on my arcade stick. I've been kinda busy but with the help of a couple friends we tackled the project and now, almost done, we are stuck.

    When I try to upload the stuff (code I suppose) from the Arduino 1.6.5 to the board it fails.
    The error is "avrdude: butterfly_recv(): programmer is not responding"

    First download the latest Arduino IDE (1.6.12 as of this comment) Here with the Kaimana unplugged.

    Try uploading the base code and report results.


    I tried with the version you said and still failed but with this error:

    "Arduino:1.6.12 (Windows 10), Tarjeta:"Arduino Leonardo"

    kaimana.h:152: error: 'prog_uint8_t' does not name a type

    const prog_uint8_t sinusoid[257] PROGMEM = {

    ^

    kaimana.h:176: error: 'prog_uint8_t' does not name a type

    const prog_uint8_t colorCycleData[] PROGMEM = {

    ^
    exit status 1
    'prog_uint8_t' does not name a type

    I tried without the board plugged and it failed at verifying and I even plugged it in and tried to upload it and the same error appears.

    Thanks for the quick response :D

    Awesome! Now I fixed this on my fork of the code let me get home and I'll give you the correct declaration. @armi0024 we need to bring this update to the main branch.

    Ok so we did nothing wrong, right? I mean, we just need to download the fixed one and should work, right? We're really pumped up right now, knowing that we kinda worked thru this and we're almost there :D

    Nope you're not doing anything wrong. This is becuase the datatype is deprecated in the newer Arduino builds. In the Kaimana_custom.h file change both prog_uint8_t to uint8_t, they are at the bottom of the file.

    It still fails at uploading to the board, the verifying works perfectly but this error shows up when we try to upload to the board:

    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    Found programmer: Id = "S"; type = p
    Software Version = V .Hardware Version = v.M
    avrdude: error: buffered memory access not supported. Maybe it isn't
    a butterfly/AVR109 but a AVR910 device?
    avrdude: initialization failed, rc=-1
    Double check connections and try again, or use -F to override
    this check.

    avrdude: error: programmer did not respond to command: leave prog mode
    avrdude: error: programmer did not respond to command: exit bootloader
    avrdude: error: programmer did not respond to command: exit bootloader



    One interesting solution I found browsing the forums below. Try this and report back, also try another computer, the boards are sometimes very finicky about where it's connected.
    Hello all!!
    I had the same problem with my Arduino Leonardo and my Windows 7. After trying many things, I found a solution.
    First: you must find the COMx used for your "Arduino Leonardo" in the "Device Manager" of Windows.
    Second: make double click to see the properties of the device, and go to the "Port configuration tab"
    Third: enter in "Avanced Options" and deactivate "Use FIFO buffers", and accept all changes.

    That is it, now you can program your Arduino Leonardo without the error ..."buffered memory access not supported"

    I hope this will be useful!!!! :) :) .

    I'm about to test it right now, hopefully it'll fix my issue.
    I'll post asap the results

    Thanks again :D
  • El_HarryEl_Harry Joined: Posts: 13
    Ok, now it works but it's because my friends and I are just simply retarded. Let me explain myself.
    We did follow every step of the tutorial BUT we misunderstood (because we are pretty dumb) the part where the kaimana board must be plugged to the PC by the microUSB cable. We just plugged the USB of the actual arcade stick to the PC and maybe, just maybe that's why it failed everytime we tried to upload to the kaimana board.
    I've been rewatching all the videos, step by step and I found the mistake we were making, tried it with the kaimana board plugged to the PC by the microUSB and worked perfectly.

    I'm really sorry to bothered you with our problems because we just missed that bit of the tutorial (it's an annotation on the youtube video tutorial). We're really dumb.
    Thanks and sorry again, really :i_dunno:
  • JRDIBBSJRDIBBS Neighborhood Modder Joined: Posts: 474
    El_Harry wrote: »
    Ok, now it works but it's because my friends and I are just simply retarded. Let me explain myself.
    We did follow every step of the tutorial BUT we misunderstood (because we are pretty dumb) the part where the kaimana board must be plugged to the PC by the microUSB cable. We just plugged the USB of the actual arcade stick to the PC and maybe, just maybe that's why it failed everytime we tried to upload to the kaimana board.
    I've been rewatching all the videos, step by step and I found the mistake we were making, tried it with the kaimana board plugged to the PC by the microUSB and worked perfectly.

    I'm really sorry to bothered you with our problems because we just missed that bit of the tutorial (it's an annotation on the youtube video tutorial). We're really dumb.
    Thanks and sorry again, really :i_dunno:

    Lmao! no worries I should have asked that first and will be next time anyone comes with an issue. Feel free to continue posting here or pm me if you have questions!

    We are working on revamping the support site so any questions you ask will help us build it.
    I mod so you can play!
    Joysticks, buttons and PCBs, all at paradisearcade.com!
    The Man @ MightyJRMods- PM me for fixes and mods in the USA www.mightyjrmods.com
    Kaimana Guru, check out my GitHub for layouts, animations and more!
    Member of the Church of Dremel and the Cult of Hot Glue.
    No mod is finished until you wrangle that wiring!
  • El_HarryEl_Harry Joined: Posts: 13
    JRDIBBS wrote: »
    El_Harry wrote: »
    Ok, now it works but it's because my friends and I are just simply retarded. Let me explain myself.
    We did follow every step of the tutorial BUT we misunderstood (because we are pretty dumb) the part where the kaimana board must be plugged to the PC by the microUSB cable. We just plugged the USB of the actual arcade stick to the PC and maybe, just maybe that's why it failed everytime we tried to upload to the kaimana board.
    I've been rewatching all the videos, step by step and I found the mistake we were making, tried it with the kaimana board plugged to the PC by the microUSB and worked perfectly.

    I'm really sorry to bothered you with our problems because we just missed that bit of the tutorial (it's an annotation on the youtube video tutorial). We're really dumb.
    Thanks and sorry again, really :i_dunno:

    Lmao! no worries I should have asked that first and will be next time anyone comes with an issue. Feel free to continue posting here or pm me if you have questions!

    We are working on revamping the support site so any questions you ask will help us build it.

    Thanks man, we really feel retarded :D
  • KunikuKuniku Joined: Posts: 351
    Quick update:

    Turns out I did a fail, and the reason the stick wasn't working was in fact because I'd manage to put the "collar" that goes on before the sping and actuator on the wrong way round and not because of an incorrect hollow shaft length (which was the initial jumped to conclusion!)

    I've found a shop nearby that sells a slightly smaller terminal barrier strip, so going to try that tonight or tomorrow and see if it'll hold the tiny wires, if not I might have to resort to PCB tech, but haven't yet found any PCB "pass through" terminals - and really trying to avoid soldering as I'm trying to keep it all easily take apartable (yes thats definitely a word *nods*)

    But fingers crossed the slightly smaller terminal barrier strip works.
  • JRDIBBSJRDIBBS Neighborhood Modder Joined: Posts: 474
    edited October 2016
    Kuniku wrote: »
    Quick update:

    Turns out I did a fail, and the reason the stick wasn't working was in fact because I'd manage to put the "collar" that goes on before the sping and actuator on the wrong way round and not because of an incorrect hollow shaft length (which was the initial jumped to conclusion!)

    I've found a shop nearby that sells a slightly smaller terminal barrier strip, so going to try that tonight or tomorrow and see if it'll hold the tiny wires, if not I might have to resort to PCB tech, but haven't yet found any PCB "pass through" terminals - and really trying to avoid soldering as I'm trying to keep it all easily take apartable (yes thats definitely a word *nods*)

    But fingers crossed the slightly smaller terminal barrier strip works.

    I see, glad to know it wasn't a part issue! Don't look specifically for pass through terminals. Look for smaller screw in terminals and just screw same wires to the same terminal.
    I mod so you can play!
    Joysticks, buttons and PCBs, all at paradisearcade.com!
    The Man @ MightyJRMods- PM me for fixes and mods in the USA www.mightyjrmods.com
    Kaimana Guru, check out my GitHub for layouts, animations and more!
    Member of the Church of Dremel and the Cult of Hot Glue.
    No mod is finished until you wrangle that wiring!
  • KunikuKuniku Joined: Posts: 351
    JRDIBBS wrote: »
    I see, glad to know it wasn't a part issue! Don't look specifically for pass through terminals. Look for smaller screw in terminals and just screw same wires to the same terminal.


    Oh so strip both wires, and stick them both into the same hole?
  • JRDIBBSJRDIBBS Neighborhood Modder Joined: Posts: 474
    Kuniku wrote: »
    JRDIBBS wrote: »
    I see, glad to know it wasn't a part issue! Don't look specifically for pass through terminals. Look for smaller screw in terminals and just screw same wires to the same terminal.


    Oh so strip both wires, and stick them both into the same hole?

    Exactly. Makes a sound connection and also helps thicken up the wiring at the terminal for a better grip.
    I mod so you can play!
    Joysticks, buttons and PCBs, all at paradisearcade.com!
    The Man @ MightyJRMods- PM me for fixes and mods in the USA www.mightyjrmods.com
    Kaimana Guru, check out my GitHub for layouts, animations and more!
    Member of the Church of Dremel and the Cult of Hot Glue.
    No mod is finished until you wrangle that wiring!
  • ErehkErehk Joined: Posts: 6
    I'd given up on figuring all this out a while ago, browsing through this entire thread again, it still seems no one has answered the questions I had, closest thing being people saying "I've figured it out", and "I pmed you how". Why isn't that information shared to the public?

    I'm trying to figure out fading when the button is released, and tournament mode. I've found numerous youtube videos and people showing it off, but no explanations of how they did it, or example code. Even a dump of whatever code they're using would have been handy.

    I've been looking through arduino tutorials, but it seems like theres limited info on indexed led's, almost all the tutorials assume one led directly connected to an output pin.

    I've got a simple 8-button layout running just the default code. I'd thoroughly appreciate help with this, and would appreciate even more if the wiki ever came back up. It's like 20 pages of the same 4 questions in this thread because there's no way to effectively search the info.
  • JRDIBBSJRDIBBS Neighborhood Modder Joined: Posts: 474
    @Erehk I missed your original comments from June and my work with PAS is fairly recent, I'll be glad to help!

    A few comments here:

    I'd given up on figuring all this out a while ago, browsing through this entire thread again, it still seems no one has answered the questions I had, closest thing being people saying "I've figured it out", and "I pmed you how". Why isn't that information shared to the public?
    * All of this thread is being compiled in order to revamp the support site support.paradisearcade.com In order to have a more central info hub.
    * Some people work very hard to get their code to work and it's their perogative whether to share it or not.*


    I'm trying to figure out fading when the button is released, and tournament mode. I've found numerous youtube videos and people showing it off, but no explanations of how they did it, or example code. Even a dump of whatever code they're using would have been handy.

    Point 2 of the above applies here, but I put all my code In my GitHub. You'll have to browse it a bit but it's still a work in progress. whats the full animation flow here?

    I've been looking through arduino tutorials, but it seems like theres limited info on indexed led's, almost all the tutorials assume one led directly connected to an output pin.

    Yeah you are looking for the right info, indexed LED's are what we use but what are you looking for specifically?

    I've got a simple 8-button layout running just the default code. I'd thoroughly appreciate help with this, and would appreciate even more if the wiki ever came back up. It's like 20 pages of the same 4 questions in this thread because there's no way to effectively search the info.

    Back to the question one answer, we know its a pain to get through the pages while looking for info but soon we will have the support page updated!

    I mod so you can play!
    Joysticks, buttons and PCBs, all at paradisearcade.com!
    The Man @ MightyJRMods- PM me for fixes and mods in the USA www.mightyjrmods.com
    Kaimana Guru, check out my GitHub for layouts, animations and more!
    Member of the Church of Dremel and the Cult of Hot Glue.
    No mod is finished until you wrangle that wiring!
  • ErehkErehk Joined: Posts: 6
    @JRDIBBS
    My apologies for that coming across the way it did. I was just a bit frustrated given the amount of time I had put into it with no success, and now that I read it again it's a bit rash.

    I appreciate that people may not want to share what they've worked on, I was really just surprised at the lack of information surrounding the code as a whole. I realize now it's quite a niche area being used for a very specific purpose and so there is said lack of information.

    I will browse what you've done, and if I get it all figured out I'll make a tutorial for those in my position. Thanks for the hard work, and sorry again for my earlier frustrations.
  • 32teeth32teeth Joined: Posts: 909
    I find it a bit silly that people don't share their solutions simply because they have put some work into it. So I don't think you came off hard criticizing

    thats being said, @erehk pm me, I'd be willing to listen and help out (or at least point you in the right direction) with what you are trying to accomplish
  • JRDIBBSJRDIBBS Neighborhood Modder Joined: Posts: 474
    edited November 2016
    32teeth wrote: »
    I find it a bit silly that people don't share their solutions simply because they have put some work into it. So I don't think you came off hard criticizing

    thats being said, @erehk pm me, I'd be willing to listen and help out (or at least point you in the right direction) with what you are trying to accomplish

    Of course I think that it's silly as well, but to each their own right? I like answering the simpler questions in pms such as issues where the kaimana isn't even being connected. But in general I try to keep the discussion going for everyone's benefit.

    @Erehk I am available through pms as well but I will try to answer your original question here. The way I implemented tournament mode was to create a whole separate button detection function that did not have any led functionality. You should be able to find it in one of the .ino files the one in the kaimanaGeneric/Vanilla/ folder has most of the new stuff (I need to get that code wrangled, it's insane but if you dig hard enough you can find hidden gems)

    Fading when the buttons released is a really cool function, and by that I mean a literal math function. I have not tried to define your particular case but in my breathing animation I used a variation of the sine function that altered the brightness of the led.

    First you have to create a function that modifies the brightness of the led and not the color. I just borrowed the setled function and expanded it using insight from @Vicko
    void Kaimana::setLEDBrightness(int index, int iR, int iG, int iB,int alpha)
    {
    	iR = iR * alpha;
    	iG = iG * alpha;
    	iB = iB * alpha;
      // set led identified by index to the RGB color passed to this function
      if(index >=0 && index < LED_COUNT)
      {
        _led[index].r=iR;
        _led[index].g=iG;
        _led[index].b=iB;
      }
    }  
    
    

    Then using the sine function on the brightness you are able to define a set of values without having to create a large data structure. EDIT: here's issues with this one I will find the working one and paste it. Ok this one works
    int breatheSine(int iR, int iG, int iB)
    {
    	int index;
    	int i;	
    	while(true)
    	{
    	int breatheSpeed= 1;
    	float factor = millis()/1000.0;
    		int alpha = 129.0 + 127 * sin((factor*.50)* PI );
    		//STROOOBE int alpha = 127.0 + 127 * sin((factor*3)* PI );
    		// set all leds in the array to the RGB color passed to this function
    		if (alpha != 0 ){
    			for(index=0;index<LED_COUNT;++index)
    			{
    				kaimana.setLEDBrightness( index, iR, iG, iB,alpha );
    			}
    			
    			// update the leds with new/current colors in the array
    			kaimana.updateALL();
    			// test all switches and exit idle animation if active switch found
    			for(i=0;i<SWITCH_COUNT;++i)
    			{
    				if( !digitalRead(switchPins[i]) )
    				return(false);
    			}
    	
    			// place test for switches here and use calculated timer not delay
    			delay( IDLE_ANIMATION_DELAY );
    		}			
    	}
      } 
    

    Variations on the different math functions yield different results, I am building videos to explain this further.

    Math is the coolest thing ever, my kid will learn precalc with a kaimana Lol.
    Post edited by JRDIBBS on
    I mod so you can play!
    Joysticks, buttons and PCBs, all at paradisearcade.com!
    The Man @ MightyJRMods- PM me for fixes and mods in the USA www.mightyjrmods.com
    Kaimana Guru, check out my GitHub for layouts, animations and more!
    Member of the Church of Dremel and the Cult of Hot Glue.
    No mod is finished until you wrangle that wiring!
  • bibionebibione Joined: Posts: 17
    Hi guys !
    Does anybody have an idea if I can put a kaimana mini in a ps3 Street Fighter IV arcade fightstick ?
    This model :
    http://nichegamer.com/wp-content/uploads/2016/02/1232124901-PS3-Street-Fighter-IV-FightStick.jpg

    I know it has a common ground but I can't really find a +5v Vcc on the main board. It looks pretty much as the TE version of the mad catz.
    I have pictures for the board, but I don't know how to put them in my post, if someone is interested.

    Thank you

    -Al-
Sign In or Register to comment.