Jump to content

Hempstead

Members
  • Posts

    464
  • Joined

  • Last visited

Everything posted by Hempstead

  1. I forgot to mention that the other reason for the abandonment of using stainless steel screws for signal paths is due to galvanic corrosion considerations. See, originally, the PCB is gold plated, so there is no problem between the stainless steel screws and gold. But now that the contact between the gold plated annular rings and stainless steel screws are found to be unreliable, I will have to design "something" to make that reliable contact. That "something" is most likely to be made of copper, and very likely to be simply a copper disk.... er... definitely not gold plated. So, now I either need aluminum/brass screws, or nickel/gold plated steel screws. Unfortunately, I have a hell of a time sourcing those. "They" seem to only make brass/aluminum screws up to M2x12. M2x21 to M2x25 nickel plated screws, I can only find one source in UK... and it's about USD $0.6 apiece plus about $25 shipping charge. In the 8-way optical HAT design, I have already considered this problem and had two different solutions for it. But I am not 100% happy with the two solutions either due to the space constraints in the 8-way. But this time, with the stick I actually have a lot more space than with the 8-way.... So, I stepped back, reevaluated, and ditched the stainless steel screws as signal path, and replaced them with nylon. It is still not easy to find at that length, but at least they are cheap and from an easy source, Newark/Element 14. You can still use stainless steel screws which would still make unreliable contact with the signal and act as a capacitor.... unnecessarily now that I have other copper paths for signals, although not adversely affect the signal too much. The side benefit of using Nylon screws is that I only have to buy one length... M2x25... and just snip it at whatever length I need. Stainless steel is a lot tougher.... consuming a lot of saw blades trimming them.
  2. Simple... Take this entry as an example. J6P5 (23, 0) That means it's J6 socket on the board, pin 5, in your picture. Take '0' and look up into my table in the Position in Hempstick Internally. That gives you the Trigger 1st Stage from the Column Cougar Stick Function. Another example. J2P5 (7, 16) That means, J2 socket on the PCB, pin 5. Row 16 in my table gives you DMS Up for Cougar, meaning the DMS HAT switch up. If you have a Warthog, use the Warthog Stick Function column.
  3. Here's how to decode them. 1. Look at the chip spec itself, see picture #1. There are the Parallel in pins, numbered 1 to 8. Bit #8 will go out first. That is, it's an MSB first scheme. So, 3 chips forms a chain of 24 bits parallel in, serials out. Normally, the values in the buffer changes according to the values on each lead... Whatever they are, the bits in the buffer changes with it. 2. When the Select pin goes active, 0V, the buffer locks up whatever values are in the buffers. Then, the caller sends in 24 pulses (clock), and each pulse sends out 1 bit of value. So, P8 on U1 will be send out as bit 0, etc. 3. In Hempstick User's Guide,http://www.hempstick.org/download/manual/Hempstick-UserGuide.pdf, I have listed all the values. For your convenience, I have included a screenshot in the 2nd picture. In that table, use the column Position in Hempstick Internal. I don't remember which end is which end. But if I have to guess, #0 is the first bit out. I usually write cod that way. way.... But, to confirm, all you have to do is to take a multimeter, and test the conductivity of them.... I happened to have one Cougar PCB disassembled... I tested it. It works like this. U3 <- U2 <- U1 This forms a cascaded of 3x 8bits. This is an MSB arrangement. So, parallel in bit 8 of U3 is bit 23, bit 7 of U3 is bit 22, etc. However, it is sent out MSB first... so first bit that comes out is store in Hempstick as bit 0 (b/c I am writing software, not using a hardware shift register, so it's as convenient for me to store either way. Each J connector from J1 to J6, pin 1 is power, Vdd. Pin 5 is MSB bit So, here's the list. The format is Internal Cougar J-Connect-Pin# (Cougar internal Bit #, Position in Hempstick Internal). J6P5 (23, 0) J6P4 (22, 1) J6P3 (21, 2) J6P2 (20, 3) J5P5 (19, 4) J5P4 (18, 5) J5P3 (17, 6) J5P2 (16, 7) J4P5 (15, 6) J4P4 (14, 9) J4P3 (13, 10) J4P2 (12, 11) J3P5 (11, 12) J3P4 (10, 13) J3P3 (9, 14) J3P2 (8, 15) J2P5 (7, 16) J2P4 (6, 17) J2P3 (5, 18) J2P2 (4, 19) J1P5 (3, 20) J1P4 (2, 21) J1P3 (1, 22) J1P2 (0, 23)
  4. Fits like a glove, see picture #1. Added a "ridge" in the main control "face plate" and a "slit" in the top cover and main body to mate with each other, so I can get rid of the 4x screws that come out to the main control face plate. (In the picture, the test print for fitting still has the 4x screws holes cut in the face plate, but the final modification doesn't have them anymore. Also inside, the main tube was originally designed to have one and only one curvature, on the idea that it can be slipped into the printed body without having to split the main body into two halves. I have regretted that decision, because bending an OD=1" aluminum tube in such precision would require some serious mold and equipments. So, I have changed the tube to be composed of 1 straight tube, bend in the middle with a generous radius of 3". Most likely, this can be made with some carved wood blocks and a hydraulic press (or a sledge hammer if you feel lucky). Depending on your "precision" in the bending, I will put in a "tolerance" value so that "hole" can be adjusted for fitting (and then you can Bondo it to fill the gap between the tube and the body). This took the whole Sunday afternoon to "correct" all the constraint errors showing up. Grr.... Also, I have changed the internal wire routing. 1. make the internal M2x25 screws be Nylon, i.e. abandon the idea of using the screws as signal path, and 2. dig in the air vent channel deeper to accommodate wiring. But, now I need to figure out a reliable way to contact signal pads. Most likely, it will be just some copper disks with wires soldered to the back annular copper pads on PCB. The abandoning of using the screws as a signal conduit was prompted by the fact that some of the annular rings on PCB made by OshPark now are bigger. For several batches and different revisions of PCBs, I was able to get reliable contact between the screws and the gold plated copper annular rings... but no more. The recent two batches.... the ID of the annular rings are slightly bigger and do not make reliable contact.... So, it's a bad idea to rely on this "unspecified" manufacturing tolerance. Again, all these problems have to be resolved one at a time through prototyping, as this is brand new never done before designs, even the construction methods are brand new (at least to me). null
  5. The socket button head M2x6 alloy steel screws are delivered.The next minor modification is already being printed. What you see here is assembled outside the tube. But the reality is that the bottom plate has to slip into the tube from the side slits and flipped around inside the tube into position. Then, the top one has to go in from the other opening end of the tube, and then screwed into the bottom plate directly in-situ. My SwissTools 1.5mm by 80mm long Allen Wrench is just barely long enough. After magnetizing my Allen Wrench, the new alloy steel screws worked well, except that the "bite" into the nuts is a bit shallow. So, I am adding an 1mm recess for the button head to sit in, increasing the bite of the threads. I didn't model the self-lubricating bronze sleeve bearing in the 3D model, but did designed the hole for it with correct tolerance accounting for a 0.4mm nozzle so that it needs to be pressed into the hole, just like proper interference fit. It took several trial-n-error print to get the right number dialed in. The next thing to tackle... the shaft and sensor seat, and wire routing.
  6. Again... stuck, waiting for part. Story of my life. For screws, I usually prefer stainless steel whenever I can, b/c they don't rust. Less maintenance and all that, you know. So, most of the screws I have at home are stainless steel. One of the parts, the mystery part to restore linearity of the stick base requires 3 M2x6 screws. Of course I have stainless steel socket head screws and nuts ready for the prototype. One unforeseen problem was... damned thing isn't magnetic. So, I have hell of a trouble getting the screws inside the long tube in position -- they just won't stick to the Allen Wrench... Aaahhh... I have designed the thing in two parts so the thin part will go through the cut slits and flip over to lie flat, and the thick part (the real working portion) will go from the bottom and then screwed into the thin part to fix it in. I mean, I considered the details up to how to assemble the part and how much space it needs to maneuver the parts in position etc. etc. and all worked out (with minor modifications). I didn't see the non-magnetic 304 stainless steel screw problem coming! Ha! So, I just ordered some alloy steel M2x6 socket head screws... now wait.
  7. Printed with my Phrozen Mini-8K. Mighty-8K is still having some trouble, probably needs a new nFEP film. The bottom recess does not print too well, but with some manual fixing, should work. The thing is... PLA printed, the back printed perfectly... with some epoxy filler and sanding, it should be as good as the 8K. Unfortunately though... the text just doesn't work at all with 0.4mm nozzle. The text on SLA prints is a bit too fine. Needs to make them bold or something.
  8. Would you mind providing some hard numbers other than baby’s ass? I would like to remind you that baby’s bottom is what’s smooth, and baby’s ass is where bio waste comes out.
  9. Oh ya… 3080 here too. High texture, Andersen AFB, AH64 on the ground, with the OTT desktop resolution 800x600 trick, and I get 12fps to 2fps, unplayable. Switched to medium texture, 45fps.
  10. One too many argument, I think. If I remember correctly, the signature is something like MapKey(Device& device, int button, int key);
  11. If I have to guess, it's probably one of the what I call Markdown Minefield. MapKey(&Throttle,MSU,0,0); When you post code in the Markdown Idiocy Era, you better do the <pre> </pre>, or use whatever "Code" markup there is available.
  12. Do you see the comma in the screenshot? I not only don’t see comma in your original post, in the quote, I don’t see it in the screenshot either.
  13. Don’t see no comma. The correct syntax should be MapKey(&Throttle, MSU); As to whether the semantics is correct or not, no idea.
  14. Missing a comma between &Throttle and MSU? Syntax error.
  15. Yes. But, it’s cheaper if you just buy an SLA printer and print them yourself. Genuine backlighted knobs (transilluminated knobs, http://www.ehcknobs.com/index.php?id=TM) are very expensive. Could be USD$60 a pop, could be $25 a pop. Just go to EHC, look for the ones you want and google the part # and see what you find. And try eBay too for surplus (could be $5 a pop). Farnell, Newark, Digikey, and Mouse carry some limited stock. EHC might bother lifting their fingers if you buy more than 50 for one part #. Seriously, at such prices, it’s cheaper to buy a 3D printer. Sure, 3D printed knobs might not be as durable as injection molded genuine articles, but if they break, just print more. To get you started, go here, https://github.com/JonahTsai/F16, to get some 3D models for knobs and buttons. Or, you can have Shapeways print them for you.
  16. Just 2 test renderings with my new Solidworks 2023 Premium.... on my gaming rig.
  17. Thanks man! I tried it with my Quest Pro. At first it didn't work, but then I followed the exact procedure to unplug OculusLink, clean out the fsx and metashader2 directories, and reboot, etc... and now I get very stable 45fps and the frame time is pretty solid (I fixed it at 45). Before, I got mostly 45fps, but at low alt. and near Vegas buildings, I get 30, and a lot of constant spikes on the frame time, like periodical spikes, one after another. Now, after, the frame time history is like a straight line... sure, occasionally, there are spikes when I approach some new buildings... but it's mainly just a flat line. Even on the ground at Nellis, I get quite stable 45fps. Great Improvement. Again... Thanks a lot!
  18. Mystery part, the first screenshot. This is a part I have been working on for the control stick base for the past two weeks. Still have to print the final revision and test it. After this, I will have to resolve the wire routing problem, the details. Actually, you see the three circular slits cut into the rings, one obscured in screenshot? Those are slits intended for routing sensor wires, all 29 of them. That means I have to design a magnet holder with wiring arrangement to go around the magnet, and a sensor holder to avoid chaffing the wires. The easiest solution is to route the wires outside (drill a hole in the stainless steel tube, insert a grommet, drill a hole in the base print, and run the wires with enough slack through it... done). But that feels like cheating. Not that I am against cheating here. I reserve the rights to use the cheat method here.... if my internal routing design does not go well. So, it will definitely work... it's just that I am pursuing something better. The 2nd screenshot is the OD=3/4" shaft vs. the OD=1/2" shaft. The OD=1/2" allows about 25 degree tilting each direction vs the 18 degree of the 3/4" shaft. With high enough resolution of Hall sensor, the decrease in tilting range should not be a problem. But actually might be an advantage, as it is closer to force sensor stick's small range. The increase in the shaft diameter is mainly to facilitate the mechanism for restoring linear curve, and 2ndarily this "wire routing" problem, wiring 29 of them through the OD=1/2", ID< 1/2" tube that moves around and have to avoid the sensor at the center is kind of a lot of troubles.
  19. Tensioner block prototyped. There are always a lot of these "supposed" to work, or I will figure out something, during the draft design that are not taken to the very last details. Every single one of these have to be actually resolved and prototyped. There are a lot of these "need" to be prototyped. A lot of those problems are unforeseen. I have always wondered how there are people who can design it one pass and everything worked. nullAlso, since now I cut the main body into three to solve the "support removal", and cracking problem, now I might have an opportunity to integrate the tensioning blocks as part of the main bodies. That is, forget those two M3 screws and nuts you see in the picture. The block will be part of the main body, and just leave a slot for the middle nuts to slide in. But this is structurally weaker than with the two stainless steel M3 screws as reinforcement... blah blah blah.... Not much of the advantages with integrated tensioning blocks, other than a shorter BOM. BTW, I have another idea about how to mechanically restore linear response curve, a much simpler mechanism than the previous one, but should be as effective. Definitely will need to prototype it.... and patent it. So, you won't be seeing the innards of this thing than what you have already seen. This also greatly influence how the wiring will be routed. Also, I don't have an anti-torque mechanism yet. But I do have a rough idea how that will be accomplished -- outside, so it can accommodate the desire to rotate the stick any angle you see fit (within limit, say 30 degree left and right). It's so simple that you probably will laugh your tail off when you see it. I have not made the decision on whether I want to take advantages of this and route the wires through it (may not be practical). Like I said before, I think linear response curve is overrated. But if I can provide a simple mechanism to restore it, as an option, then I am glad to do it. But I myself am probably gonna go commando without it. However, prototyping is still required.
  20. Received the thinner F16-like stick main PCB. The whole electronics stack is assembled (a new modification is made to prevent screws from contacting the brass optical core and short out the signal lines. The integrated main control face plate is printed on a 0.4mm nozzle with PLA. As expected, the whole thing prints out fine, but the engraved text does not. Either this has to be printed with a resin printer (or SLS), or this has to be printed without the text. Note that, these 4x optical cores are newly CNC milled. The "holes" for the screws are bigger to accommodate the printed "insulation sleeves" around the screws to avoid shorts (I forgot brass is conductive when I switched from disparate brass tubes to one integrated block; oops). Also, I now need to find a way to reliably contact the PCB screw pads and the screws (I think I have a good idea how). Because I found different batches of OshPark made PCB drilled the holes with different sizes. They used to be slightly undersized, but now they are slightly oversized. Well.... nature of oursourcing.
  21. Received laser cut stainless parts from OshCut. nullI already know one part needs modification. I am changing the shaft OD from 1/2" to 3/4". So, the disk in the front need to have ID=3/4". Maybe my D=3/4" HSS annular cutters will be able to cut it at around 100 rpm. And now the disks with 3 prongs is slightly problematic; won't fit though the slits I cut for assembly.... damn it, just 0.5mm too big... argh! Need to go buy a 3/8 or 1/2" drill mill to make those 3 slits to be 3/8" or 1/2" wide instead of 1/4". Or I can just cheat and file the slit, just a notch to clear that 0.5mm. Gonna be ugly... but will work.
  22. Laser cut for disk parts of the control base. 304 stainless steel (why not since I am going to spend the money laser cutting it! It's so pretty!). The parts themselves are not expensive, the setup fee is about USD $33. I could make them myself (not with stainless... too difficult to cut by hand or even with a CNC mill, 10X slower than aluminum and have to use flood coolant.). For instance, the disk on the shaft disk, I cut it by hand out of a piece of mild steel bar stock, drilled a 1/2" hole, trim the corners with a bandsaw to save some lathe time, braze the stainless steel tube in, and then lathe. It's easy, but if you are making one of anything, the setup and jigs always cost you plenty of time! Same goes to Osh Cut. They charge some not unreasonable, but not cheap setup fee too. The easiest way is to upload it and let them do most of the works. You can do it all by your lonesome with a scroll saw (not with 304 though, it would take forever and eat up a lot of your saw blades). It will take about 8 days for them to cut it and deliver it to me. Typical prototyping at home scenario... like in the Army -- hurry up and wait. Update: Ordered on Nov. 1. They said ship on or before Nov. 8th. But they actually shipped it out on Nov. 3rd. I am supposed to receive it on Sunday.
  23. Made that shaft-disk thing on the right of the first picture this weekend. The shaft is made of stainless steel (OD=1/2"), plenty strong for the hair on fire animals out there. The disk was made of some hot rolled mild steel, cheap, brazed on the stainless, and then lathed. Brazing should be plenty strong enough... if not, I will pull out my TIG welder. Brazing is plenty easy for everybody. So, my first prototype is with this method. All you need is a MAPP gas torch, a roll of brazing "rods", and some flux. Additionally for alignment, I used a fire brick, drilled a 1/2" hole, and a recess of 3/4". This fixes the relationship between the shaft and the disk for brazing, and prevents the hot brazing liquid to come in contact with the brick. Perfect alignment is not really needed. A degree or two off is unperceetable to humans. So, I used a $99 drill press to drill that 1/2" hole (with a masonry bit) The up-down movement is not unlike TM Warthog, but I got rid of the ball and socket (I only realized it's similar to Warthog's after I got the solution). And everything else is different. The 4x "rods" mechanism in Warthog causes force dead center and sticktion. The ball and socket mechanism causes some sticktion. This mechanism has practically no dead center, and no sticktion. The response curve is not linear. But I have a very clever more complicated mechanism for linear response curve, which I do not think necessary, and I might want to patent it anyway. So, the prototype will only have that non-linear curve thing, but if necessary, I will curve it back with the firmware (compensated linear curve or uncompensated native non-linear curve). But, I highly doubt I will need to curve it back at the firmware. Of course, the end product will not have those M3 screws protruding out so far (3x more, total 6x, although 3x should suffice). I wish they were handsome socket head screws, but unfortunately, there is no socket head screws that long off the shelf. I could TIG weld them... There will also be a hopefully stainless steel ring on top of the red body to be screwed down (and cap it). Next weekend's works.
  24. USB is designed to allow multi-tiered "hubs." If you plug into the USB ports on the mother board, those are usually the "root" hubs (not always, as some motherboard cheap out). Theoretically, you can plug in 128 devices into a single root hub (with many powered hubs), but not really recommended. Now, there is absolutely no requirement that your USB devices must be plugged into the root hub. Theoretically, a USB device can be plugged into any hub on any tier. BUT... TM Warhogs are known to be buggy when it comes to firmware update. If you don't plug it into the root hub, the firmware update may or may not work. Also, it will not work if you try to update the firmware when the Windows is a VM. I suppose, the fault really lies NOT with TM, but with the MCU manufacturer, ST-micro. With my USB firmware, Hempstick, I don't even know HOW to do what Warthog is doing... just can't do it, no matter what. Of course, I used Atmel chips, not ST. Also, I have found TM Warthogs bitchy when plugged into USB3 ports, particularly if your USB chipset is early Renesas USB3 chip set. I had to avoid that by buying an el'cheapo USB2 PCI-e card and a hub. Theoretically, USB3 is backward compatible with USB2 devices, but ST-micro's chips TM uses in Warthog predates USB3 protocol, so there wasn't anyway for them to test against the future. It's not like your Warthog can take advantage of higher speed of USB3 anyway. And each USB2 port can only supply, legally 500mA max. So, no, without powered hubs, you can't plug in more than a few devices into the same unpowered hub. So, to plug in more than just once device, I'd recommend powered hub, because one device along could theoretically request the entire 500mA. What I would really recommend you do regarding setup in a flight sim is to buy a powered USB2 hub, either plug that into a USB root hub (a waste), or plug it into an upstream USB3 hub. The best is to plug it into a USB2 PCIe card. I would not recommend too many tiers. Because the USB traffics is after all handed down one tier at a time. Not too much time is wasted, but it's some time. Luckily, we usually don't have more than 2 tiers, max. 3. Completely negligible. null Here in the following two screenshots, you can see that both TM Warthog stick and throttle requires some moderate 100mA, not exactly some high powered devices. But, the thing is unless you inspect each USB devices, each could theoretically request up to 500mA. So, it's easiest to just always buy powered hubs. The only reason I buy unpowered hub is for laptop portability. But if you have to plug in more than 1 device thus requiring a hub, it ain't that portable anymore, right? So, yes, there are cases for unpowered hubs, but not for flight sims.
  25. And remember, Viper stick is just a stick I am modeling and apply the optical switch on. It’s not the only thing the optical HAT/button can be used in. Although I mainly fly the Viper in DCS. I do fly other stuff that are not Viper, like the Extra 300. Not everything has a mechanical delay of Gatling guns!
×
×
  • Create New...