5 ms·
I was in the same spot when I met this brilliant hardware hacker at this hackerspace who had no formal EE degree but could design circuits in his sleep. "How d
by kortex 4y ago
I was in the same spot when I met this brilliant hardware hacker at this hackerspace who had no formal EE degree but could design circuits in his sleep.
"How do you do it?"
"I read data sheets and a lot of wikipedia".
I already spend tons of time on wiki, so I started reading data sheets. And he was absolutely right, datasheets for components are often chock full of information on how to use them, often with recipe books for circuits that use them.
It's kinda bland and tedious but highly informative.
I think there is a bit more that goes into that (in particular a willingness to fry stuff, that's unavoidable in hardware, and MOUNTAINS of patience), but like software, it's pretty easy in today's day and age to teach yourself hardware stuff.
- mynameismon 4y ago> datasheets for components are often chock full of information on how to use them, often with recipe books for circuits that use them. Curious, I looked into the datasheet linked in the post[0]. While I get what you mean by "chock full of information", I can't make the head or tail of it. Where do I get started? (genuinely)
- flaviut 4y agoI'm not sure what your question is. When you don't understand a thing, you can google for it. Like it says it uses a Schmitt trigger for noise protection. How does that work? Wikipedia explains: https://en.wikipedia.org/wiki/Schmitt_trigger https://en.wikipedia.org/wiki/Schmitt_trigger If you have a specific goal for the chip, look up the words that seem to be related to that goal. Once you do that a bunch, you get better at figuring out which words matter.
- iancmceachern 4y agoThere is usually an example circuit in the datasheet. I start there. Many ics now also sell that example circuit on a pcb you can buy from the same supplier you buy your ics from. Then to make your own custom thing you just start with that example circuit, change it or add to it as needed for your specific application, and then you can physically make those same modifications or additions to the example circuit board you bought and test your design before ordering custom boards. It's basically like tracing an outline of a drawing with tracing paper and then filling it in with color. You trace the example design, add your own color.
- mananaysiempre 4y agoI (being not a hardware person but able to blink a LED) would start with the diagrams of talking with the device on page 7 and refer to them while reading the text descriptions of same on pages 5–6, maybe refresh my memory on how I2C works[1,2] as well. At the same time, almost any controller you can get is happy[3] to talk I2C for you, so it’s unlikely the details matter beyond “controller writes device address and RW bit then (either!) reads from or writes to the peripheral accordingly until end of transaction” (whence the “dummy write” the datasheet says is needed to set the read address). Many even come with libraries that will talk to I2C EEPROMs specifically (because they are everywhere), so the diagrams might not be so important either. The rest of the datasheet is (as commonly happens with simple digital components) concerned with “how do I wire this up”, “how good of a digital signal can I expect to get out”, “how bad of a digital signal can I get away with putting in”, a refresher on I2C, and miscellanea like power consumption, operating temperature, and sizes of little plastic boxes it comes in. Necessary if you want to design a board properly, not so much if you’re just going to wire it up for a quick hack (the device seems to have a supply voltage and logic levels of “whatever”). The only thing you maybe do need these for is to look at the board photo and figure out how they wired it. Dot indentation marks pin 1. Pins 1–4 shorted, picture on page 1 says 4 is ground and 1–3 are address, so per page 4 it ends up with[4] address 1010 000. Power (called Vcc for reasons that are not important here) is on pin 5, wired up to top pin of connector on the close-up photo; the next one down goes to data (SDA as I2C calls it) on pin 8; following one goes under the chip but is almost certainly the bus clock (SCL) on pin 6 because that needs to go somewhere; and the bottom is at first glance only connected to an isolated island of copper but the small holes (“vias”) to the other side of the board probably connect it to the other islands so it has to be ground. That leaves write protect on pin 7, unconnected to anything but Vcc (through a dummy “pull-up” resistor to limit how much power the chip will waste examining it), which, to do a sanity check, page 3 says means writes are permitted (so the name of the pin is a bit unfortunately). There. Done. You still need to find or make something for the other side of the I2C conversation, but either an off-the-shelf programmer or a tutorial for a cheap board with a controller should be sufficient for that. (Won’t be completely trivial the first time around, but it’s a one-time thing like any other development environment.) [1] https://learn.sparkfun.com/tutorials/i2c/all https://learn.sparkfun.com/tutorials/i2c/all [2] https://learn.adafruit.com/i2c-addresses/overview https://learn.adafruit.com/i2c-addresses/overview [3] https://github.com/dekuNukem/bob_cassette_rewinder/blob/622715dcacd0a23d778762e0415d4f4e76071cd5/firmware/code/Src/helpers.c#L19 https://github.com/dekuNukem/bob_cassette_rewinder/blob/6227... [4] https://github.com/dekuNukem/bob_cassette_rewinder/blob/622715dcacd0a23d778762e0415d4f4e76071cd5/firmware/code/Inc/helpers.h#L11 https://github.com/dekuNukem/bob_cassette_rewinder/blob/6227...
- NavinF 4y agoAh that datasheet might be a bad example because that component is so standardized. In this case you’d be better off searching “i2c eeprom” on YouTube and watching one of many tutorials that cover this chip. Then google “i2c eeprom application note” and skim the manufacturer’s tips on how to use it: http://ww1.microchip.com/downloads/en/Appnotes/01028B.pdf http://ww1.microchip.com/downloads/en/Appnotes/01028B.pdf
- Xeoncross 4y agoSame goes for construction materials. So many people fail to read the wood/adhesive/countertop/screw/paint datasheets which sometimes include recommendations against the way the product is often used. reminds me of medications and antibiotics which include their own datasheets that not all medical providers cross-check against your current medications.
- Scoundreller 4y agoOh c’mon, if I read those things I wouldn’t ever use a q-tip again in my life.
- deleted 4y ago[deleted]
- timoteostewart 4y agoJust for god’s sake don’t put a Q-Tip in your ear! There’s even a warning on the package
- matthews2 4y agoThe application notes for microcontrollers are usually pretty good. They don't just explain how you do something, but why you do it a particular way.