Live data from Hacker News

Jacdac Plug-and-Play for Microcontrollers

microsoft.github.io

21–27 of 27 posts

Re: Jacdac Plug-and-Play for Microcontrollers

#21
post #11

This popped up three years ago (including on HN) and then disappeared. How did it end up at Microsoft? https://web.archive.org/web/20191130155328/https://jacdac.or... I worked with a similar single-wire protocol when working with a large German appliance maker. This looks pretty close to the same idea, they even used PCB edge connectors like this to save a few pennies. I'll just add that getting the software and hard…

It was developed IIRC by an intern as part of his thesis and included in the microbit tooling on makecode. After this it got more standardized, but they went to a less obvious connector (Kittenbot came with a standard jack) and now they describe a custom plug. This increased the barrier of entrance and building came less appealing to me.

The main issue with audio jack cables is that they are not designed to carry much power (Jacdac cables are rated at 1A). You get different voltage drop depending on what cable user bought at the gas station. This is a problem is you want to run a small servo or even a few neopixels on a module.

Another issue is that the connector often short while plugging-in and out which may cut the power to your entire bus, resetting everything. Not a great end-user experience. There is also a risk users will plug Jacdac to their headphones, possibly burning them.

Re: Jacdac Plug-and-Play for Microcontrollers

#23
post #13
post #9

Earlier quoted context omitted.

From the top of my head: SPI, I2C, 1-wire, UART/RS232, RS485, CAN and a bunch more I'm not remembering

I guess the differentiator is that Jacdac is a higher level protocol. RS232, RS485 and CAN are just 'send some data down this pipe' deals, and RS232/RS485 don't even have a particularly standard way of framing data. I haven't used SPI or I2C enough to know about them, but from looking them up, they also seem to just offer a way to send arbitrary data. Jacdac both offers a standard way of using devices (from the websi…

Indeed! Lots of Jacdac is not about the cable or the UART-based signaling, but about the service standardization and definitions.

Now if only we could get all these silicon vendors to put Jacdac directly on their current I2C/SPI sensors... It's definitely possible given that basic Jacdac implementation runs on PMC150C with 64 bytes or RAM and 1.5k of ROM, but it may be a hard sell since they seem to like lock-in.

Re: Jacdac Plug-and-Play for Microcontrollers

#24
post #19

This popped up three years ago (including on HN) and then disappeared. How did it end up at Microsoft? https://web.archive.org/web/20191130155328/https://jacdac.or... I worked with a similar single-wire protocol when working with a large German appliance maker. This looks pretty close to the same idea, they even used PCB edge connectors like this to save a few pennies. I'll just add that getting the software and hard…

Indeed, if you know how to design a custom PCB, have it made, and write embedded software, then Jacdac might be an overkill for you. The Qwiic cables have to be really short (Jacdac cables can be a few meters) and are not designed for easy plug-in and out thousands of times. Also, the I2C devices are not standardized meaning you need a new driver in your software environment for every single accelerometer. Finally, I…

But doesn't Jacdac require PCB customization as well to make that edge connector work?

Re: Jacdac Plug-and-Play for Microcontrollers

#25
post #19

Earlier quoted context omitted.

Indeed, if you know how to design a custom PCB, have it made, and write embedded software, then Jacdac might be an overkill for you. The Qwiic cables have to be really short (Jacdac cables can be a few meters) and are not designed for easy plug-in and out thousands of times. Also, the I2C devices are not standardized meaning you need a new driver in your software environment for every single accelerometer. Finally, I…

But doesn't Jacdac require PCB customization as well to make that edge connector work?

Eventually, you'll be able to buy Jacdac modules, brains, and cables.

Re: Jacdac Plug-and-Play for Microcontrollers

#26
post #16
post #15

Earlier quoted context omitted.

Ah, was that the origin of the name I wonder? Definitely would have been a nice idea. I'm also not fond of the custom connector.

Although, thinking about it, I wonder if the connector is designed for sequencing (power/ground first, then data) and if the linear insertion of the jack plug caused issues with that, since when the plug is being inserted the connector nearest to the outside contacts all three of the rings on the jack in turn.

Yep, it wasn't perfect and might cause issues with shorting the terminals briefly.

But this wasn't originally for rocket science, but simple DIY projects or kids projects. If repositioned it will have a hard time getting adopted.

Re: Jacdac Plug-and-Play for Microcontrollers

#27
post #10
post #9

Earlier quoted context omitted.

From the top of my head: SPI, I2C, 1-wire, UART/RS232, RS485, CAN and a bunch more I'm not remembering

None of those has service advertising (only enumeration). RS232 is not even a buss protocol,

It can be. K-bus in BMW and Rover cars is (was?) RS-232 plus collision sensing running at, I think, 19.2 k bps. It has single ended drivers with pull up resistors instead of push pull drivers. The K stands for karosseri meaning body.
Post reply on HN