[HN Gopher] I created an open-source Hardware Hacking Wiki - wit...
       ___________________________________________________________________
        
       I created an open-source Hardware Hacking Wiki - with tutorials for
       beginners
        
       Author : hw-f3nter
       Score  : 280 points
       Date   : 2025-01-12 11:29 UTC (1 days ago)
        
 (HTM) web link (www.hardbreak.wiki)
 (TXT) w3m dump (www.hardbreak.wiki)
        
       | polalavik wrote:
       | This is rad! I'll throw this in my embedded resources round up
       | [1]
       | 
       | https://hardwareteams.com/docs/embedded/embedded-resources/
        
         | findyourexit wrote:
         | Whoa! Very much appreciated!
         | 
         | Fantastic round-up with loads of useful inclusions. Thanks for
         | sharing!
        
       | spidersouris wrote:
       | Thanks for the wiki -- I have always been interested in hardware
       | hacking but I have always felt overwhelmed as I didn't know where
       | to start. I believe this kind of resource can greatly help with
       | that, especially the case studies.
       | 
       | However, I can't help but feel that a major part of the content
       | is LLM-generated, or at least LLM-rewritten. It feels off and
       | uninteresting to read, honestly. Is it the case? To support my
       | case, I see that the case study page
       | (https://www.hardbreak.wiki/introduction/case-study-led-to-a-...)
       | has very similar paragraphs next to each other, the second one
       | seemingly being the "genuine" one, and the first one being the
       | LLM-rewritten version.
       | 
       | I'm not against using LLMs to help fix typos or reformulate
       | things, but you should definitely keep some of your style. The
       | LLM that you used (if you used one) made the content super bland,
       | and as a reader, I'm not really incentivized to browse more.
        
         | raywu wrote:
         | Case in point, under Case Study > Reconnaissance > OSINT, these
         | two paragraphs follow one another - same content but different
         | wording.
         | 
         | > The first step in any hardware hacking project is research. I
         | started by Googling the router model number, "ASUS RT-N12 D1",
         | and came across an article about a similar model, the ASUS
         | RT-N12+ B1. The article mentioned that the device had an open
         | UART interface allowing unauthenticated root access. However,
         | it provided no exact details on how to exploit this or where
         | the UART interface might be located. Could my router model have
         | the same vulnerability?
         | 
         | > In the first step I googled the model number for my router
         | "ASUS RT N12 D1" and I came accross this article. It shows that
         | a similar model the "ASUS RT N12+ B1" appears to have an open
         | UART interface, which gives unauthenticated root access. It
         | does not show how to exacltly abuse this or any details where
         | to find the UART interface. Let's see if our router model may
         | have the same vulnerability!
        
         | Joel_Mckay wrote:
         | Get a ham radio technician license, and you may develop an
         | intuitive perspective on most electrical engineering concepts.
         | 
         | i.e. the physics lab derivation of the core EE tool set is
         | unnecessary if you understand what the models are describing.
         | 
         | AI is slop in and slop out... and dangerous to students... =3
         | 
         | John Shive's Wave Machines is where every student should start:
         | 
         | https://www.youtube.com/watch?v=DovunOxlY1k
        
           | CamperBob2 wrote:
           | _dangerous to students_
           | 
           | It's fatally dangerous to students who ignore it or dismiss
           | it out of hand. That much is already certain.
        
             | Joel_Mckay wrote:
             | How so?
        
               | CamperBob2 wrote:
               | Wait and see. You're not paying attention now, but it's
               | not too late to start.
               | 
               | Go to your favorite programming puzzle site and see how
               | you do against the latest models, for instance. If you
               | can beat o1-pro regularly, for instance, then you're
               | right, you have nothing to worry about and can safely
               | disregard it. Same proposition that was offered to John
               | Henry.
        
               | Joel_Mckay wrote:
               | Please reformulate your argument, and I will check back
               | tomorrow:
               | 
               | https://www.youtube.com/watch?v=aNSHZG9blQQ
               | 
               | LLMs are rules based search engines with higher dimension
               | vector spaces encoding related topics. There is nothing
               | intelligent about these algorithms, except the trick ones
               | play on oneself interpreting well structured nonsense.
               | 
               | It is stunting kids development, as students often lack
               | the ability to intuitively reason when they are being
               | misled. "How many R's in 'Strawberry'?" is a classic
               | example exposing the underlying pattern recognition
               | failures. =3
        
               | CamperBob2 wrote:
               | (Shrug) If you're retired or independently wealthy, you
               | can afford that attitude. Hopefully one of those
               | describes you.
               | 
               | Otherwise, you're going to spend the rest of your career
               | saying things like, "Well, OK, so the _last_ model couldn
               | 't count the number of Rs in 'Strawberry' and the new one
               | can, but..."
               | 
               | Personally, I dislike being wrong. So I don't base
               | arguments on points that have a built-in expiration date,
               | or that are based on a fundamental misunderstanding of
               | whatever I'm talking about.
        
               | Joel_Mckay wrote:
               | Every model is deprecated in time if evidenced Science is
               | done well, and hopefully replaced by something more
               | accurate in time. There is no absolute right/correctness
               | unless you are a naive child under 25 cheating on
               | structured homework.
               | 
               | The point was there is nothing intelligent (or AI) about
               | LLMs except the person fooling themselves.
               | 
               | In general, most template libraries already implement the
               | best possible algorithms from the 1960s, and tuned for
               | architecture specific optimizations. Knowing when each
               | finite option is appropriate takes a bit of
               | understanding/study, but does give results far quicker
               | than fitting a statistically salient nonsense answer.
               | Several study datum from senior developers is already
               | available, and it proves LLMs provide zero benefit to
               | people that know what they are doing.
               | 
               | Note, I am driven by having fun, rather than some bizarre
               | irrational competitiveness. Prove your position, or I
               | will assume you are just a silly person or chat bot. =3
        
           | TeMPOraL wrote:
           | > _Get a ham radio technician license, and you may develop an
           | intuitive perspective on most electrical engineering
           | concepts._
           | 
           | May. I managed to get one without developing much intuition
           | for most EE concepts, unfortunately.
        
             | Joel_Mckay wrote:
             | Did you mean you don't understand the equations/theory, or
             | are having difficulty applying the concepts to design
             | circuits?
             | 
             | In the first case, install LTSpice (free from Analog
             | Devices), and head here to run down the basics:
             | 
             | https://www.youtube.com/@FesZElectronics/videos
             | 
             | And in the latter, go though common basic designs analyzing
             | how they work:
             | 
             | https://archive.org/details/encyclopediaofelectroniccircuit
             | s...
             | 
             | https://archive.org/details/encyclopediaofel02graf
             | 
             | https://archive.org/details/isbn_9780070110779
             | 
             | https://archive.org/details/encyclopediaofel0006graf
             | 
             | Then try your own designs combining properties of several
             | designs. Start with simple blinkers and buzzers at first...
             | Try to avoid Arduino designs until you've done a few 555,
             | transistor, and opamp circuits first. =3
        
       | akwagiobe wrote:
       | Pos
        
       | Aetheridon wrote:
       | fantastic providing such knowledge for free, many thanks
        
       | abetusk wrote:
       | Unfortunately not Open Source, in the common definition of the
       | word.
       | 
       | From the license.md [0] page, under "Terms":
       | 
       | > Exemptions: Commercial Use: For inquiries regarding commercial
       | use, please contact the author.
       | 
       | [0]
       | https://github.com/f3nter/HardBreak/blob/fd3d2d4cd17624a3f62...
        
         | hw-f3nter wrote:
         | I just don't want anyone to copy the content and sell it. It's
         | meant to be freely accessible to everyone.
        
           | nerdile wrote:
           | That's fine. It's just not open source. Don't call it open
           | source if it's not.
           | 
           | Definition: https://opensource.org/osd
        
             | SomeoneOnTheWeb wrote:
             | Not everyone agrees with this definition. If the source is
             | open to read, for me it's open source. The website you
             | linked is an _opinionated_ view on what open source is.
        
               | __jonas wrote:
               | > If the source is open to read, for me it's open source
               | 
               | Not everyone agrees with the OSI definition but I'd say
               | almost noone agrees with that definition there.
               | 
               | I think most people understand what you are describing as
               | "Source Available". Could even be a commercial project.
        
               | shevis wrote:
               | > If the source is open to read, for me it's open source.
               | 
               | That's called "source available". Open source
               | colloquially implies open license.
        
               | rvense wrote:
               | I mean, there's not a lot we can do to stop you using the
               | phrase in this way. But you should know that you will
               | cause confusion. The phrase "open source" is, to an awful
               | lot of people, a technical term with a specific meaning
               | and has been so for decades now.
        
             | byteknight wrote:
             | Don't be such a stickler. I can hear you yelling from the
             | mountains about GNU already.
        
             | Llamanator3830 wrote:
             | This reminds me of the discussion of whether if open source
             | AI models are open source or not, when the training data is
             | not available to the public.
        
             | themaninthedark wrote:
             | >Free and open-source software (FOSS) or free/libre and
             | open-source software (FLOSS) is openly shared source code
             | that is licensed without any restrictions on usage,
             | modification, or distribution. Confusion persists about
             | this definition because the "free", also known as "libre",
             | refers to the freedom of the product, not the price,
             | expense, cost, or charge. For example, "being free to
             | speak" is not the same as "free beer".
             | 
             | I generally think of open source as where I can see the
             | code and freely modify it, not necessarily freely
             | commercialize it on my own.
        
               | woodrowbarlow wrote:
               | the FSF/OSI are big on emphasizing that "free/open" means
               | more than exposing the designs and mechanisms; it means
               | guaranteeing certain freedoms and rights to the users of
               | your software.
               | 
               | what you're describing is usually called "source-
               | available".
        
               | thatcat wrote:
               | If open source doesn't specify a license that is it under
               | then you should only assume that the source has been made
               | available. Both GPL and Apache licensing are considered
               | open source, even though apache is more permissive for
               | commercial derivatives. No one calls GPL "source-
               | available" in common conversation regardless of OSI's
               | opinion.
        
               | themaninthedark wrote:
               | As well as some variants of BSD licenses:
               | https://en.wikipedia.org/wiki/BSD_licenses
               | 
               | >Two variants of the license, the New BSD
               | License/Modified BSD License (3-clause), and the
               | Simplified BSD License/FreeBSD License (2-clause) have
               | been verified as GPL-compatible free software licenses by
               | the Free Software Foundation, and have been vetted as
               | open source licenses by the Open Source Initiative. The
               | original, 4-clause BSD license has not been accepted as
               | an open source license and, although the original is
               | considered to be a free software license by the FSF, the
               | FSF does not consider it to be compatible with the GPL
               | due to the advertising clause.
        
             | 38 wrote:
             | that definition is wrong, really by just common sense
        
               | fsflover wrote:
               | This is a shallow dismissal, which is against the HN
               | Guidlines.
        
             | megous wrote:
             | I mean this lists MIT license as opensource license, when
             | it's clearly not, because it doesn't at all mention source
             | code. The license just talks about "software".
             | 
             | Anyone is free to publish only binaries+docs under this
             | license, if they wish.
             | 
             | So the website is not very accurate.
        
           | ajot wrote:
           | Have you thought of a Creative Commons license? You can have
           | a Non-Commercial clause, while letting others to cooperate
           | with you and remix the information in your site. CC licenses
           | are IMHO better suited for documents than things like GPL,
           | BSD or MIT.
           | 
           | https://chooser-beta.creativecommons.org/
        
         | 38 wrote:
         | wrong. your definition essentially means "business friendly",
         | the wiki is open source in every way that matters, except for
         | "lets make money off this persons free work"
        
       | SilentM68 wrote:
       | Thank you for the site.
       | 
       | I've been trying to learn how to customize Linux (e.g. roll my
       | own Linux) for any platform but it takes time to learn since all
       | the information is laid out all over the internet, thus hard to
       | locate. I'm aware of Linux From Scratch project but it is a long
       | read and I find that certain knowledge is assumed (e.g. why build
       | chain is needed), thus not necessarily newbie-friendly. Though
       | I've yet to go through your site, hopefully it will take the
       | newbie inexperience (e.g. electronics knowledge if any) into
       | consideration.
       | 
       | Good luck, SM68
        
       | whalesalad wrote:
       | Can anyone recommend a resource for how to (architecturally)
       | handle communication with a device over i2c? That is where I am
       | kinda stuck atm when it comes to programming a GPS device.
       | 
       | Backstory: at one point I was trying to use elixir/nerves on an
       | rpi to manipulate a few sensor modules to try and produce a race
       | lap timer for motorcycles:
       | https://github.com/whalesalad/rabbit/blob/master/lib/rabbit/...
       | 
       | I bit off more than I could chew: learn elixir, learn i2c, and
       | produce a novel library for controlling the ublox chip since
       | nothing existed for Elixir.
       | 
       | But when it comes to managing the state of the device,
       | reading/writing memory, etc.. that is all very foreign to me (I
       | am used to sockets, http apis, etc) like request/response style
       | interactions.
        
         | wmat wrote:
         | You might find some useful information on elinux.org here:
         | https://elinux.org/Interfacing_with_I2C_Devices
         | 
         | Additionally, search on the wiki of i2c.
        
       | atentaten wrote:
       | This is good. I would've like to see the things that are possible
       | by hacking hardware upfront. I think this help entice users by
       | providing some exciting anticipation.
        
       | freedomben wrote:
       | This is great, and sorely needed! My son wanted to get into
       | hardware hacking a couple of years ago and had a horrible time.
       | He ended up watching a mish-mash of varying quality youtube
       | videos and reading blog posts which went out of date suprisingly
       | quick.
        
       | fitsumbelay wrote:
       | whether partially open source or not, I appreciate this. Thanks,
       | OP
        
       | rubslopes wrote:
       | Please remember to write "Show HN:" when submitting your own
       | content.
        
         | hw-f3nter wrote:
         | I was thinking about it, but the Guidelines include this:
         | 
         | >Off topic: blog posts, sign-up pages, newsletters, lists, and
         | other reading material. Those can't be tried out, so can't be
         | Show HNs. Make a regular submission instead.
         | 
         | so I made a regular submission, as I think HardBreak is reading
         | material. @Mods feel free to move my post, if this is
         | considered a Show HN post.
        
       | david_shaw wrote:
       | This is great.
       | 
       | I've always been on the application security side of things, but
       | I'm increasingly interested in hardware hacking. Through some
       | cursory research, I learned that there are a few scattered
       | resources, but the best way to learn is to really work with
       | someone who knows what they're doing.
       | 
       | Putting all these guides, roadmaps, etc. together in a single
       | place is a great resource that I'll definitely use.
       | 
       | Thank you!
        
       | hi_hi wrote:
       | This is great timing. I recently purchased a micro:bit for
       | learning with my young daughter (who loves it) and found I was
       | very quickly out of my depth with even the most rudimentary
       | customisation for the board.
       | 
       | My draws have now exploded with breadboards, alligator clips,
       | jump wires, LCDs and various other electrical components and I'm
       | in desperate need of understanding the fundamentals of how all
       | these things work.
       | 
       | There's something magical and addictive about being able to
       | control your own hardware components from your own code though.
       | We've had great joy from simply lighting up LEDs and programming
       | our IR receiver.
        
       | JoeDaDude wrote:
       | Nice! Hopefully it will grow to include circuit bending [1]
       | techniques, those typically used for altering music machines and
       | similar.
       | 
       | [1]. https://en.wikipedia.org/wiki/Circuit_bending
        
       | amatecha wrote:
       | A minor nitpick, but it would be great if you put a description
       | of the site in the meta/og description[0] so people get an
       | explanation of what the site is when linking elsewhere, e.g. the
       | same "This page is a free and open-source wiki about hardware
       | hacking!" as is on the page itself. I just linked the site in
       | Slack and it just says "hardbreak.wiki / Welcome to HardBreak |
       | Hardbreak" which is pretty terse. I imagine there might be some
       | setting in your wiki software that might populate these tags
       | automatically (moreso than they already have), with any luck!
       | 
       | [0] https://ogp.me/
        
         | hw-f3nter wrote:
         | You are right! I encountered the same problem. Unfortunately, I
         | didn't find a setting in Gitbook to change the preview text,
         | just the preview image. It seems like it just takes the name of
         | the first page 'Welcome to HardBreak' and adds the site name
         | 'HardBreak' at the end. So I'd have to change the name of the
         | first page, but a name like 'HardBreak - a Hardware Hacking
         | Wiki' or something similar would look weird on the website, I
         | think. I haven't found a good solution for that yet.
        
       | NoboruWataya wrote:
       | Great idea, and it's definitely an area I am becoming more
       | interested in as a hobbyist.
       | 
       | Not to be that guy, but I always think it's a shame to see an
       | open source community centre itself around a Discord server.
        
       ___________________________________________________________________
       (page generated 2025-01-13 23:00 UTC)