![]() |
Forum Index : Microcontroller and PC projects : CMM2 Joystick Interface
![]() ![]() |
|||||
Author | Message | ||||
TassyJim![]() Guru ![]() Joined: 07/08/2011 Location: AustraliaPosts: 6283 |
https://www.thebackshed.com/forum/ViewTopic.php?TID=8278&P=1#89699 Still needs pic32prog.exe running on the PC but saves the microbridge etc. Jim VK7JH MMedit |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10315 |
Good grief, I've no recollection of ever writing that ![]() |
||||
TassyJim![]() Guru ![]() Joined: 07/08/2011 Location: AustraliaPosts: 6283 |
A lot has happened in the 5 years since then... Jim VK7JH MMedit |
||||
robert.rozee Guru ![]() Joined: 31/12/2012 Location: New ZealandPosts: 2442 |
it is a port of this, the original published version for the arduino nano: https://github.com/sergev/pic32prog/blob/master/bitbang/ICSP_v1E.ino the code just accepts a stream of single-character ASCII commands, as outlined in comments at the start. these single-character commands are translated by the code into short 2-wire ICSP sequences manipulating PGD and PGC; each single ICSP sequence encodes a 4-phase JTAG transaction that writes TDI and TMS, and reads TDO. the very original version of the above code was in fact written in a few dozen lines of mmbasic code that ran on an MX150 (the original micromite). this was very slow - as i recall it took something like 15 minutes to program the 128k of flash on an MX150, but provided a proof-of-concept. the complicated magic is contained in pic32prog, with versions of this available for windows, osX (mac), and linux. programming a PIC32 is an interactive process, not just a matter of sending a fixed sequence of 0's and 1's to the device being programmed. there are multiple stages, with a programming-executive (PE) first downloaded to the PIC32's RAM and run, which then carries out the programming of its own flash. blocks of data are passed to the PE, the PE writes them to flash, then confirms that it is ready for the next block. the reason a 1455 (microbridge) or arduino nano is required is that there is no way for a PC to manipulate the PGD and PGC lines directly. believe me, i tried! a CMM2 could achieve this directly itself, but someone would still need to port the pic32prog source code itself to mmbasic, and the footprint of this code would be very big. while a technically interesting project, i can't see a great deal of use in doing so. better to have previously loaded the mmbasic interpreter onto your MX170, then write your joystick translation code in mmbasic. cheers, rob :-) |
||||
JohnS Guru ![]() Joined: 18/11/2011 Location: United KingdomPosts: 4044 |
while a technically interesting project, i can't see a great deal of use in doing so. better to have previously loaded the mmbasic interpreter onto your MX170, then write your joystick translation code in mmbasic. cheers, rob :-) It's a replacement for pic32prog that I've sent to CircuitGizmos i.e. an entire program with all the logic, including the PE. If ported to the CMM2 (I'd say using CSUBs) it could directly program any PIC32, including micromites. Whether it's worth the effort... I doubt it (who's going to use it?). John |
||||
CircuitGizmos![]() Guru ![]() Joined: 08/09/2011 Location: United StatesPosts: 1427 |
![]() ![]() NONchuk1a Gerbers.zip Next time I do a board order I will order some of these. Gerbers in Zip file if you wish to order them for yourself. Micromites and Maximites! - Beginning Maximite |
||||
TassyJim![]() Guru ![]() Joined: 07/08/2011 Location: AustraliaPosts: 6283 |
One thing I notice on the IBM joystick. You have catered for all 4 buttons but only 2 axis. Many IBM joysticks have a third throttle control and if you are emulating the Wii classic, there is the ability to support two joysticks using a joystick splitter cable. If nothing else, can you bring the two other pins out to a couple of jumpers to allow for their use. Jim VK7JH MMedit |
||||
CircuitGizmos![]() Guru ![]() Joined: 08/09/2011 Location: United StatesPosts: 1427 |
You have catered for all 4 buttons but only 2 axis. Many IBM joysticks have a third throttle control and if you are emulating the Wii classic, there is the ability to support two joysticks using a joystick splitter cable. If nothing else, can you bring the two other pins out to a couple of jumpers to allow for their use. Jim Thank you, Jim! That is the type of info that I didn't have. Micromites and Maximites! - Beginning Maximite |
||||
CircuitGizmos![]() Guru ![]() Joined: 08/09/2011 Location: United StatesPosts: 1427 |
Updated: NONchuk1a.zip ![]() Micromites and Maximites! - Beginning Maximite |
||||
![]() ![]() |
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |