I’ve decided to upgrade my pit and get a Force sensitive mod for my stick. I’m currently using a stock Warthog, and I love it. the grip is fantastic. However, there is only one mod for it, which is the very expensive FSSB-R3 made by RealSimulators. The product seems to be a very good piece of engineering, and is a drop in replacement for the WH, slap the grip on the base and you are done. However, mounting in in a proper stick base is somewhat more problematic. The other Force-sensing mod is the FCC3 by ViperCore.nl it is somewhat cheaper, community proven for years. However, it has a major drawback, it requires the Cougar PCB to work. I have a cougar, but I refuse to use it 🙂 (see my TQS controller series).
But a lack of controller never stopped me 🙂 So I opted for the FCC3 and started to dig into my Cougar to understand what will be required.
In this post I’ll dive into the grip wiring and bit ordering, and all the other fun things I had to dig into a whole bunch of documents to find.
I have been quite for too long 🙂 with the release of BMS4.33 followed by the Israeli Theater, I’ve had not much time to update the blog. However the Pit has been going places 🙂
first of all, I’ve replaced by 27″ 1440p display with a 40″ 4k computer monitor. I’m still tweaking graphics options, to get the performance to where I want it.. but it looks good!
I’ve also finally re-wired my pit, and installed the ICP, making things even better 🙂
in addition, I’ve been tweaking with the TQS adapter, trying to add a curve to the microstick, allowing better finetuned control in game.
I’ve also published on github a little GUI wrapper for avrdude that allows a quick upload of images to ATMEGA 32u4 chips, I use it to quickly upload new FW to the throttle and ICP, but I assume others might find it usefull for other things as well.
Everything is already available in the download page.
You can browse the code and download all the stuff you need (including a pre-compiled Hex, ready to be uploaded to your device – incl. a simple script to help with it for those of you who only want it to work :))
Here is a small clip showing how it looks in windows.
Now let’s dig into some technical stuff (only if you want to) 🙂
Following input and assistance from “Moon” and “AiRdAncE” the VP community, I’ve been pointed to the real FFI font, “MilSpec 35588“.
I’ve adjusted size and removed unneeded chars to create a new custom FFI font pretty much in the correct size to match a real face plate. Once I have one fabricated, I’ll adjust the font some more – but for now that is good enough IMHO
As always, the code is available on github.
links are available on the Download Page
I’ve been Working on some way to streamline performance as much as I could. The biggest performance limiter, is the drawing of the big screens (DED/PFD),
One of the tricks I’ve thought might help was to switch the display from 2 bit color mode to 1 bit (4 shades of “grayscale” to only “black and white”) theoretically – a 100% boost, it practice I have discovered I had a bug in the code all along. Apparently U8Glib has a switch to handle displays bigger then 240pixels, I’ve known about it but as long as I’ve been using the grayscale mode, I’ve been unaware of it (because the part that didn’t work was black). once I’ve switched to BW mode – it lit up casing stripes on the screen.
To fix this, and simply basic installation, I thought about including the entire U8Glib library, with the required change in the folder. Unfortunatly, the Arduino IDE does not allow this, So I’ll be including a ZIP file with the modified library for easy import into the IDE.
I’ve also found out that my plan to flip the DED display (to allow better weight distribution in the case) is a very bad idea as putting in “rotate 180” on the screen almost halfs the FPS.
I’ll be working on this some more till the PCBs arrive – but I think this is pretty much the limit as far as my ability to optimize the code to improve refresh rate.
I’ve had some time this week to finish up soldering the caution panel and control board, wiring the control board was a bit tricky, the control panel is reversed compared to the caution panel itself, and then I need to wire the whole thing backwards, which flips it again…
After finishing up the Caution panel, I’ve started by soldering the Shift registers outputs to the connectors
Once this is done, I started wiring the chips themselves,
Each chip needs to have 5V, GND, CLK and LATCH, OE (Output Enable) tied low RES pulled high. And all of them need to have Serial Data chained in the correct order between all the chips. and of course tie everything into the correct position on the connector – (hoping not to mess things up).
I’ve used my control PCB eagle board design as reference with the schematics – I still hope I haven’t messed up too badly – But I’ll only know that when the boards will come in from china.
I’ve been getting some PMs on Viperpits from folks interested in some configuration or another. some what the FFI, others DED, FFI and PFL.
So I’ve decided to use the time till the PCBs arrive and test expected performance
I’ve opted to use my Arduino uno as he is the weakest one (the Micro has half a KB more RAM and a self adjusting serial communication, and the due – well, should be different ball game entirely…). If performance would be Acceptable on the Uno, it will be on every other device too.
I was too last night tired to finish the caution panel (control board wiring is still not done) – so I took the challange and played around with the code – trying to make code changes easier and more coherent and of course fine tune the performance.
This is a step along the way.
Redneck, this one is for you 😉