Microsoft MakeCode

Hardware Multiplayer (game)

they’re not analog for sure, its digital, i see pulses. one bigger pulse then a delay, then a stream

(i tried with both removing the D13 LED and with the LED attached. on the older UF2 it works both ways. on the newer UF2, does not work either way)

lemme see if i can get a scope trace for ya

Oh. The only thing taken from bootloader should be the JACK TX pin. You can compare what you get in https://microsoft.github.io/uf2/patcher/ for both bootloaders (just drop current.uf2 in there)

here’s the old (working) jacdac with both connected/playing

TEK0000

here’s what it looks like with the code i compiled today. when disconnected, pulses from 0-3.3V.

TEK0001

When connected, pulses from 0-1.4V!
TEK0002

hmm - pygamer 3.7.0 bootloader UF2 has

image

and pybadge 3.7.0 bootloader UF2 has same

image

so im not sure what to check next :confused:

hiya @mmoskal @richard - any update or suggestion on a multiplayer game thats workin’ now i can test these cables with?

poke poke @mmoskal @peli we’d like to do a multiplayer game guide :slight_smile:

@ladyada does the game above not work for you? https://arcade.makecode.com/54386-28508-45239-82108

Works for me with two meowbits. They run their v2.7.5 firmware

After the game over screen, they often, always, loose sync (Connection lost on one of them). It even happens that one of the meowbits report a 020 error code (OOM) at that time.

1 Like

@richard if i go to that page in Chrome, click Edit Code, then click download i get this error

image

Ah, sorry! This game requires beta, I should have specified. Try this link: https://arcade.makecode.com/beta#pub:54386-28508-45239-82108

I was able to get this running on a Pybadge LC (didn’t test the actual multiplayer part, just saw the connecting screen).

yay that seems to work just fine, we’ll put the cables in the shop :slight_smile:

2 Likes

OK cable is here! https://www.adafruit.com/product/4342 works nicely :slight_smile:

2 Likes

What version of the bootloader worked with a multiplayer setup? I am using an Itsybitsy M4 for my custom arcade setup but v3.4 does not seem to work for multiplayer.

the bootloader has to indicate a pin for jacdac, which im not sure the itsy does?

Funny, so the PyBadge uses MicroUSB (JACDAC pin = 5th ID pin) instead. The Meowbit and Brainpad actually use a TRS (3.5mm) jack plug, which gets confused for a headphone jack.

So far, I haven’t seen any specification for this, but I believed @jamesadevine used the same jack plug for Project Alava as these cables are easy to come by. Any thoughts on making a choice for the spec?

On a sidenote: the Atari Lynx used 2.5mm jacks as part of their ComLynx system. It prevented the issues with thinking it is audio, but also these cables were cheap to get and provided a splitter to link them together

atari_lynx-comlynx-cable

One of the games that utilized this was SlimeWorld . Not the greatest game, but super fun with a bunch of people (up to 8). Another was BattleWheels with up to 6 players, Checkered Flag, etc. At this link you can see SlimeWorld with some game screenshots. It was a simple serial connection … but very useful!

2 Likes

hiya yeah we did not want to use a headphone jack because we use headphone for audio on the pygamer. this was a ‘free’ and easy way to make a connection cable. we’re hoping that next spec will use USB C connectors and that way gets to use one of the many available pins on USB C :slight_smile:

1 Like

Here are multiplayer demos for Arcade running on FW v3.4.0.

custom board and Meowbit:

two custom boards:

I used the TRRS module from Sparkfun for JACDAC connection. https://www.sparkfun.com/products/11570

1 Like