13 ms·
ACE: Apple Type-C Port Controller Secrets
- deleted 6y ago[deleted]
- gcblkjaidfj 6y agoSo, basically, apple copied samsung's debug hacks to "hide" data in the power lines of the USB plug? the "end result" of the appl feature is exactly the same as the samsung one described in this paper https://ntnuopen.ntnu.no/ntnu-xmlui/bitstream/handle/11250/2632162/bookchapter.pdf https://ntnuopen.ntnu.no/ntnu-xmlui/bitstream/handle/11250/2...
- Roritharr 6y agoOnce again i'm amazed what ALSO has a processor in it. I'm wondering if at some point I'll just see it as normal that nearly every device, no matter how static it may seem, has more processing power than my first computer.
- cesaref 6y agoI think the insight is that designing and manufacturing bespoke silicon logic is much harder than slapping an off the shelf ARM core into a design.
- amelius 6y agoDesign is relatively easy. Manufacturing is the hard part.
- ChuckNorris89 6y agoPretty much every microSD card has had an ARM cpu core in it since forever. The Bluetooth radio chip in your phone and the RF chip in your car's key fob already have multicore CPUs inside. Even your optical mouse has a multicore CPU in it to handle image processing and translate the optical feed into motion packaged into USB HID frames. Your fast phone charger has a CPU in it to monitor and negociate power delivery to not burn down your house. Even your basic budget electric toothbrush has a 4-bit CPU inside it made by Swatch. CPUs cores are in everything these days [happy NSA noises]
- userbinator 6y agoPretty much every microSD card has had an ARM cpu core in it since forever A lot of them use 8051, presumably because it's cheaper and smaller: https://www.bunniestudios.com/blog/?p=3554 https://www.bunniestudios.com/blog/?p=3554
- ChuckNorris89 6y agoThe older ones for sure, but all the modern ones have moved to ARM7-TDMI then to Cortex-Mx cores.
- makomk 6y agoSome of the more, ah, cost-reduced Bluetooth chips have 8051s or all kinds of weird, proprietary processors, presumably because the per-chip licensing fee for ARM is too much at that end of the market or something.
- consp 6y agoI've worked with TI BLE chips which were 8051 variants. Took me back to original CS classes as it is a very simple core with limited registers but can still be used to perform all the bluetooth functions.
- trevyn 6y agoIIRC, the BLE stack on those was a separate (undocumented?) core; the 8051 was for user software that gave high-level commands to the BLE block through magic registers. Still fun to program, for sure.
- bb123 6y agoThis fascinates me. Is there a website anywhere that is collecting these sorts of use cases? It seems truly mind blowing something as simple as an electric toothbrush would have a processor in it.
- 6y ago
- exged 6y agoAlmost everything has at least an 8-bit MCU now. 32-bit MCUs are also extremely common now, and even simple ones like the ARM Cortex-M0 are competitive with a 286/386 (albeit with less memory / no MMU). A rather surprising number of devices run very powerful application processors. An amusing example is Apple's Lightning to HDMI adapter, which has an ARM SoC with 256MB of RAM and boots a Darwin kernel in order to decode a H.264 compressed video protocol. Depending on what exactly they put into it (wouldn't be surprised if they borrowed the Apple TV chip for a relatively low-volume product like this) it may be more powerful than a fairly recent computer.
- pabs3 6y agoHas anyone tried to run Linux on that Apple adapter?
- sunpazed 6y agoObligatory “can it run DOOM?”
- sunpazed 6y agoLooks like this dev has patched the HW and has shell access https://twitter.com/nyan_satan/status/1322329047779713024?s=20 https://twitter.com/nyan_satan/status/1322329047779713024?s=...
- buildbot 6y agoThat’s delightful! Anyone want to buy a few and make the first cluster of HDMI adapters?
- reaperducer 6y agoObligatory “can it run DOOM?” Imagine a beowulf cluster of them.
- daniellarusso 6y agoThe first time I saw that adapter and realized it was basically an external video card, not a pin breakout, very eye-opening.
- gspr 6y agoI'll start freaking out when radios start appearing in places like this.
- canofbars 6y agoThe real problem I see is when IoT crap starts getting 4/5g modems with their own network plans so they can spy on you even while not connected to wifi
- M2Ys4U 6y agoThey already do. I was looking at a sensor package (light, temp, humidity, particulates) earlier and it comes with a cellular modem and a free SIM with a modest data allowance for 2 years to send readings to the cloud.
- xxpor 6y agoI wish Zwave/zigbee were more practical to use. I'm not too worried about someone local pulling readings out of the air, but giving all of this crap access to my wifi, relying on cloud services that could go down at any time, and even adding a bridge straight in (your SIM comment) is just rediculous. For things like cameras or other high bandwidth applications wifi makes sense, but for the usual sensor/switch stuff, there's no need for a full IP network. Plus, all of the stuff controlled locally means the latency is sooooooooo much lower. It's awesome being able to hit a switch in the homeassistant app and have the corisponding plug or light turn on instantly. It's like you're flipping a physical switch.
- conradev 6y ago> I wish Zwave/zigbee were more practical to use. That is essentially what Thread is: https://en.wikipedia.org/wiki/Thread_(network_protocol) https://en.wikipedia.org/wiki/Thread_(network_protocol) It takes the Zigbee protocol, but adds encryption and makes devices IP-adressable. All of the major players are committed to supporting it, too!
- frederikvs 6y agoAnother thing to consider : more and more single-use items also have processors and electronics in them. At what point will disposable electronics have more processing power than, say, the Apollo flight computer? A couple of examples that I've noticed : There's a sports good store near here where they attach some form of RFID tag to each item (including individual protein bars), to automate the scanning. That means these are RFID tags intended to be scanned exactly once. There's also the case of "digital" pregnancy tests, which consist of a regular paper pregnancy test, a processor to read out the results, and an e-ink display to show the results. All of this is included in the single-use disposable predictor stick.
- mhh__ 6y ago> At what point will disposable electronics have more processing power than, say, the Apollo flight computer? Already way way way way past that point. There's an article that does the rounds on here about it, but I can't remember the name.
- Acinyx 6y agoThose RFIDs make it possible to not just scan them when the article gets bought, but also to very easily scan the inventory of the whole store by just walking through the store with a scanner. Just as useful, although currently still more likely to be done with barcode scanners is to identify the products in the logistics chain. Right now you need scanning ports with at least 4 cameras/scanners or humans manually scanning each barcode, with RFIDs the port would be simplified further.
- aftbit 6y agoThose RFID tags are pretty minimal though. Basically just a thin trace antenna and silicon die directly molded into plastic. https://www.youtube.com/watch?v=KAm7qAKAXwI https://www.youtube.com/watch?v=KAm7qAKAXwI I still agree that it's amazing that our society can make functional structures with feature sizes in the nm/µm ranges so cheaply that we can afford to throw them away.
- xxs 6y agoVirtually every power tool has a micro-processor inside. LED dimmers have micro-processors. Christmas LEDs (that can blink) have micro-processors in the control block. Compared to Apple II, they might have more computation power but usually not 48KBs of memory.
- imwillofficial 6y agoI mean, nobody would ever need more memory than that anyway
- 0xTJ 6y agoYou're basically surrounded by 8051 processors at all times. Tiny controllers, many probably OTP or mask-ROM, doing all sorts of basic management things.
- hinkley 6y agoIt’s been said before, about ROM chips for sure, but I don’t know if history necessarily agrees regarding other chips, that there’s a point at which the opportunity cost of “just enough” silicon is too high and so you end up with a choice between way more than you need for simple tasks, or doing without (eg, embedding that responsibility in some other chip). I think a lot of projects will be targeting ARM CPUs in the next era of computing, and I hope one day we will see entire processes moving off the cpu and onto peripherals. Give me a RAID controller that can run Postgres directly on it, or an SSD that can run SQLite. Give me a network card that runs eBPF, or even nginx.
- oxplot 6y agoUSB-C cables that support high current (> 3A) have a chip inside that communicates with the power source to let it know it can carry high current. Only then does the source advertise the higher power profiles to the consumer.
- naikrovek 6y agoEvery single SD card or MicroSD card has an ARM CPU onboard to track flash wear and to handle physical to logical block mapping. Everything has a CPU anymore.
- ngcc_hk 6y agoReading this makes me wonder whether there is a case of non-open hardware and software but forced open up Api. Using modular hardware the effort turned into various other components including Hp etc. Can private market survived with this. But at that same time if a few firm controlling all these can we be slave to these firms and countries. No good answer.
- pabs3 6y agoApple USB-C controllers are essentially implementing a standard API (USB), but adding proprietary additions on top. I think the only thing to do is require open implementations and open standards.
- ChrisMarshallNY 6y agoWhat bothers me, is the prevalence of counterfeit and just plain bad-quality, cheap chips. These become so low-cost that corporate buyers pretty much have no choice, but to use them. The result, is things like expensive Bluetooth headsets, crapping out, after a year. I have been through quite a few. I/O ports see a lot of use (even virtual ones). Those are some of the hardest-working chips in a device. Not a good place for cheap dross; but they are also present in almost every device out there. Lots of money to be made. To give Apple credit, I think they are fairly serious about keeping the quality of their internals up to snuff. > cursed looking trampolines I like that. BTW: I do think this is an awesome write-up, and things like it, are why I like this place.
- Craighead 6y agoCorporate buyers always have a choice
- hyperdimension 6y ago> Those are some of the hardest-working chips in a device. (Mis)quoting Randy Fromm, "the things that work the hardest fail the most." I've always liked that quote, even though at the time he was referring to CRTs and the color output transistors (well, mostly). It generalizes to most anything electronic.
- xg15 6y agoApart from the processors, I'm amazed/bewildered that USB is now complex enough, that the power component of it has its own serial communication protocol (USB-PD), which also has a vendor registry and is extensible with proprietary messages - and by the looks of it, is already in widespread use for all sorts of things that have nothing to do with power delivery. Isn't this sort of reinventing USB on top of USB?
- TheRealSteel 6y agoWhen I lost the charger for my Nintendo DS, I was able to MacGyver one out of a piece of cardboard and two strips of aluminium foil. A quick look at the USB-A port spec, and pin locations on the similar-to-USB-but-proprietary DS charging port indicated it was a very simple construction. Amazingly, this hack worked successfully and I was able to have my yearly Elite Beat Agents binge. The hardest part was actually not building the "cable" but balancing and bending it all just right so that the pins actually maintained contact. Now, in the days of complex calculated power delivery negotiation, a hack like this would be impossible. And for good reason. Devices are safer now, more compatible with each other's chargers, and can charge faster. And the things we can do with USB-C/USB-PD are fantastic. I discovered yesterday that if for some reason I really want to, I can charge my MacBook Pro from my Android phone. But my little foil hack was fun at the time.
- bluefirex 6y agoI forgot to take my MacBook Pro's charger with me but could still charge it using my iPad's charger (USB-A to USB-C, mind you) - albeit very slowly. Still better than nothing, though. If only iPhones had USB-C…
- bluejekyll 6y agoYes, Apple seems to be very confused in this regard. They’ve committed to USB-C for all of their computers, but then are continuing to push lightning for all the other portable devices. It’s hard not to be annoyed at them about this. Enough to not buy Apple again? No, not yet, but I’d be lying if it’s not a reason why I’ve delayed purchasing a new device. It leaves a bad taste in my mouth, and makes me grumpy. So I’ll wait to upgrade to the last moment. On a similar note, it seems Nintendo with the switch has hobbled USB-C in some way that standard equipment won’t work with it, like charging over generic USB-C, is this accurate? Has Sony similarly hobbled the spec for PS4/5?
- feep 6y agoDebugging hardware for the protocol described in the article: https://github.com/AsahiLinux/vdmtool https://github.com/AsahiLinux/vdmtool
- ogre_codes 6y agoOne thing this article reminded me of is just how damned prevalent simple ARM based CPUs are in the world. Piles and piles of ARM chips running Linux, or in Apple's case some kind of Darwin derived OS. It doesn't talk about processing power, but these tiny embedded CPUs are far more powerful than a Commodore 64 or most early CP/M or DOS based systems which many small businesses relied on. Just crazy to think about.
- sweetlucipher 6y agoMy brand new M1 Mackbook Pro has only one working port. I didn't notice it until I tried to save something to a USB drive. Neither charging nor USB works on that port. Talking to Apple tomorrow. Hopefully still under warranty.
- etrabroline 6y agoCan someone summarize for us what this is used for? What features or functionality does it enable above and beyond what's in the common standard?