Hacker Newsnew | past | comments | ask | show | jobs | submit | myself248's commentslogin

The thing is, making a 5v-only device PD-compliant is literally one resistor. It costs well under a penny.

It's pure ignorance, not a decision, but the lack of one. Lack of caring, lack of having an actual engineer involved, just slapping an oval-shaped port into a product where a trapezoidal port had been, and blindly thinking that magically makes it spec-compliant.

Or not thinking about the spec at all.

I return these devices too. Lots of them. My e-commerce returns over the last year are probably 50% PD non-compliance, 50% all other defects combined.


It's two resistors, actually. But they cost $0.0003 each (that's 0.03¢, or just around 3,333 of them for US$1) from distributors. Though there appears to be a bit of a stock crunch right now.

So... yeah.

The bigger issue is not really the parts cost, it's the fact that it adds an extra part to the design that has to be purchased and tracked and assembled and blah blah blah. This is the real reason it often gets left off on the bottom-of-the-barrel products. Many times there is no other use for a 5.1kΩ resistor. And it might not even fit well at the cheap sizes (0603 or 0402), and going down to 0201-capable assembly factory flow just for these two resistors is not going to happen.


These companies are not manufacturing the device PCBAs, that is done by dedicated companies such as Flex. The PCBA manufacturing companies have warehouses of different resistors, and 5.1kΩ is extremely common. In fact, most PCB resistor values are quite flexible, to save on SKUs (in practice, to save on loading another carrier on the PnP machine) often if a specific resistor needs a specific value then all (or most of) the other resistors will use that value.

I was speaking a little more towards the AliExpress end of things, which is a sadly high proportion of the devices out there. For the midsize CMs and up, you're right, they've got piles and piles of stuff and don't charge by the reel loaded.

5.1k is a surprising resistor value, a lot of modern designs don't really have anything else in that area. I'm often not able to combine anything with it when I'm cost reducing. 4.7k, sure, but there aren't a lot of those either... 2.2k is just not close enough a lot of the time (or ends up as 1k), and same for 10k. So, sadly, it often does stand alone.


Heh, I would've argued the opposite.

5.1k is about the middle of the generic "some kind of pullup" range of 1k-10k, so it's a perfectly fine option for strapping resistors or for a non-critical I2C bus.

4.7k would of course have been better because it's an E6 value (+-20 via the spec) rather than E24, but it's still a value I would expect any PCBA house to have in stock at all times.

But I agree, 1k or 10k would be the obvious no-brainer. I reckon there's probably a technical reason for it, as it does act as a voltage divider together with the Sink pullup, so perhaps there are some restrictions there with the multiple values it needs to distinguish.


The 4.7k "default pullup" is an old-school 5V TTL thing. It works really well for TTL inputs. But CMOS inputs don't really care very much, especially if they aren't toggling or if there's a bit of hysteresis on the input stage (which there often, but not always, is). There seem to be 10k resistors in every design so CMOS pullups often end up at 10k. If power savings are a concern, especially if you need a tie-off more so than a pull resistor, 10k-100k is a perfectly valid range, and I've even used 1M in extreme circumstances.

Usually 5k is a little too weak for I²C. Rule of thumb is that you want to be around 1mA, so for a 3.3V system you start at 3.3k. Generally 1.8k to 3.3k ends up being a pretty common range. More current is usually better than less current, so even at 5V where 4.7k might be OK (if you're even at 5V Vdd these days), going stronger is often a good idea. If power savings is a concern, or if timing's somehow important (did you find another touchy badly behaved I²C device? say it isn't so!) then it might be time to break out the active pullup structures (mostly current source type things). Once this is done and tested it tends to get fossilized, for good reason, so this one won't usually get swept up in a standard-effort cost reduction pass.


Interesting, thank you. That is an end of the market that I have not seen.

I wonder if PD will cause a comeback of that value as more and more legacy device refreshes move to USB-C plugs.


There's an otherwise decent shortwave radio out there that was originally charged with a micro-usb, then they released a "new" USB-C model...except it will only charge with a 5V brick because they literally just swapped out the ports. Really annoying.

Oh man, please tell me it wasn't the CC GP-7. I have the micro version and have been hemhawwing about updating it.

You mean the CountyComm? If so, I'm 99% certain that radio is a rebranded Tecsun PL-360, which is in fact a 5V. I love Tecsun, but why they would cheap out on the USB-C refresh is beyond me.

https://www.tecsun-radios.com/product/pl360-radio-receiver/


Looks more like the 368, but yeah. Good call!

Sounds like the juice may not be worth the squeeze on a USB-C refresh if I have to use an A-to-C cable for it anyway


I'd imagine that a significant portion of the shortwave radio community is capable of soldering in the two resistors.

If the board had unpopulated 0802 pads, I absolutely would be.

Is there not enough room for a through-hole resistor to just hang out in the air? Most devices I've opened seem to have more than enough room, so long as one is skilled enough with the small chisel tip.

Yeah, it's a significantly trickier proposition when the pads aren't there.

The contacts are in the connector, you just need to bring them out and get the resistor on them, which is frankly a pain I shouldn't have to endure when USB-C has been out for 12 years. None of this is rocket science, the manufacturers just aren't feeling the pain.


Only if the device's consumption is < 2.5W, which is what a USB 2.0 computer USB-A's data port limit is. Anything above that, compliance gets a bit more involved and complicated.

Yes, but that's the case with microUSB as well. In fact, refusing to work with underpowered source is easier with USB-C.

It's certainly not easier. Type-c power sink can advertise USB default, 1.5A or 3A easily. USB default is not necessarily underpowered. You still have to use BC1.2 to see if the source is actually underpowered.

If you're just a microUSB device, you'll also check based on BC1.2. And you can ignore CC/Rp check. It's actually simpler.

I guess you can assume anything advertising itself as USB default is underpowered, but then you'd be wrong.


It sure is. You can just spec it to require a USB-C 7.5W/15W source and then you can gate the operation behind a simple analog circuit and Bob's your uncle. No such way with microUSB until you implement BC1.2, which you don't have to support with USB-C (though it's certainly nice when you do).

> but then you'd be wrong

Not at all, it would just miss signaling it's not compatible with, just like with all sorts of proprietary signaling protocols out there. The point is that with microUSB you have no other way, you have to implement BC1.2 (or some proprietary spec) which is often more complex than a comparator on CC line.


Yes, that way your type-c device will also be refusing to work with many sources that can provide enough power, that is with anything advertising USB default power.

For proper detection of actually underpowered source without awful lot of false negative results, you always need BC1.2. You're just adding type-c CC pins circuitry on top maybe to detect what power is availabe in non-default-usb-power scenarios. If you just use CC pins for detection, a lot of your users will not like you, and will not understand why they can't charge your type-c port featuring smartphone or whatever with a perfectly capable 2.1A/5V charger connected via USB A-C cable.

Been there done that.


Yes, that's all true. It's also irrelevant, as USB-C devices aren't required to support BC1.2, and the same concern applies to any proprietary signaling method you won't handle. "This thing requires 15W USB-C power source" is easily understood, regardless of existence of >=15W USB-A power bricks using QC3.0 or whatever else.

Supporting BC1.2 in a smartphone won't make it any more complex than it already is (been there done that). We're talking about simple equipment here, where handling USB-C power correctly can be easily done without any ICs.


How many times have the cops busted a dealer who turned out to be another undercover cop?

I think that's even more significant, since it's measuring people who cared enough to click the form in the first place, which is juicier than just page loads.

The trick is that the scratches need to recur at the right revolution rate, while the bandwidth needs to slowly decrease as the stylus nears the end of the groove. Hmm.

Absolutely this. Blind application of a technique, not understood by the one applying it, is jarring. IMHO it insults the era from which they were trying to mooch cool points.

If you're hiring from the town where Kool-Aid is headquartered, don't be surprised if most of the candidates drink a lot of it.

And weirdly, neither does Klipper, despite having all the resources in the world to do so. Just not a priority since slicers don't produce code like that, and 99.999% of Klipper's job is to eat whatever a slicer sends it.

So suppose I attached an extruder to a Haas mill or something...


And smart NICs are moving significant amounts of compute directly onto the network interface, though I haven't seen anyone combining a GPU and a 100GbE NIC into a single part yet.

Where does a few more steps of evolution take us? A wide path between a few heavy devices, and then the CPU off to the side just orchestrating the data flow?


Or someone found server.domain/path/subdirectory/resourceX and was like "shit, I was hoping to find resourceY but I can't find a link to it, I wonder if I just click in my address bar and change the X to a Y", and voila, resourceY is right there.

To some of us, this is elementary navigation. Like going up the stairs if the elevator is out. Often it's faster than waiting for the damn elevator, too.

To others, it's cybarrrr-criiiimeeee!!!!!!11111one


People have already been imprisoned for this, one case I can think of off the top of my head is https://en.wikipedia.org/wiki/Goatse_Security#AT&T/iPad_emai....


It has a name in the security industry, Insecure Direct Object Reference (IDOR) [1]. Somewhat related to Path Traversal [2]. Unfortunately CFAA is very broad and can be (mis)interpreted in wild ways.

[1] https://cheatsheetseries.owasp.org/cheatsheets/Insecure_Dire... [2] https://owasp.org/www-community/attacks/Path_Traversal


Continental Airlines had an active frequent flyer community. A student emerged as a legendary figure (think "Hunger Games") after she noticed that Continental announcement URLs were numbered sequentially, and a not-yet-released announcement rather unfavorable to current elites was there for anyone to read. Quite the brew-ha-ha. Continental retreated.

She was nevertheless welcome at a frequent flyer event hosted by Continental in Houston, where she beat me at poker.


Cyclomethicone is getting hard to get depending on your jurisdiction. I think it's shelf-stable though, so if you think this might be something you want to do in the future, maybe get some now.

(But also, the disks aren't getting any younger. Do it now.)


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: