BeagleBone Black Technical Drawing

I know. You’re hacking and whipping a proof-of-concept up. You’d like to laser cut a baseplate for your favorite dev tool: the BeagleBone Black. Unfortunately, BeagleBone doesn’t provide nice technical drawings like Raspberry Pi does.

I noticed a shift in visitors to my blog; most of them used to come for the cheap chinese laser cutter pages, or the Solidworks Macros. But lately, most of them are coming for the Arduino Uno technical drawing! Since there are no good mechanical drawings for the BBB out there, I decided to whip one up.

Thanks for Logic Supply for the (very detailed!) CAD-model.











2011 15″ MacBook Pro WiFi cables breaking

If you have a 2011 MacBook Pro and are experiencing WiFi-connection issues, the antenna cables might be broken due to repeated opening and closing of the lid. Mine’s a A1286, but I guess other models have the same issue. Irritatingly, macOS shows “5 bars” of signal when in fact it’s getting none.

After doing some research, I found I wasn’t the only one with this problem.

If you alt-click the WiFi-icon, you get this info screen:

Before replacing, both “RSSI” (signal strength) and “Noise” both were at -80dBm.









Here is the cable, you can clearly see the severed connections.

This could have easily been spotted in a durability-test of the hinge; maybe this only happens when the cables are twisted some way.

Come to think of it, Apple replaced my screen once due to glitches. Could be that the display cable had the same issue?

Why your Nexus 5 is stuck in boot loop

After tearing down and repairing the LG G3 I received someone’s broken Nexus 5, also known as LG D820. A part of the screen was shattered, but the digitizer still worked. It did, however, behave erratically. First I thought the digitizer was recording touches that weren’t there, but after disconnecting it, the problem persisted.
As it turned out, the power button was broken. Unlike the power button on my iPhone 4 – which didn’t respond at all – this button continuously registered presses when it was left alone. This makes the phone unusable because it will shut itself down, try to reboot, but before it can do anything thinks you’re trying to reset the thing.

The internet has dubbed this the “boot loop” and it’s a massive problem. Search for “lg boot loop” and you’ll get 4.3M results. “Nexus 5 boot loop” on YouTube yields 70K (!) videos. Probably not all of these boot loops are due to the power button; some reports suggest that some other connection on the main board degrades due to components heating up.

So what’s up with this particular instance? I fixed the phone by replacing the power button. When you can do this repair yourself, it will take about $1 and half an hour. I you go to a service company, they’ll probably charge $50+. As is so often the case, these tactile switches cost only a few cents but end up defining the (economic) lifetime of an expensive piece of hardware when they fail. I received 5 new buttons, so I decided to take one apart to try and understand what happened. Unfortunately, the original button was lost when I desoldered it.

Side view of the switch. 2.54mm (100mil) pinheader for size reference.

The same switch, flipped on its side. Left side is intact, on the right side the frame has been deformed and soldermask removed to expose the copper tracks.

Same view, enhanced. Annotation shows which parts probably cause the malfunction.

Tinier problems.
First of all, this switch is tiny. Above is a microscope photo with a 2.54mm (100mil) header for size reference. When you make something electromechanical smaller, it becomes more error-prone. One thing that struck me immediately is that a big chunk of this switch is actually printed circuit board (PCB). The PCB and a plastic housing containing the switch disc is held together by a metal frame. The tin-coated copper tracks (metallic coloured) of the PCB are shielded against the metal frame by soldermask (white). The metal frame is stamped and still has the sharp edges associated with that process.

This is speculation, but I guess something like this is at the core of LG’s problems: Every time you press the power button of your phone, the soldermask of the PCB is pushed against these sharp edges. After a while, the mask will be worn away, and when it’s gone on both sides, the metal frame will short the contacts of the power button. Hence the erratic behaviour. The same short could also be caused by ingress of metallic dust. There are a lot of ways the design of this switch can cause problems, but I wouldn’t be surprised if this is it.

The never-ending quest for smaller consumer electronics prompted LG engineers to design or specify a switch with durability issues. It’s a shame that a valuable device like a smartphone is discarded prematurely because of a cheap part like a switch or headphone jack. I hope this helps someone diagnose their phone. Or maybe it helps fight LG in the class-action suit 🙂

LG G3 teardown and analysis


A few weeks ago, I took an LG G3 smartphone apart to repair the screen. I hadn’t disassembled a recent smartphone for a while, so there were some interesting finds which I’ll document here. My apologies for the crappy photos.

Force-resistant headphone jack & Bottom sensing MEMS Microphone

Most noticeable was the headphone port, which is a discrete part with springy connectors on the side. These mate to an edge-connector on the PCB. The part was mounted only to the enclosure (with adhesive), not to the board. Since the headphone port gets to endure considerable stress from the forces of the earphones, this makes for an interesting solution to headphone ports fatigue-cracking from the PCB. This should make the phone more durable (on that part; it has other issues like easy moisture ingress). It’s also easier to replace.

Another interesting solution visible in these photos is the MEMS-microphone, which has its sound-cavity-opening on the bottom in stead of the top. On the bottom of the board is a small piece of filter or membrane which keeps out dust (and maybe moisture as well?). The phone features three of these, with the other two used for noise-cancellation.

Edge-connected headphone jack (green( and reverse-sensing MEMS microphone (red)

Same, bottom view with headphone jack removed.

Distance sensor mounted on a small piece of circuit board

This is an interesting hack solution which I’d never seen: mount a part on a small piece of circuit board of a certain thickness, to use as a spacer. This way, you can have the sensor as close as possible to the front glass. The green PCB has tiny vias (visible through the epoxy!) and presumably some pads on the bottom to SMT-mount it to the blue mainboard. I wonder if these were populated on a big panel with loads of these sensors and then cut and repackaged on reels to feed into the main assembly-process?

Distance sensor on PCB as standoff

PCB-mounted shielded high-frequency cable

You’ve got your high-frequency signals on one side of the board and your antennas on the other. What’s a guy (or gal) to do? The cable is about 5cm long and runs on a thin strip of PCB which is besides the battery (which would be in the bottom left in this photo).

PCB-mounted HF-cable

Laser-etched-then-metalized plastic parts with vias

Using a laser to roughen the surface of a plastic part and then using the surface roughness to selectively metalize the part has first been demonstrated by Fraunhofer (AFAIK) quite some years ago. It’s been used extensively to make high-performance antennas from the parts that also function as the speaker body or phone enclosure. I’d never seen this process done with functional vias (electrical connection from one side to the other) before. Hybridica FTW!

Laser-etched and metalized vias

Same, top view. Note the relief from the metalized area.

Thanks for your attention! See anything else interesting? Questions?

Using USBtinyISP with Ubuntu

If you want to use Adafruit’s excellent USBtinyISP programmer with Ubuntu Linux, you’ll probably run into this error:

avrdude: Warning: cannot open USB device: Permission denied

Here’s a quick dump of what should help:

In a terminal, type:
sudo nano /etc/udev/rules.d/99-USBtiny
Then paste
SUBSYSTEM=="usb", ATTR{idVendor}=="1781", ATTR{idProduct}=="0c9f", GROUP="adm", MODE="0666"
into the new file. Write it out by pressing Ctrl-O.

sudo usermod -a -G plugdev YOURUSERNAME
sudo service udev restart
sudo udevadm control --reload-rules

Insert the USBtinyISP again.

This makes a rule which fixes the permissions on the USB mount point every time the device is inserted. All information comes from this thread but wasn’t properly structured. Hope this helps someone 🙂

Dit is geen elektrische auto


Als je goed kijkt, zie je nog een fiets en een persoon voor de schaal. Picture by Marika Shahan & Zachary Shahan | EV Obsession | CleanTechnica (CC BY-SA 4.0)


De Mitsubishi Outlander Plug-in Hybrid Electric Vehicle (PHEV) is een monster van een auto. 2000 kilogram. Eén meter zeventig hoog. Bijna 5 meter lang. En bijna 20cm “bodemvrijheid”, om zelfs de hoogste verkeersdrempels met volle snelheid te kunnen nemen. Een typische benzineslurpende SUV.

Toch wordt deze auto door de Nederlandse staat aangemerkt voor allerlei belastingvoordelen:

  • Lagere bijtelling (0% in 2013, 7% in 2015, 14% in 2016, en dat tarief hou je de komende 5 jaar).
  • Geen wegenbelasting.
  • Lagere BPM (€427, in tegenstelling tot ±€6.000 voor een niet-PHEV SUV van vergelijkbare aanschafprijs).
  • De milieu-investeringsaftrek

En dat allemaal omdat ‘ie volgens de standaardtests 42g/km CO2-uitstoot zou hebben. Dezelfde tests die de laatste tijd veel in het nieuws waren vanwege geknoei door Volkswagen. Sjoemelsoftware; prachtig woord ook. Ik ben geen fiscalist, maar het belastingvoordeel (of derving, vanuit de overheid gezien) is duizenden Euro’s.

Geen wonder dat hij populair is in Nederland. Voor relatief weinig geld rij je een gloednieuwe, ruime auto, met dank aan de staat. En altijd een parkeerplek in de stad, want je mag gebruikmaken van de parkeerplekken met laadpaal voor elektrische auto’s. En nog goed bezig voor het milieu ook!

De auto is zo populair, zelfs, dat een kwart (!) van alle tot nu toe wereldwijd geproduceerde Outlander PHEV’s naar Nederland kwam.

In totaal meer dan 20.000 stuks. Veel mensen zal dit weinig verbazen, want je ziet ze om de haverklap. Door sommigen wordt dit aangehaald als iets positiefs; “De lancering van de Outlander PHEV in Europa is een goede indicatie dat de doelstelling van 20 procent elektrisch in 2020 haalbaar is.

Screen Shot 2016-02-01 at 10.55.10Alleen jammer dat die auto’s helemaal niet elektrisch rijden. Okay, er zit een accupakketje in (12kWh; de miniscule elekrische iMiEV heeft al 16kWh) en twee elektromotoren (60kW). Maar voorin ligt ook een twee liter 121pk benzinemotor. En uit onderzoek van TNO blijkt dat dit soort auto’s helaas toch vooral op die laatste rijden. Daarmee komt hun praktijkverbruik gemiddeld zo’n 3x hoger uit; op ruwweg 150g/km. Ter referentie; een niet-hybride Range Rover Evoque (toch wel het prototype PC Hoofttractor, toch?) heeft een verbruik van 181g/km. Volgens de fabrieksopgave dan.

Screen Shot 2016-02-01 at 10.57.19

Er zijn, volgens bovenstaande grafiek, zelfs mensen die het lukt om meer dan 15l/100km (1:6) te rijden met deze auto. Gemiddeld!

Okay, ze rijden wel zuiniger (6,5l/100km gemiddeld) dan de gemiddelde niet-PHEV Outlander rijder (9,5l/100km). Wat dat betreft is het verschil bij de Volvo V60 diesel (!) PHEV nog slechter.  Maar dat belastingvoordeel is gegeven op het testverbruik van 1,9l/100km. De subsidie is bedoeld om mensen over de streep te trekken bij het kopen van een zuinige, liefst zo veel mogelijk elektrische auto. Iemand die nu ‘de duik in het diepe wil nemen’ en een volledig elektrische auto koopt krijgt dezelfde stimulering van de overheid als iemand die een grote SUV koopt en daar nagenoeg altijd op benzine mee rijd.

Toegegeven, de data van TNO zijn van Travelcard Nederland, een bedrijf dat de leasetijgers van Nederland voorziet van brandstof. Mensen die zelf hun brandstof af moeten tikken bij de pomp rijden misschien zuiniger. En daar ligt natuurlijk het echte probleem.

Niet alleen bied de overheid belastingvoordeel bij aanschaf aan mensen die dat niet zouden moeten krijgen; de hele gedachte achter “de vervuiler betaalt” gaat niet op wanneer mensen zelf hun brandstof niet betalen. De accijnzen die brandstofverbruik zouden moeten verminderen tijdens gebruik (en daardoor alternatieven interessanter maken) werken op die manier niet.

Om het verhaal toch positief af te sluiten; ik zie twee goede zaken.

  1. Het ecosysteem-effect. En dan bedoel ik niet het milieu, maar het feit dat zelfs een abominabele z.g.n. “elektrische” auto als de Outlander ervoor zorgt dat er aanzienlijk meer vraag komt naar accupakketten, aansturingen, laadpalen, snellaadstations (okay, die misschien niet) en elektromotoren. Daardoor zullen bedrijven sneller investeren in de ontwikkeling ervan. Wat de transitie naar volledig elektrisch weer versnelt.
  2. Hierboven noemde ik al dat de plug-in Outlanders zuiniger (zuiniger, niet zuinig) rijden dan hun niet-elektrische broertjes. Het mooie is dat deze trend breder is; het hele Nederlandse wagenpark wordt langzaam maar zeker steeds zuiniger. En niet alleen op papier (“type-approval consumption” van ±105g/km) maar ook in dagelijks gebruik (±155g/km).Screen Shot 2016-02-01 at 11.27.54

Maar er is nog een lange weg te gaan. En ik denk dat de Nederlandse staat veel kan doen om de juiste prikkels te geven voor de juiste beslissingen. Een beetje gezond verstand bij het opstellen van de regels zou kunnen helpen. Wanneer beleid gemaakt wordt, kunnen de gevolgen al redelijk getoetst worden. Op de vraag: “En deze, die Outlander, zou die in aanmerking moeten komen?” zou het logische antwoord moeten zijn: “Lijkt me niet”.

Wie weet. Misschien komt er wel belastingvoordeel op autodelen?

TL:DR; Een grote SUV als de Mitsubishi Outlander die in de praktijk 3x zoveel verbruikt als de fabrieksopgave zou niet in aanmerking mogen komen voor allerlei belastingvoordelen. Dat de “type-approval consumption”-cijfers (fabrieksopgave) blind gebruikt worden voor bepaling of een auto wel of niet in aanmerking komt voor subsidie klopt niet. Ook zouden de tests om op die cijfers te komen aangepast moeten worden aan gebruikspatronen uit de echte wereld. Nu zijn die gebaseerd op een sprookje waarbij mensen ±70% elektrisch rijden, terwijl dat eigenlijk 15-30% of minder is. Met die aanpassingen zou de overheid geen perverse financiële prikkels meer uitdelen aan autobezitters. Daarnaast moeten we ons afvragen of autobezit überhaupt gestimuleerd moet worden.

The venerable iPhone 4

SE M600i. photo courtesy

This summer, it was 5 years ago I pre-ordered the Apple iPhone 4. Back then, I was really excited to get my hands on my first real smartphone; the Sony Ericsson M600i I had then had a lovely keyboard but could hardly be counted as a smartphone. I had had it for only about two years, but it had already lost all paint on the sides and it was sometimes dropping calls. To be able to listen to music properly I had to solder my own jackplug adapter.

When it was introduced, I knew. The screen resolution of the iPhone 4 was quadruple the resolution of its predecessor. It was faster, built with a seamless glass back and front with stainless steel sandwiched in between. It could install apps and had the smoothest user experience of any product I had ever owned. It felt awesome. It was awesome. I needed one.


While growing up, I had always wanted the newest, shiniest gadgets. Teachers thought I was dealing drugs in high school because I bought a second-generation iPod (10 gigabytes!) for about €600 (second hand!). I was always hacking products and breaking them in the process. If something newer came along, the old product was just shifted to my sister, and that shift was part of the reasoning behind why it was good to get the new one. Mobile phones generally lasted about a year this way, and the pace was accelerating.

Fast forward to 2015 and I’m still in love with my iPhone 4. It’s aged gracefully, despite some minor issues. The glass is almost impeccable. The stainless steel has some wear marks but is mostly like it just came out of the box. Overall, the product has aged like a leather bag; it became more beautiful by using it, not less. I’m generally pretty considerate with my possessions, but a mobile phone has to endure abuse like nothing else. I drop it occasionally. I cycle with it in the rain.

iPhone 4 Home Button; Conformal coating is the transparent blobs over the components at the bottom. Photo courtesy

This story is an homage to how incredibly durable the Apple iPhone 4 is.
It’s technically durable; I haven’t had to replace the battery, none of the critical systems failed (probably due to conformal coating every part of circuit boards that have a reasonable amount of exposure to moisture). The glass hasn’t shattered. It hasn’t bent. The jackplug is still working. I’ve replaced the power and home buttons, but that’s it. Consider any MP3 player; some of their jackplugs only lasted half a year.

User Experience durability

It’s also what I call “UX-durable”: the whole user experience (hardware, software, ecosystem) of my iPhone 4 is comparable to what I’d get if I shelled out €800 for a new iPhone 6. It can run the same apps. It has the same level of attention to physical design. I even think it looks and feels better. Because of its minimalist design, it doesn’t look outdated. The screen resolution (not the size) is exactly the same as a new phone. Yes, the iPhone 6 can make panoramic pictures. And high-speed video. And it has Siri. I don’t care. I can use Spotify, public transport planning and all the other apps I care about, with hardware that (at the replacement rate I had before this product) is ±3 generations old. It’s still reasonably snappy, too. Imagine installing Windows 7 on a laptop that had Windows XP installed when you bought it.

Even more important: the iPhone 4 I have now is much, much better that the iPhone I received 5 years ago. Back then, I had to manually sync calenders, contacts and content by plugging in a cable. It didn’t have Facetime. Spotify was barely known outside of Sweden. iMessage didn’t exist. Whatsapp was still in private beta. There were dedicated apps for using the LED flash as a torch (okay, this is something Apple should have included from the start). My point is; over the years, my phone has gotten incrementally more sophisticated and valuable, even though, in economic terms, it’s way past it’s due date. Had I gotten an Android phone back then, I would be stuck in “Froyo” (2.2), a version that most developers (and certainly hardware manufacturers) stopped supporting years ago.

Smartphones were the first consumer products that exposed people to this possibility. When you buy a microwave, it doesn’t get any better next year. It might, in the future. But not today. Users will be starting to expect similar “incremental feature upgrades” from different products as well. Smart TV’s are gradually following, but most manufacturers stop pushing updates after a few months, leaving users with hardware that could perform much better. Or worse; it could be left with serious security issues.

3D-printers are a nice example as well, by the way. The first-gen Ultimaker I bought a long time ago is a very different printer from the one I have now. Apart from the hardware hacks (heated bed, better extruder, autonomous printing, silent stepper drivers, etc.) the software has seen marvellous upgrades. The whole experience is just so much better. Slicing a large part with the software it shipped with could take hours. Now, I can’t load a model that takes more than 10 seconds to prepare for printing. The same €1900 printer, becoming better over time – not worse.

Consider the Stratasys Dimension SST1200 we had at the Fab Lab. A €35.000 printer, requiring a €2.000/year plan just to get software updates that tended to be even buggier than the last version. Eventually, that printer crapped out with indecipherable error messages and the manufacturer not wanting to fix it. AFAIK, it’s still gathering dust. Back then, I put the problem on closed vs. open source, but that’s not necessarily the problem. Open sourcing software can help, but it’s not the only option.

Planned hardware obsolescence through software

We all know resources are running out. It’s time for hardware manufacturers to start designing and developing electronic products with longevity in mind. Software isn’t just a part of this; it’s possibly the most important. Especially for products like smartphones, smart TV’s and any screen size in between which is, at the end of the day, a slab of screen running software. And good software can only be developed and maintained when there’s a board-level interest in high-quality, modular, serviceable, secure code, ecosystems and architectures. It’s understandable that firms like Samsung stop pushing software updates to hardware they sold only a few financial quarters ago; the freelance teams of developers hired to quickly and cheaply hack an interface on top of Android are long gone by then.

But users will come to expect more from brands. Having to buy a whole new slab of very similar screen in two years just because the software driving it can run the next new streaming content provider after Netflix is not going to be acceptable. The same goes for tablets. And thermostats. And microwaves. Anything running software can and should get incrementally better over time.

TL;DR If it’s connected, it should become better. Users will come to expect incremental (software) feature upgrades in more products than just smartphones and tablets. That way, they can use their products more sustainably. Any company not following the example Apple is setting with – for example – the iPhone is in danger of losing customers in the long term.