• 1 Post
  • 58 Comments
Joined 2 years ago
cake
Cake day: June 15th, 2023

help-circle





  • I would be reallllly careful using a heat gun - that can very easily destroy the big BGA chip on that board.

    If I had to guess, the pads aren’t properly cleaned and also your iron’s tip may not be cleaned and tinned properly. Ribbon cable pads aren’t very small, so solder should melt onto them and stick quite quickly - you don’t have to heat a board long for that to happen.

    Also, the metal shield you’re referring to is exactly that - an EMI shield, usually. A big piece of metal that is grounded and meant to help prevent interference. They’re typically made of steel, so solder usually does not stick directly to them! You’d have trouble soldering wires right onto an EMI shield unless it happened to be copper, which again, it likely is not.


  • So for padding, it sometimes depends on how your compiler works, but usually, it doesn’t pack bytes by default - that needs to manually be done. Otherwise, a uint32 followed by 2 uint16s, for example, will take up the space for 3 uint32s (in a 32-bit native compiler). If you manually specify packing (implemented differently depending on your compiler and such), then it will pack those all properly into just 2 uint32s.

    I do imagine 24 bits followed by 16 more in a bit field for a 32-bit number would potentially cause problems. But it’s late here and I could certainly be wrong so take that with a grain of salt.

    That also said, I typically don’t use bitfields directly in structures - it’s not usually good practice, at least where I work. I’d either do a uint8[3] or use a whole uint32 that is a union, and in the union would be your :24 followed by a reserved : 8, if that makes any sense. It’s sometimes worth it to leave a few extra bytes in there just from an organization standpoint.






  • I would heavily suggest not doing this. HDDs are significantly more reliable than flash storage when it comes to long-term, power-off data retention. Period. There’s a relatively little-known fact about SSDs and flash storage where they aren’t actually rated to sit around with data on them for all that long. The voltages stored inside of them degrade and the data is slowly lost over time if they aren’t powered on. The enterprise SSDs that I work on are rated for 3 months - as in, set it on a shelf for three months, and after that, if you don’t power it on, it isn’t guaranteed that all of your data will still be there. And this is talking about ultra-redundant, enterprise SAS SSDs. MicroSDs don’t have any of that redundancy. (And yes - this implies that setting a bunch of important flash drives in a safe for ten years is not a great idea. That is true! It’s unlikely that you will experience data loss, but it’s more likely than with an HDD)