Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.
|
Forum Index : Microcontroller and PC projects : Standardization Please .. ?
Page 2 of 5 | |||||
Author | Message | ||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4036 |
Sorry Mick, but I do not believe this to be a true statement of reality . There is a standard for a "Generic USB gamepad" which looks like a SNES gamepad. The PicoMiteUSB firmware ALREADY supports such gamepads (and also PS3/PS4 gamepads) with the DEVICE GAMEPAD ... command and the DEVICE(GAMEPAD ...) function. Best wishes, Tom Edited 2024-09-13 21:09 by thwill Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9106 |
If the decision is to go USB-HOST as the standard then the particular controller doesn't matter. They all present exactly the same coding I/F to the Basic user so unless you use features such as the analogue sticks on a DualShock then the Basic program will work for pretty much any of the supported controllers with the SNES-USB as the baseline. I think the USB host connectors should be 2 dual stacked horizontal (same connector as the CMM2 but 2 of them) |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6779 |
As I said, I'm fine to use USB. I suggest that we have a standard USB controller compatibility test program. We can then check that any given controller will work for games. Games writers should fully comply with the Generic USB Gamepad. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4036 |
But presumably the "standard" is an internal USB hub and 4 USB connectors, not how they are aligned. Once we have a first "standard" compliant h/w implementation then I'm happy to do that, assuming someone else doesn't beat me to it, it should be "trivial". That's sort of a "none-issue", Peter's existing DEVICE GAMEPAD ... and DEVICE(GAMEPAD ...) API provides very limited scope for maneuver, e.g. should button A fire, or should it reverse the polarity of the neutron flow ? ... either way button A returns the same response to the MMBasic program. Best wishes, Tom Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6779 |
It's not really a "non-issue". It's a case of people actually getting and using a generic USB controller and not falling by the wayside to include keyboard compatibility etc. The thing is, games should *always* use the generic USB controller by default, possibly with an option to use something else. They may also have the option to use additional buttons - but it should be an option unless it's impossible to do otherwise. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4036 |
Nobody has actually said it, but I believe this is what we are talking about as an example of the generic USB controller at a reasonable price: https://thepihut.com/products/raspberry-pi-compatible-usb-gamepad-controller-snes-style Note it also has two shoulder buttons (L & R) that you can't see in this picture. Best wishes, Tom Edited 2024-09-13 21:52 by thwill Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6779 |
I have a couple of those but I don't write games. :) Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4222 |
@Peter, Are those the controllers that are compatible with the build in API ? That paints a picture of where we are going. Guys, I like this discussion. Maybe it could have been made earlier(with the 2040), but I think with the arrival of the 2350 this is the sublime moment. And we can now agree on a (part of) a standard for the next year(s). There are of coarse other topics to agree on, but these need to wait a bit on what we can achieve with DVI and PSRAM. I will focus on getting a USB platform running, order such controller, and port all my games (I did not realize there where so many..) to the new controller. Be patient, WINTER IS COMMING, and we'll get there... Thank you all for supporting, Volhout PicomiteVGA PETSCII ROBOTS |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4036 |
Unless we wanted to standardise on the (divisive) Wii controllers this has only really been possible since Peter was motivated to develop the PicoMite USB host firmware ... and that still hasn't had an official release / updated manual. Best wishes, Tom Edited 2024-09-13 22:25 by thwill Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4222 |
@Mick, 2x dual USB-A. HDMI, 3.5mm audio...does that sound familiar ? I feel a RP-3B size board. At the place of the ethernet connector, we put the USB-B for power/console. The dual USB's fall into place, the HDMI and audio also. The SD card atthe bottom. And the remaining GPIO pins go to a smaller header at location of the 40 pin. You already (almost) did this for the 2040 with VGA. But now it is a 1:1 connector match. And we simply use a Pi-3 housing. Plenty to choose from. No drilling, no milling, just click into place. Volhout PicomiteVGA PETSCII ROBOTS |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6779 |
That will have to wait for the moment. I need more SMD skills to fit everything in. lol As it is the hub won't fit. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4222 |
Mick, What about doing it Peters way ? Have JLC fit the CH340, the hub, the HDMI and it's tiny series resistors, the (SMT) audio filter, 3.5mm connector, the SD card slot (*). And leave the through holes (connectors, voltage regulator, pico headers) for human assembly ? Volhout (*) the SD card is bottom side, JLC may ask extra for it. So maybe we should do that one manual. EDIT: Sorry Mick, I am getting carried away, loosing contact with reality. Why on earth would I spend 12 pound on a Pico2-plus(ex shipping), and 20-ish pound on a kit main board, where as for 30 pound I can get a real PI-3. Edited 2024-09-13 23:55 by Volhout PicomiteVGA PETSCII ROBOTS |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4036 |
Also, really rather soon now (crosses fingers) I will have an MMB4L that will run the same games on that Pi3 with the same generic USB controller and real HDMI (with audio). Of course it's NOT BARE METAL so there will be the Linux hurdle to jump. Best wishes, Tom Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6779 |
Simples. I want to build it myself. I know it's horribly old-fashioned to do things this way when JLCPCB will build it for you, but where's the fun in that? No chasing half way around the world for components, no solder fumes, no singed fingertips, no swearing as your last 0805 resistor falls into the carpet... I think some people like such things. I know I always did. :) Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
Sasquatch Guru Joined: 08/05/2020 Location: United StatesPosts: 362 |
"The wonderful thing about standards is that there are so many of them to choose from?" This quote goes way back to the days of RS-232 when there were 25Pin, 9Pin, Male, Female, with DCE or DCD pin-outs and all sorts of adapters, gender-changers, null-modem cables etc. It was all the same "standard" but it could be a bit of a chore getting it connected. Also, computer networks were in their infancy and there were several competing "standards" for those as well. -Carl |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4036 |
Yup. With a @matherp SMD design I can appreciate the "commercial prototype" quality, however without the commercial packaging it can feel a little soulless. On the other hand with a @Mixtel90 design I can almost feel the warm glow of the valves . Best wishes, Tom Edited 2024-09-14 00:50 by thwill Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
robert.rozee Guru Joined: 31/12/2012 Location: New ZealandPosts: 2350 |
getting a RPi zero/1/2/3/4/5 booted quickly is not the mountain that some make it out to be, bearing in mind that for a games machine an enormous portion of any operating system can be stripped out to speed up the process. even without looking at the various bare-metal options, a RPi can be booted to a command prompt in a few seconds. in my opinion, going forward down the RP2350 path we need a module with: (a) correctly matched data paths running from the RP2350 chip to the (on-module) HDMI socket, (b) a linear core (1v1) regulator replacing the on-chip switcher, (c) a linear 3v3 regulator to regulate down from Vusb (5v), (d) the USB D+ and D- lines brought out to pins rather than a socket, (e) the obvious of onboard flash, boot button, SWD socket. RTC, USB hub, audio, SD socket, power socket and switch can all be external to the module. if going down this path, we might as well settle on the 80-pin version of the chip that has 48 GPIO pins. from the software perspective, the USB keyboard support needs properly tested - as others have mentioned it is still in a 'only just works well enough' state. and, very much my opinion only, we need to go through a period of refactoring and consolidation to as much as possible simplify any user configuration that is needed before jumping into writing BASIC programs. cheers, rob :-) Edited 2024-09-14 01:44 by robert.rozee |
||||
PhenixRising Guru Joined: 07/11/2023 Location: United KingdomPosts: 857 |
@thwill I love socketed DIP because I'm in the trenches and stuff needs fixed. However, for the cost of the matherp CMM2....what the heck, here's a spare I will still always use socketed opto-couplers and line receivers and throw a handful of spares in a "care package". It's all good Edited 2024-09-14 01:22 by PhenixRising |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6779 |
Here's EasyEDA, Rob. Have fun. :) We don't know what problems there are with the 80-pin chip yet. The PGA2350 doesn't overclock as well as the Pico 2, but there may be other Pimorini-related issues because neither does their Pico 2 Plus. Whether the on-chip switcher even *can* be replaced is something else. I think I saw a comment somewhere that it's an intrinsic part of the system and it can't. Don't quite me on that. A linear reg from 5V to 3V3 is trivial. I'm using that anyway. The USB data lines from the RP2350 have to be disconnected from the USB hub before MMBasic can be loaded. I know this because I've tried it. There has to be some sort of disconnection system be it a plug and socket or removable links. Your idea of correctly matched data paths to the HDMI socket has merit, but I suspect won't be all that easy. You have to have the current limiting resistors for a start - the Pico can't supply enough drive to meet the 50R HDMI spec properly. USB support uses software modules written by someone else. It's not part of MMBasic. Whether they update, test or modify their code is up to them. :) We can test it, yes, but we can't really do anything other than report back if we find anything. ===================================== Re. costs of pre-built boards. These are fine providing you can split the cost among several people. The cost per board otherwise seems to be about twice the price of buying components & PCBs and building your own. From reports that I've seen you're probably more likely to get one that works first time too. . Edited 2024-09-14 01:59 by Mixtel90 Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
robert.rozee Guru Joined: 31/12/2012 Location: New ZealandPosts: 2350 |
hi Mick, i'm pretty sure i've seen discussion somewhere about disabling the on-chip switcher so than an external 1v1 linear regulator can be used. the most important thing with the DVI data paths is keeping pairs close together, and making sure all 8 lines are of exactly equal length. someone will need to do some further research on this to find out the exact correct spacing between traces. at the frequencies involved this is all a bit of an art. re: the 80-pin chip being an unknown, you are right. even the finer details of the 60-pin chip are still up in the air, what with remaining unanswered questions around the E9 erratum. has anyone got a 80-pin version of the RP2350 yet? with the source to tinyUSB available, we should be (a) reporting back bugs to the developers, and (b) at least paring back the functionality exposed until we have something 100% stable. this may end up with us needing to limit ourselves to only a USB keyboard that the firmware assumes is always plugged in. cheers, rob :-) Edited 2024-09-14 03:01 by robert.rozee |
||||
Page 2 of 5 |
Print this page |