Skip to content
View in the app

A better way to browse. Learn more.

The AVSIM Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

mjoy or other interface or hacked joystick?

Featured Replies

Hi all, this is my first time here :) I stumbeld over this forum on my search for answers to my quistions. I have build my own joystick becouse i got fed up with the poor quality of almost allmass produced joystick. My initial idea was to use and old joystick and use the PCB from that, wiring it up to my own 100k quality Potentiometers. But i have to use 2 joysticks to get enough axes and buttons. But now i has seen the Mjoy project, looks really nice and fairly simpel. But i have some qustions that i couldent find answers to, and i was thinking that in here there must be peopel who has buildt it and have experince in th Mjoy. Q: How about "jittering" or electric noise ? I need really smoth action, or at least as good as a normal joystick. Does anybody have an componet list for the Mjoy, couldent find a simpel "shopping list" anywhere including the PCB for programing the ICAnd ,please, all expirence with the mjoy i would like to hear about Regards "mugin" Thomas

This is the list that I made up. I haven't checked everything yet, nor have I built a MJOY. Will make one on a PCB in the near future.Here's the list. If you want I can also give you the Reichelt Catalog Numbers (a German store)Part1 ATMega AVR-RISC-Controller, DIL-281 Xtal Quartz 12Mhz1 USB Bus PCB-mounting1 Resistor 2,2 KOhm1 Resistor 4,7 KOhm2 Resistor 82 Ohm2 Zener Diode 3.3V2 Capacitor 0.1uFOptional:1 USB A to USB A connector 1,0mProgrammer1 D-SUB male 25 pin connector4 Resistor 330 KOhmFor ISP1 D-SUB female 9 pin connector1 D-SUB male 9 pin connector1 D-SUB 1:1 cable(any other (minimum 5 pin) connector will suffice.)As for the jitter algorithm I don't know if it is included, I asked the same question on this forum a few days ago.Maybe we should email the author?Good luck!Roel.

I was busy with other stuff and maybe missed the post about jitter filtering. Currently there is no jitter filtering implemented ins software as the electronics is quite accurate. Some users might like smoothed-out response but some would favor for instant response of the controls.If you need some filtering involved I would suggest to place a capacitor between pot slider and ground. This would even out the response and by choosing capacitor for your pot you can achieve your desired response behaviour. Try it and see if it helps you.Please note that this trick with capacitor won't work on gameport joysticks but this ATMega has a latch-and-hold ADC which makes it possible.Also note that this capacitor smoothing effect would maximal near the center of pot range and minimal near it's boundariesATMega8 datasheet states that best results are with ADC voltage sources with impedance of 10k and less. This basically means that axis pots below 20k are recommended.If you think that some software jitter smoothing is needed please let me know. I see the only use of it to achieve worn-out pots to last virtually longer.But I've seen some nasty examples of it's implementation. For example Hotas Cougar has actually 8 bits converter which is made to look like 10 bit resolution due to smoothing. I don't like this approach. The accuracy remains 8-bit anyway.Good Luck!Mindaugas aka MeanDog

Thanks for great answers!! Roel : thank you for the part list, very good! , and yes if you have the numbers and i can buy from the shop using internet, (live in denmark)) i will be glad. Mindaugas : Great job you have done here, a lot of work in it i can tell :) Just to be sure: To minimize jittering you recomend to use 10k pots instead of 100k ? I think i will build it without capacitators, and if it is a problem i will ad them later.Do you have an ide of what capacitators to use ? -Mugin

Yes, I would recommend to use 10k-20k pots as they would be more prone to noise and better matched to ADC inputs.100k pots usually come as tradition from gameport interface joysticks.For capacitor I would think of 47nF ones with 10k pot to start with. This would give around 100ms RC timeconstant near the pot center position. But with experiment you may find a value that would work better. Calculation is Timeconstant = C (in Farads) x Rpot / 4 (in Ohms). Note that pot value is divided by 4 because GND and VCC are treated as single terminal so pot resistance/impedance is calculated as two half-pot-value resistors connected in parallel.

Everything's generaly fine there. Just two notes:C1 capacitor is 10-100nF newest version so far is 1.2, not 1.3. You are a bit ahead of time :)

Also the resistors for the programming card are listed as 330Kilo Ohm.I've just been looking at the schematics for the mjoy controller.I'm a little confused by the latest diagram (USB_Joy.pdf) by LazyCamel.Are the pin outs on the USB socket correct? They seem to be the reverse of original diagram.I have built the circuit to the original diagram and was going to change it to match the later version. I just want to clarify what changes are required before I heat up the soldering iron.Regards.--------Scottie

Svieks meandogWhile I haven't worked out the equations, seems odd to me that the time constant would remain the same relative to the pot arm given that node

LazyCamel has a bit different layout of pins which he chose to change and it is more convenient to solder. That's why his schematic version stream starts with 2.Even if this schematic is more convenient I chose not to change it to keep software compatible with initial schematic version 1 stream which quite a few people have already built for themselves.Today I published a new schematic version 1.4 of ATMega8 MJoy together with parts list to make it easier when going to the shop :)This is the most complete version at the moment and includes ISP programming adapter on the same sheet.It can be found here:http://www.mindaugas.com/projects/MJoy/Sch...ematic_v1.4.pdfParts List is here:http://www.mindaugas.com/projects/MJoy/Sch...tsList_v1.4.htmATMega16 version is comming with enhanced features... Stay tuned :)

Sveiks brother Balt!You are right.I wasn't telling that time constant will remain the same. For sure it will change as the pot's tap (or arm) move from one end to other. I was giving an example of timeconstant calculation when the tap is in the middle. When tap is moved from the center to one or the other side the timeconstant will decrease and will be virtually zero at the extremes.

I managed to convert the circuit to match LazyCamel's diagram. The numbers on the USB socket on hisdiagram are the wrong way round, but I managed to figure it out. The ciruit seem to work OK, although I'm not sure that the DIAL & SLIDE axis are working properly. With the resistor at it's lowest position (0 Volts on the input of the ADC) the 'raw data' reading on the calibration screen shows '0' but the graph above it shows 50%. With the resistor at it max position(5 Volts on the input of the ADC) the 'raw data' reading is '-1' and the graph shows 48%.With the resistor half way, the 'raw data' is '127' and 100% on the graph. Touching the resistor upa little changes the 'raw data' to '-127' and 0% on the graph.Is that the correct behaviour? It seems a little odd to me.--------Scottie. BTW : a 100K variable resistor was all I could find in my junk box, but it seems to work OK on the other axis.

I think this is normal behaviour of uncalibrated axis. If you move a resistor to full extents and leave it for 15 seconds it should store the calibration infromation and behave normally. Anyway try to recalibrate again by pressing a button when powering on the joystick. If this does not help let me know.

I just noticed that 'AREF' on your new schematic is connected to ground via a 0.1uF capacitor. Is that correct? It's connected to 'AVCC' on all the other diagrams.Looking forward to your new version with 8 analog inputs?Cheers.-------Scottie

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.