Jump to content

texasflyboy

Members
  • Posts

    9
  • Joined

  • Last visited

Reputation

2 Neutral

Profile Information

  • About me
    Bottle Rocketeer

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Remember, the real THC in Space Shuttle and Apollo was on/off, not analog. The RCS thrusters are either on or off.
  2. Sounds like he's a NASA guy so this is as close as you're going to see to NASA hardware in KSP! His Translational Hand Controller solution is brilliant. I wish I'd seen this a few months ago!
  3. I know it's been a long time but I may have found a solution. What's better is that it uses the joystick I ended up buying. I can't believe I didn't think of this! http://www.sgtnoodle.com/projects/kerbal-control-panel/ Enjoy, Jon
  4. Sputnix, you're correct, this seems to be the only commercially available controller that has the ability to control translation. I'm familiar with them as used to control CAD software views. My main problem with them is that their "feedback" is pretty mushy, as they're meant to finely control a 3D environment. When maneuvering, it's very useful/intuitive to know when the jets (or arm motion in this case) are on or off. So crisp and obvious feedback, as well as digital on/off control, ends up being the most useful. I think this is one of the reasons the Shuttle program ended up adopting the translational hand controller for translation arm movement as well. With so many degrees of freedom available to a spacecraft, it seems that taking analog control out of at least the translational axes (though in some modes the rotational axes is the same, digital), makes this task easy for the brain to comprehend.
  5. The panel bearings do not give the smooth motion needed for this controller. So back to the drawing board in search of other bearing solutions. It's either going to be nylon panel bearings as suggested by Nuke (if anything like this exists) or linear ball bearings, if I can find them in a small enough package (and at the right price).
  6. Ok, it's been a little while, but I'm back! Recently, through some assistance over at the Adafruit forums, we came up with the proper bearing solution (panel bearing) for this application.
  7. By the way, from a mechanical standpoint, this is what I'm trying to accomplish. If anyone has any good sources for parts or suggestions, please let me know. Linear Motion by Jon Griffith, on Flickr
  8. Quick update: Now that all the hardware is here, I was finally able to try a real test. Using INPUT_PULLUP and then connecting the switch between the ground pin and the input pin, I was very reliably and consistently able to get crisp commands of the letter 'k' into Notepad. I think from a software and conceptual standpoint, we're set. It appears that the Keyboard.write() works great and requires less code, so I'm happy for now. Now back to trying to mount this joystick so it can move through the third axis. IMG_8724 by Jon Griffith, on Flickr
  9. So I do seem to be getting some weird behavior but I'm not sure (the circuit is just prototyped right now). The Arduino will reliably output the letter I want it to, but the output will continue for a few moments after the pin goes high again. If you were to write debounce code for this particular application, debouncing each of the six switches, how might you write it? I'll have another look but it's not immediately obvious right now. From a hardware standpoint, I'm also wondering the best way to create a power "bus" for these low voltage circuits. I want to take the 5V pin and distribute it to each of the 6 switches. What hardware would I use to do this? The ground bus is obvious, using the chassis of the panel and tying the ground pin there as well. But I haven't seen any good solutions for the 5V bus other than perhaps this:
  10. This is the closest I could find to my potential upgrade. Interested in hearing opinions. The current machine runs 1.0 and previous quite well (about 250+ part stations are the most common). Current Machine: Intel G3258 3.2GHz Dual-Core Processor (OC to about 4.0GHz) Cooler Master Hyper 212 EVO Asus Z97I-PLUS Mini ITX Kingston HyperX Fury Red 8GB (2 x 4GB) DDR3-1600 Memory Samsung 850 EVO-Series 250GB 2.5" SSD EVGA GeForce GTX 780 3GB Video Card Antec ISK600 Mini ITX Tower Case OCZ EliteXStream 800W Potential Upgrades: *Intel Core i5-4690K 3.5GHz Quad-Core *Corsair H60 54.0 CFM Liquid CPU Cooler Asus Z97I-PLUS Mini ITX *Kingston HyperX Fury Red 16GB (2 x 8GB) DDR3-1866 Memory Samsung 850 EVO-Series 250GB 2.5" SSD EVGA GeForce GTX 780 3GB Video Card Antec ISK600 Mini ITX Tower Case OCZ EliteXStream 800W
  11. I should be able to try it all out on Monday when the hardware arrives. I appreciate the debounce reminder. I think the arduino has a debounce software function that I can try as a start.
  12. I did go back and forth (actually re-wrote then went back) between write --> press --> write. I think what it'll come down to is if the processor is running fast enough that I don't notice the really fast press/release/press cycle, the write function should work. I'm always happy to listen to rationale or past experience though! Any particular reasoning? Thanks
  13. I'm not currently aware of a good way to post code so that it doesn't take up an entire page but figured this was short enough to be ok this time. How do you guys post code? Looks like the code part of this project (just the translational hand controller itself) is going to be pretty easy. How does this look? This is going into an Arduino Micro. Any suggestion on specifically what pins I should be using? #include <Keyboard.h> void setup() { pinMode(1, INPUT_PULLUP); pinMode(2, INPUT_PULLUP); pinMode(3, INPUT_PULLUP); pinMode(4, INPUT_PULLUP); pinMode(5, INPUT_PULLUP); pinMode(6, INPUT_PULLUP); Keyboard.begin(); } void loop() { // UP if (digitalRead(1) == LOW) { Keyboard.write('k'); } // DOWN if (digitalRead(2) == LOW) { Keyboard.write('i'); } // LEFT if (digitalRead(3) == LOW) { Keyboard.write('j'); } // RIGHT if (digitalRead(4) == LOW) { Keyboard.write('l'); } // FORWARD if (digitalRead(5) == LOW) { Keyboard.write('h'); } // BACKWARD if (digitalRead(6) == LOW) { Keyboard.write('n'); } }
  14. Ok, I think we'll go Arduino Micro. Having a big support community is the deciding factor. Found an awesome harness supplier: https://www.pololu.com/category/19/connectors Then we'll use the J-stick from Ultimarc and add some extra micro-switches for the other axis: I'm also ordering four extra push-buttons to mount nearby for RCS, SAS, Invert SAS and Fine Control.
  15. I've reached a decision point and I was hoping you all could help. I'm trying to decide on the interface board. Here are the choices: 1) UltiMarc U-HID board, seems to be more plug and play but not as versatile. Much more expensive ($80) http://www.u-hid.com/home/overview_board.php 2) Arduino Micro, not as plug and play, may be more of a headache for a non-programmer. Much cheaper ($25) http://www.instructables.com/id/Arduino-LeonardoMicro-as-Game-ControllerJoystick/ Appreciate any input! Jon
×
×
  • Create New...