Hello, quick question: - is it possible to connect in chain:
ProMicro --- 1#TLE5010 --- 2#TLE5010 --- CD4021BE
?
It should be obvious, but I cannot make it working. I have soldered Debolesti's PCB and I can plug my B-5 to Warthog's base - works like a charm. But while I try to connect B-5 to the last TLE5010 in chain it does not regognize buttons. All eight buttons are just red.
Each of three PCBs shares following wires/pins: - VCC - GND - MISO (B3) - SCK (B1)
Both TLE5010 share B6 as GEN.
CD4021BE uses E6 as CS pin, TLE5010 use B4 and B5 pins for CS.
I have checked circuits from end to end for each wire and all seem to be ok. But it's not. Can you please post your screens how it should be configured?
Hello, quick question: - is it possible to connect in chain:
ProMicro --- 1#TLE5010 --- 2#TLE5010 --- CD4021BE
?
It should be obvious, but I cannot make it working. I have soldered Debolesti's PCB and I can plug my B-5 to Warthog's base - works like a charm. But while I try to connect B-5 to the last TLE5010 in chain it does not regognize buttons. All eight buttons are just red.
Each of three PCBs shares following wires/pins: - VCC - GND - MISO (B3) - SCK (B1)
Both TLE5010 share B6 as GEN.
CD4021BE uses E6 as CS pin, TLE5010 use B4 and B5 pins for CS.
I have checked circuits from end to end for each wire and all seem to be ok. But it's not. Can you please post your screens how it should be configured?
I did the same thing on my FLCS ...... use another digital pin for the 4021 PCB as the TLE5010 will override anything else on MISO (data) , see if that works ?
GND ---- Any Available GND Pin SCK ---- Pin B1 CS ------ Any Available Pin--Assign in MMjoy DATA --- (MISO) Pin B3 if available but can use any available Digital Pin... eg if TLE5010 PCB are using Miso use any other digital pin (avoid Pin13 or LED will Flash constantly with data flow) VCC --- 5v Power ( On the Leonardo I use Vin too as Vin voltage = input voltage ie 5v from USB)
Hi, totally forgot it - at that time I did not used CD4021 :-)
I have resoldered wires and right now I have:
- common GND for both TLE5010 and one CD4021, - common VCC for both TLE5010 and one CD4021, - common CSK for both TLE5010 and one CD4021, - common GEN for both TLE5010, - common DATA for both TLE5010, - individual DATA for CD4021. - individual CS for each PCB,
But still no luck. It's even worse. If I connect CD4021 then both TLE5010 seems to be freezing. Once disconected both TLE5010 are working fine.
do you have the 10k resistor on the Data ?? that was my other issue , some of the later PCB design are wrong..... have a look here and a few posts lower
hopefuly you get it sorted out...please post back as I just got some Pro Mircro's for a 2nd build....
Hi, I have soldered 10K resistor on the DATA for CD4021, but the problem persists
Let me make a summary: - B-5 grip with CD4021 is working fine with Warthog base, - both TLE5010 are working fine, - I use separate CS for each chip, - I use separate DATA for CD4021 and TLE5010s, - I have 10K resistor on the DATA for CD4021, - I have checked all cables from end to end and I haven't found any short circuits and believe there are no errors in design.
Perhaps you should post your Schematic , so someone can see if it is correct , sorry I don't know enough to really help you but @Erichos might if he has time.
Hey guys, I'm in the early stage of planning a throttle + buttons and rotary encoders box for my VR cockpit, and I'm planning to use mmjoy for that.
From the screenshots I see in this thread, there is a maximum of 6 encoders per controller, is that correct? If yes I might need two controllers as I was planning a total of 8-10 encoders (for all the nav, adf, gps, alt sel dials etc). Or maybe I should use a BU036A for that since it can use a matrix of 16 encoders? I'm focusing on rotary dials because they're a pain to control in VR if you need to repeatedly click on them using a trackball or the Vive controllers, and that's particularly painful when trying to tune navigation in a vintage plane.
@KBird, hahaha, found it. I have checked each component once again and nothing. Being quite resigned I decided to check Warthog stick (I know, it was waving a dead chicken...). So I unscrew the grip and plug it to female connector of PS/2. Of course... nothing, it's dead. So I turned the grip upside down to unplug it...
"Hmmm... WTF? How is it supposed to work? One cable is not connected at all! OMG, the other are soldered to wrong pins!"
Hey guys, I'm in the early stage of planning a throttle + buttons and rotary encoders box for my VR cockpit, and I'm planning to use mmjoy for that.
From the screenshots I see in this thread, there is a maximum of 6 encoders per controller, is that correct? If yes I might need two controllers as I was planning a total of 8-10 encoders (for all the nav, adf, gps, alt sel dials etc). Or maybe I should use a BU036A for that since it can use a matrix of 16 encoders? I'm focusing on rotary dials because they're a pain to control in VR if you need to repeatedly click on them using a trackball or the Vive controllers, and that's particularly painful when trying to tune navigation in a vintage plane.
Documentation is a bit sparse on MMjoy2 ...hence this long thread....but I think you are right FM , but alot of use use two or three controllers any way eg FLCS, TQS, RUDDERS and as long as you have USB ports to plug into if should be fine....though it maybe cheaper to get one BU0386A , unless you order some cheap pro micros or Leonardos from China....
the Wiki is the only Documentation I am aware of... though you may find a PDF on MMjoy (predecessor) online I am not sure how relevant the info is these days...
If yes I might need two controllers as I was planning a total of 8-10 encoders (for all the nav, adf, gps, alt sel dials etc). Or maybe I should use a BU036A for that since it can use a matrix of 16 encoders? I'm focusing on rotary dials because they're a pain to control in VR if you need to repeatedly click on them using a trackball or the Vive controllers, and that's particularly painful when trying to tune navigation in a vintage plane.
In that case worth spent more with BU0836, due their 16 Encoder support.
DSB 32/64 button controller (no axis) is another option:
Thanks guys. Sokol1, that DSD 32/64 controller look like a perfect solution for me. I'll still use my Leonardo board for 10 turn pots for trim for a rudder and aileron trim wheel and most likely a GVL224 lever and magRes if I can figure out how to pay him (he's told me how but geez it's tricky to pay someone in Ukraine...) as well as a couple of slider pots. So all in all I'm spending a bit more but I'm still finding a use for what I already have.
If yes I might need two controllers as I was planning a total of 8-10 encoders (for all the nav, adf, gps, alt sel dials etc). Or maybe I should use a BU036A for that since it can use a matrix of 16 encoders? I'm focusing on rotary dials because they're a pain to control in VR if you need to repeatedly click on them using a trackball or the Vive controllers, and that's particularly painful when trying to tune navigation in a vintage plane.
In that case worth spent more with BU0836, due their 16 Encoder support.
DSB 32/64 button controller (no axis) is another option:
Could someone be so kind to provide some insight into how the FLCS stick (shift registers) should be wired onto an Arduino Micro with MMJoy?
So based on the image posted by KBird, I've got the following:
Ground (green) on GRND pin VCC (brown) on the 5V pin SPI-SCK (orange) on the SCK pin (pin 1 top right) SPI-CS (red) on A0/F7 and configured in MMJoy as such SPI-MISO (yellow) on D7/E6 and figured in MMJoy as such
And here's my MMJoy:
But my problem is that no button presses are registered at all in the VKB Keytester? So I think it must have wired something the wrong way around but I can't quite find what the problem is.
Yes I did. By the way when assigning the Hardware Buttons, how do I actually know which button has which ID? e.g. how do I know that TMS up is button 12 or something?
it looks right as Sokol said... did you try SCK on the ICSP header instead? usually pin 3 ...
remove D2 and B5 from the Rows setup too ...for now...are you copying mine? they don't have anything to do with the handle buttons AFAIR...
you did upload the MMjoy Firmware to the Pro Micro right? the 2016-11-01 Firmware has a few bugs , not sure if that is it ? I'm using 2016 -8-18 now instead ...you can't mix and match firmwares and configs BTW...
try different USB VID and PID numbers ...Windows maybe confused too ....I had some weirdness if the number were too similar , I don't know if it was MMjoy or Win10 though.... ie try 7777 and 7700 and make the TQS 7777 and 7800....
Are you sure you have power?
I just went through each button and recorded what number lit up in MMjoy Button panel and then assigned it to the Hardware button I wanted.
it looks right as Sokol said... did you try SCK on the ICSP header instead? usually pin 3 ...
remove D2 and B5 from the Rows setup too ...for now...are you copying mine? they don't have anything to do with the handle buttons AFAIR...
you did upload the MMjoy Firmware to the Pro Micro right? the 2016-11-01 Firmware has a few bugs , not sure if that is it ? I'm using 2016 -8-18 now instead ...you can't mix and match firmwares and configs BTW...
try different USB VID and PID numbers ...Windows maybe confused too ....I had some weirdness if the number were too similar , I don't know if it was MMjoy or Win10 though.... ie try 7777 and 7700 and make the TQS 7777 and 7800....
Are you sure you have power?
I just went through each button and recorded what number lit up in MMjoy Button panel and then assigned it to the Hardware button I wanted.
Yes I was copying your file as I couldn't find any documentation on MMJoy as to what should be set or not. Yes I did upload the firmware and yes I have power on all pins (4.90 to 4.70V).
If I take one of the wires out or wiggle it, it will show that all 20 buttons are getting pressed at once , as if something is shortening out or so. Other than that, it's pretty dead. I'e tried using the SCK on the ICSP header but it made no difference using it on top of the Arduino Micro or using pin 1 on the buttom.