HNHacker News
TopNewBestAskShowJobs

mrlambchop

753 karma · joined February 20, 2016

hackernews@lamb-chop.co.uk
submissionscomments
mrlambchop··on Reverse Engineering the M6 Smart Fitness Bracelet
Very interested in the design of the SWire interface. I wonder if the inventors were specifically trying to work around some patent issues or if the design focused on being the very bare minimum of transistors to save money.
mrlambchop··on TikTok algo forbids phrase “black people” but not “white people” among others
#2cents - its an oversight that if reported, I imagine would get mopped up. Optics are not great however - whatever phrase list they pulled together clearly is incomplete.
mrlambchop··on Reverse engineering the Motorola Sensorhub: Part 1
I'm curious if the use of little add on MCUs to cellphone designs like this opens up the opportunity to back door into the OS (such as reprogramming the MCU and sending malformed data into the kernel).

(re: weird bug where calling __aeabi_uidiv calls __exidx_end, could be hard fault handler getting invoked due to either div by 0 or incorrect linkage - that M0 has a few caveats around this instruction that I vaguely recall needing specific compiler settings for)

Great write-up BTW - subscribe!

mrlambchop··on Ask HN: Best “I brought down production” story?
(Not me, but someone I worked with)

My first job out of school, working away from home and learning the ropes of embedded software.

The office was using on promise databases, email servers and the like, as was somewhat common at the time, but nothing much more than a a few robustified PCs and some networking infra. We were having internet problems being too far away from the exchange and so the telephone company was coming into replace the exchange over the weekend so everything was shutdown on the Friday night.

Monday morning comes by and we boot things up again, but no connectivity… Office is dissolving into chaos as phones were also down. British Telecom is demanded to return this very minute and figure it out!

An hour later a very flustered gentleman turns up and begins to debug a few sockets but finds them all dead. 1 minute later he is at the new exchange (that was inside our office), only to emerge from the room after 30 seconds looking extremely confused.

It turns out Dave, an extremely helpful chap who was in charge of some product final assembly had turned up at the office as normal at 7am and thought he would helpfully uninstall the old exchange and throw it in the skip we had rented for just that purpose. A quick wonder around to said skip found the exchange in there with a bunch of wiring - the helpful chap had really gone to town on this. Sadly, I was quick to identify that this was the new exchange, not the old by observing simply how fresh it looked and the BT chap came over to confirm. Because of the damage that had done to the wiring, it was not trivial to simply wire back the old exchange and so that was the end of office operations for a week.

A small company meeting was held where it was announced that “an error of judgement” had occurred and that we were to have some vacation - much of the in office equipment was taken offsite to get temporary connectivity so that sales could continue whilst we vacationed. Internet remained terrible until I left that gig, now blamed on all the wire patches needed to get the office back on line.

mrlambchop··on History of the Nautilus loudspeaker
A long time ago when I had younger ears, I heard these at an audio show in London, in a "sound proof room" and I will never forget the experience. I was working for TagMclaren at the time, having just left dCS Audio and I thought I had heard a lot of high end speakers by then, but these blew my socks off and left a lasting impression.

I half believe it was the presentation - dramatic, but also extremely clever choice of SACD source content with some theatre thrown in for good measure. However, that 12 minutes in a room in conference hall in London with the Nautilus speakers was something I will never forget for a "this is what money buys you" experience. Warm, huge dynamic range, concert hall experience - comfy chair and dim lights helped as well :)

At Tag, we built the "tag mclaren speakers f1" that had a lot of elements I feel borrowed from the B&W industrial design (but made F1 grade) - I used these daily for several years, but was never able to convince myself they were as good as that one time experience.

mrlambchop··on ESP32-C6, a Wi-Fi 6 and Bluetooth 5 (LE) SoC
Realtek RTL872X - it has 5Ghz!
mrlambchop··on Android's new Bluetooth stack rewrite (Gabeldorsh) is written with Rust
Whilst they also use a lot of Broadcom silicon, the stack they use is written 100% in house.
mrlambchop··on Raspberry Pi Pico and RP2040 Microcontroller
Well, I was completely wrong! So the new Pi strategy is selling chips. Curious old world!
mrlambchop··on Raspberry Pi Pico and RP2040 Microcontroller
Come in Arduino, your time is up!

The VSCode environment is a huge upgrade from the stock Arduino UI and the piggybacking on the Pi as a development platform makes a ton of sense.

mrlambchop··on Why the iPhone Timer app displays a fake time
YES! This is so irritating - I assumed I was just being blind to some amazing UX as I fat finger the smallest fields know to human kind trying to eek out a few more minutes before my first zoom call.
mrlambchop··on Web based Windows XP desktop recreation, built with React
I didn't realize that I needed half an hour therapy from playing minesweeper, yet I feel so much better now.

Nice work ShizukuIchi!

mrlambchop··on The Digital Divide Starts with a Laptop Shortage
Shared404 nailed one of the issues. I think the top three problems from a time sink perspective were:

- unlocking the laptop (knowing an existing password, Apple ID or firmware password). Probably 3 in 10 laptops are non-trivial. I have 5 laptops with unknown firmware passwords that I am planning on removing the SPI flash on to wipe out the password (just for funsies... seems like an interesting challenge!)

- upgrading to Catalina via USB installation image. If the OS image is jumping several versions (or actually being downgraded from a security patch release), here be dragons. Typically the USB installer pulls down another installer via Wi-Fi and then has to perform a random "this disk needs an upgrade" routine which 50% of the time results in bad thing happening and I'd be left with the flashing question mark. Then its time to start over again.

- After installing and setting up Catalina (so I can smoke test the functionality), I'd wipe the disk and reinstall from USB one last time so it was fresh. Randomly, the re-install would fail in a mysterious way and I'd have to go around a third time.

mrlambchop··on The Digital Divide Starts with a Laptop Shortage
Please send me a mail at hackernews@lamb-chop.co.uk and I'll hook your wife up with something more powerful. I've still got 20 laptops or so to distribute.
mrlambchop··on The Digital Divide Starts with a Laptop Shortage
Having refurbished ~200 donated Apple devices, the vast majority of time was spent chasing down peoples Apple IDs and having them remove the device from their account so I could reset it. Very time consuming and painful to keep track of. At least 20 phone calls made to work through 2 factor issues as well.
mrlambchop··on The Digital Divide Starts with a Laptop Shortage
After I stopped working this July, I collected as many old Mac's as I could from SF startups and refurbished them in my house, then distributed them to schools in the Bay Area who were most in need of IT equipment for their educators.

Backbreaking work and I am extremely sick of of MacOS recovery right now (and the 1000 tricks needed to get each laptop back to factory condition), but totally worth it. Just today a teacher from Fremont wrote in with a heart breaking email about how much a difference a 2015 Mac Pro made to his day and how better his online teaching is because of it. Got through around 200 devices in total including some iPads.

During my adventures distributing / collecting these laptops, I caught COVID - no good deed goes un-punished. I'm pretty sure there are at least 5k more Mac's sitting in companies IT closets from where they renewed equipment for employees but couldn't throw away the 3 thousand dollar device they bought 3 years prior - donating these is a tax break as well so the companies would be best to dispose of them than keep them around.

mrlambchop··on 'Long Covid': Why are some people not recovering?
I caught COVID-19 back in Aug from helping out the local schools with their bumpy start into remote learning.

6 weeks later, I am suffering from occasional severe fatigue still - these days, it manifests itself after 8-9 hours or so and results in a crash where I have to sleep for 40mins+. If I don’t struggle through and go to bed then, it will screw up my sleep schedule. During the 2 weeks of COVID, it was way worse and I could sleep 3/4s of an entire day and still be tired.

This is getting better - I push myself everyday just a little more and now can exercise for 2 hours straight and carry on, but it’s night and day different to pre-COVID behavior and I imagine it will be through to Christmas before I am back to “normal” (touch wood).

mrlambchop··on Microsoft had a secret Windows XP theme that made it look like a Mac
1996 - Neil Banfield was working on windows blinds whilst on the same set of courses at the university we both went to. Sold to stardock soon after. Just looked it up and things are still going strong!

A lot to be said for the OG windows hook APIs and whatever modern magic they are grabbing into these days.

mrlambchop··on PicoRio Linux RISC-V SBC is an open-source alternative to Raspberry Pi board
The BCM2835 was originally a high volume shipping cell phone GPU for Nokia with a different part number (BCM2708) and the ARM core enabled internally. It was also stacked with DDR memory.

It shipped first in a STB for Roku, but that was happenstance vs any design intention.

The market for separate cell phone GPUs died off, but the die was manufactured still for the RPi.

mrlambchop··on 4$ Xiaomi thermometer custom firmware LYWSD03MMC BLE TLSR8251
I have been looking for a low cost, programable thermometer now for several years. A a handful of bucks? Wow. Just ordered a bucket of them from AliExpress - fantastic stuff!
mrlambchop··on Automatic (Car Adapter) Shutting Down
A couple of examples of hard problems might be the best approach.

- loss of ground

A vehicle OBD connector can at times, loose its GND pin. There are actually two GND pins - chassis and electrical that can sometimes disagree. Its possible for one of either of them to either (a) loose connectivity (b) bias towards the signal level or head towards a negative signal level (-2v was our typical observation).

To prevent an OBD protocol pin from dumping current down the channel, a complex HW/SW solution is needed to monitor and react quickly to prevent downstream ECUs from being fried.

- security

We built a custom debug tool based on CM-DAP (ARM debugger technology) that included OOB security paths to unlock a device for re-flashing / debugging. I think we made 500-1k of these in total for manufacturing/RMA/logistic purposes. This was super fun to work on :)

mrlambchop··on Automatic (Car Adapter) Shutting Down
Vehicle compatibility was really the key - building a cross bar that allowed any pin to be mapped for any function (i.e. CAN on any combo of pins). We included a hardware protocol decoder and a ton of electrical safety items as well as security and reliability tools. 200MHz processor, 2MB flash and 256kB of ram in a single QFN package. A great project to work on! One career highlight for sure.
mrlambchop··on Automatic (Car Adapter) Shutting Down
The devices just collected bread crumbs of data (for example, GPS points or 1 second samples of the vehicles speed). You need some horse power to process these into higher level objects like trips.

In theory, it could be done on a cellphone, but a ton of extra data is needed inc volumetric models of an engine (to calculate fuel usage accurately). Doing it server side makes it possible to build this in an agile method vs going to every single make/model and getting this right the first time.

mrlambchop··on Automatic (Car Adapter) Shutting Down
If you manage to hack this, let me know (retiring VP Eng here)! The latest device contains a custom ASIC with hardware security :)
mrlambchop··on Automatic (Car Adapter) Shutting Down
Sorry - the servers are overloaded right now with everyone grabbing their data. And yes, we did scale things up! Hitting RDS limitations :(
mrlambchop··on Automatic (Car Adapter) Shutting Down
Former VP Eng @ Automatic here :( There is an auth component needed for that BT connectivity to work - once the token expires, the BT connection won't authenticate anymore.

i.e. if you uninstall the BT apps, change phone etc...

mrlambchop··on Exceptional failure: breaking the STM32F1 read-out protection
Yup - this exactly. The JTAG fuses should be blown on all devices that need to secure their flash (or secrets).

Working on these specific processors around 5 years ago, we implemented a serial port based "unlock" that would generate a challenge/response from the device that if correctly acknowledged, would unlock the JTAG whilst the chip has power (it locks again when it looses power). This worked great - we spent a lot of time on the UART driver to make sure it was super simple and robust during the period when it could listen to incoming bytes (no interrupts etc...).

mrlambchop··on Proposed bounty for adding virtual camera / microphone support natively to OBS
For "light" shenanigans, install: http://camtwiststudio.com/

On the mac, Version 3.4.3 is working fine with Catalina (10.15.4).

It adds in a virtual camera interface and you can configure a pipeline of sources or pipelines.

An easy setup is: - Webcam (set to FaceTime HD Camera) - Matrix effect

A more complex one is: - Add webcam - Select "movie" but press PIP - In the PIP Movie settings, "Swap with Video Source" - Mess with the Chroma key settings (you need a solid background color) for Chroma to work. I use a bed sheet :)

I'll circle back with the OBS/Syphon Pipeline/CamTwist shortly as it was much more involved!

mrlambchop··on Proposed bounty for adding virtual camera / microphone support natively to OBS
For the purposes of pranking people on zoom calls, I setup a OBS / Syphon / Camtwist flow that works great for my alternative conference requirements (ranging from matrix style graphics, playing videos of me on the green screen doing things in the background, scrolling comments on the meeting on my video feed etc...).

However... it is a major MAJOR PITA to get going when I want to jump on a quick call and more than often I'm in and out of the meeting a few times because of annoying defaults or software I forgot to start. But that 1 in 10 prank feeling? Well worth the 9 false starts.

I'd love OBS to work on its own to remove a few more steps from my setup!

mrlambchop··on Why Is Facebook Not in the Cloud Business?
>The main devs have given up trying to debug it.

Well, now you have my interest! Is this a talent gap or fatigue in the organization? Sounds like a meaty challenge.

mrlambchop··on Kateryna Yushchenko
I think this the channel that I was last watching:

https://www.youtube.com/watch?v=a2Gux1jDm8Q

← PreviousPage 2 of 5Next →