HN user

inferiorhuman

5,268 karma

Off to pastures not dominated by AI slop and AI slobberers. Adios HN.

Posts27
Comments3,323
View on HN
www.sfgate.com 1y ago

One of largest lithium battery plants ignites in Moss Landing

inferiorhuman
19pts15
old.reddit.com 1y ago

Ad-free Facebook is going away on December 3

inferiorhuman
2pts4
www.sfgate.com 2y ago

Cruise pauses entire driverless fleet after Calif. regulators suspended permits

inferiorhuman
2pts0
blog.phylum.io 2y ago

Rust Malware Staged on Crates.io

inferiorhuman
93pts58
www.sfgate.com 2y ago

Google Street View driver crashes after 100 MPH chase, police say

inferiorhuman
19pts9
www.sfgate.com 3y ago

SF community college without heat: 'It's hard to function'

inferiorhuman
4pts0
www.sfgate.com 3y ago

Oakland ransomware attackers leak 'confidential' data

inferiorhuman
1pts0
boingboing.net 3y ago

Top journalists and Mastodon banned from Twitter without explanation

inferiorhuman
13pts0
www.latimes.com 3y ago

Twitter suspends account that monitored Elon Musk’s jet; owner’s account banned

inferiorhuman
6pts6
www.ctvnews.ca 3y ago

Musk tweets link to an unfounded conspiracy theory

inferiorhuman
5pts0
github.com 3y ago

Rust's URL crate: Redact password in logs

inferiorhuman
2pts0
www.bloomberg.com 6y ago

Europe’s Doctors Repeat Errors Made in Wuhan, China Medics Say

inferiorhuman
6pts1
www.dnalounge.com 6y ago

DNA Lounge to close temporarily, will continue to pay its employees

inferiorhuman
2pts0
observablehq.com 6y ago

Marey’s Trains

inferiorhuman
56pts12
www.reuters.com 6y ago

Comac engineers miscalculated the forces that would be placed on the engines

inferiorhuman
62pts70
arstechnica.com 6y ago

Chrome’s data disaster: Browser update wipes out Android app data

inferiorhuman
1pts0
www.theglobeandmail.com 6y ago

Seaplane airline Harbour Air looking at switching to battery-powered aircraft

inferiorhuman
2pts0
www.reuters.com 6y ago

Carmakers and repair shops clash as automation upends aftermarket

inferiorhuman
1pts0
www.sfgate.com 6y ago

Caltrans planning to close Caldecott and Tom Lantos tunnels over power outages

inferiorhuman
2pts0
web.archive.org 7y ago

Naomi Wu Arrested by Chinese Police?

inferiorhuman
31pts15
www.hongkongfp.com 7y ago

HK police accessed full details of injured protesters, says lawmaker

inferiorhuman
1pts2
www.sfgate.com 7y ago

Uber drivers are reportedly colluding to trigger 'surge' prices

inferiorhuman
2pts0
www.airliners.net 7y ago

US GPS Outage impacting multiple airlines

inferiorhuman
4pts1
arstechnica.com 7y ago

Millions of machines affected by command execution flaw in Exim mail server

inferiorhuman
4pts1
aviationweek.com 7y ago

Ethiopian Max Crash Simulator Scenario Stuns Pilots

inferiorhuman
194pts162
avherald.com 7y ago

LATAM Boeing 777 suffers complete electrical failure on Dec 20th 2018

inferiorhuman
3pts0
www.csoonline.com 8y ago

Winners of the 2017 Pwnie Awards

inferiorhuman
2pts0
  Of course I wouldn't vibe code in a serious production project, but I'd
  still use an AI agent, except I'd make sure I understand every line it
  puts out.
So you value your ability to churn out insignificant dreck over the ability of others to use the internet? Because that's the choice you're making. All of the sites that churn your browser for a few seconds because they're trying to block AI DDoS bots, that's worth your convenience on meaningless projects? The increased blast radius of Cloudflare outages, that's a cost with foisting on to the rest of the internet for your convenience?

Thanks.

  Rust assumes a runtime, the standard library assumes a stack exists, a heap
  exists, and that main() is called by an OS;
Wrong.

Source: I'm writing Rust without a runtime without a heap and without a main function. You can too.

Sure, some do, but some are coming around and some were never there. Which is why it's important for a company like Adafruit to pick a manufacturer that is towards the open end of the spectrum. Unfortunately NXP isn't that manufacturer even if their silicon is more powerful.

Nah, it's a spectrum. Companies like NXP and Infineon are at one end. NXP wants a ton of personal information to access even the most basic docs on some of its chips, sometimes even an NDA. Infineon won't even acknowledge you for the most part.

Companies like STM, RP, and TI are at the other end. STM got super popular because they're cheap and the documentation is incredibly easy to get at. I think RP is following suit.

Renesas puts out some documentation, but it's really rough. Anything that has even a whiff of crypto is completely undocumented. They're also squatting on a few Rust crates where Espressif actually hired a Rust developer to work on their Rust HAL. The most comical thing is that while they version their reference manual they don't seem to update it and instead issue a ton of broad errata that apply to multiple manuals.

Before the acquisition Atmel's documentation was well written and organized.

Mostly I'm just leery of software defined peripherals being at the mercy of whatever community springs up around them, nothing specific. In terms of a Metro then yeah, something to slot in where the Due was absolutely with high speed USB, 10/100 ethernet, CAN FD, and all that jazz that wouldn't work on a $10 board. A SAMV70 successor to the Due?

NXP just seems antithetical to an open platform. Then again Arduino went with Renesas, and they're… not great.

Otherwise it's the openness that would pique my interest. SWD headers, yes 100%. But also the documentation. No half-assed SVDs, buggy closed source flash algorithms (Microchip), wholly undocumented peripherals (looking at you Renesas), stuff like that.

Right, but you're not really competing on processor speed. You're competing on maturity of peripherals where the RP doesn't really match up PIO or not.

Edit: I see you're comparing it to the 3.2 but I suspect most folks are going to be comparing your offering to the 4.x.

  Why do you say it doesn't solve loads of things? 
Because I'm sitting here twiddling my thumbs waiting for random pages to go through their anti-LLM bot crap. LLMs create more problems than they solve.
  Um if I ask an LLM about a fake band it literally say I couldn't find any
  songs by the fake band did you type is correctly and it's about a millions
  times more likely to guess correctly
Um if Apple wrote proper error handling in the first place the issue would be solve without LLM baggage. Apple made a conscious decision to handle "unknown" artists this way, LLMs don't change that.

Doubt it. Of all the issues I run into with Siri none could be solved by throwing AI slop at it. Case in point: if I ask Siri to play an album and it can't match the album name it just plays some random shit instead of erroring out.

  I've yet to see a MCU vendor ship without bugs. At least with ST,
  the MCU is very cheap.
Moving the goalposts much? You went from "lengthy errata doesn't mean anything" to "at least it's cheap", which was my point entirely. The STM32 lineup is cheap with a bunch of features, has readily available documentation, and that appeals to a lot of people.
  This feels more like an Apple bug to me considering how they work very
  well on Linux, Windows and Android.
Yep, that's the typical STM fanboi response and part of why I'm not so gung ho on STM products. It just feels… cultish and obnoxious.

Meanwhile I've been using Macs on and off since before USB came around and this is the first USB device I've found that glitches out like that. Given that Apple uses off the shelf USB silicon (TI) and the complaints about STM's older USB FS peripherals I came across I'd fully believe it's an STM problem.

What is entirely STM's fault is that they still market the F7 based devices (ST Link, Nucleo, etc) as being Mac compatible. They've also skipped out on putting that fun little wart into the F7 errata.

Of note neither the debugger nor user USB port on that board work with ARM Macs (guess how I found that out). You can connect it to a hub as a workaround but that may lead to data corruption (per the errata).

Also worth noting that the discrete STLink V3 dongles also use the F7 for USB stuff.

Also also worth noting that not all of the Embassy examples are set up to work with Nucleo boards. It's an odd choice but it is what it is.

  Just like security bugs, lengthy errata doesn't mean anything. A popular
  MCU will have bigger errata sheet because it gets more eyes on it.
Yeah, no. From all outward appearances STM stuff is basically rushed to market, fix the bugs later. We're talking basic shit like xyz clock input or watchdog straight up doesn't work. More advanced stuff like one of their USB controllers straight up doesn't enumerate with ARM Macs — still not in the errata or marketing materials BTW although the workaround may end up beating you with some other bugs. Or the one family that they had to completely rework the USB peripheral while subtly changing the part numbers. Or yeah no.

The spreading out over multiple documents is good organization.

No, it's really not. It's things like reading up on a peripheral in the reference manual and then trying to figure out which pins you can use with it. Some vendors will put that in the section with each peripheral, most will include a table within the RM, and STM splits it up into multiple documents — per variant within a family because the families are often loosely related.

None of this stuff is offered up in printed form, they could at least hyperlink it (whether intra- or inter- document).

It's not that surprising really. You've gotta cut costs somewhere.

This would've been years ago. Both MacOS and iOS were insanely buggy (Tiger era). I think the lack of momentum is due to the fact that CardDAV is pretty darn simple, and CalDAV is… idk. Complex yet mature?

Embassy provides some traits, but it's pretty much expected you'll be using traits from embedded-hal (both 0.2 and 1.0).

  IMO one of the big reasons Arduino stayed firmly hobbyist tier is because
  it was almost entirely stuck in a single-threaded blocking mindset and'
  everything kind of fell apart as soon as you had to do two things at once.
I think Arduino also suffered because they picked some super capable ARM chips and weren't really prepared to support people migrating away from AVR. Even the Uno R4 is obscenely complex.

Conversely Embassy suffers from being immature with some traits that haven't really been fleshed out sufficiently.

STM is popular because their lineup is cheap, offers a lot of features, and the documentation is readily available. The flip side is that their errata is lengthy, the Rust HAL is complex to support lots of different designs under the same product names, the documentation from STM is poorly organized and spread out over a zillion different documents, and Mac compatibility needs a gigantic asterisk. You can also get a BlackPill (get the F411 version with 8MB flash) off of AliExpress for $0.99 from WeAct's official store. Unlike STM's own dev boards (Nucleo) you'll need a separate debug probe. Nucleos that'll give you a lot of breathing room can be had for $10-15.

RP is also cheap and has that pretty sweet programmable GPIO and documentation that everyone seems to love. Adafruit has an RP2040 Feather for $12, RP2350 for $15, or with an ESP32-C6 (RISC-V) for $15. NXP has chips with similarly programmable GPIO but they're not well supported by Rust. The RP's PIO stuff is bonkers and potentially very interesting if you wanted to make random protocol dongles. VGA out? Why not?

Nordic stuff looks pretty sweet (and their Bluetooth support seems well loved) but is generally a bit expensive. Dev boards are available from micro:bit and Adafruit, among others.

I've been working on a HAL for an older Atmel SoC and absolutely loved the documentation. But Atmel stuff is expensive. Quality of the Chinese clones is iffy. I set myself back a bit by bricking my one board but am hoping to have a beta release in a month or so.

More recent Atmel/Microchip stuff (D21, D51, E51) has a HAL that the Embassy folks seem to have overlooked. You can get them on Adafruit boards at varying price points.

Or just pick something unsupported and start writing a HAL. It's a great way to get up close and personal with how everything fits together.

The one thing I wouldn't do is get some high end thing to start with. Teensy's (NXP i.MXRT) pack a lot of punch but even their native Arduino libs don't really let you exploit the power. STM's H7 series as well, they're way too complex to use as a learning tool even if they are fairly cheap.

I wrote a standalone CardDAV server ages ago and the biggest frustration for me was just how buggy the clients were. At some point I stopped self-hosting and moved on.

With the original Arduino Due there was some fun undocumented behavior with the MCU (an Atmel Cortex-M3) where it would do random things at boot unless you installed a 10k resistor. From booting off of flash or ROM at random to clocks not coming up correctly.

I swear I was doing just fine with it booting reliably until I decided to try flashing it over the SWD interface. But wouldn't you know it, soldering a resistor fixed it. Mostly.

So I think you and the person you responded two are talking about two different things: developing software with and without a HAL.

The rise in ARM brought about quite a bit of standardization. You're no longer bound to vendor specific compilers and toolchains. Insofar as you're willing to essentially reimplement large swaths of the HAL you're able to BYO dev environment. Of course all of this is also subject to the quality of the CMSIS packs and documentation put out by vendors.

This is true with Rust as well, and in this capacity Rust is quite mature and well supported for Cortex-M stuff (and to a slightly lesser extent Xtensa and RISC-V). The tools to create thin wrappers around the registers (so called Peripheral Access Crates — PACs) are pretty well fleshed out at this point.

If you're looking for a equivalent to first party HAL to leverage (e.g. CubeMX, Atmel Studio), Rust is significantly less mature here if only because of its age. In Rust land there are multiple different HAL frameworks to work with and it's likely you'd need to use a combination of them. Embassy (a combination of an async framework and HAL components) is pretty slick if it does what you need.

As a hobbyist who's written and is working on a couple of async HALs my take is that Rust is well suited to embedded work but yeah there are hurdles. It's immature so while things like Embassy are a joy to work with, they're missing a lot of (sometimes seemingly basic) features.

  they have a data bank the size of the internet so they can
  pull hints that sometimes surprise even experienced devs.
That's a polite way of phrasing "they've stolen a mountain of information and overwhelmed resources that humans would use to other find answers." I just discovered another victim: the Renesas forums. Cloudflare is blocking me from accessing the site completely, the only site I've ever had this happen to. But I'm glad you're able to have your fun.
  it might turn out the balance is something like 25% handmade - 75% LLM made.
Doubtful. As the arms race continues AI DDoS bots will have less and less recent "training" material. Not a day goes by that I don't discover another site employing anti-AI bot software.

Ah, I see you have a JD from OpenAI.

I don't run personal sites worth millions of dollars. I do, however, use sites like Sourcehut, DigiKey, Github, Mouser, Farnell, etc, etc, etc. that have opted to put everything behind bullshit captchas because of the DDoS (nee AI) bots.