This week I learned

A running list of interesting, but possibly useless things I’ve learned each week

Week of 14 October 2018

  • On AWS Linux, you can kill a process using a certain port thusly: fuser -k tcp 3000 assuming the port in use is 3000. It doesn’t work on macOS, but there you can use kill -9 $(lsof -i:4000 -t)

Week of 10 June 2018

  • The correct way to put a iPhone into recovery mode. - the instructions provided online by Apple and parroted by multiple other sites is flat-out wrong. Here’s the correct way: Hold the power button and home button for exactly 10 seconds then release the power button but keep holding the home button for another 15 seconds. Then connect to iTunes.

Week of 13 May 2018

  • In macOS, if you want to launch a new instance of an application, it’s just open -na name_of_app, e.g. open -na Calculator.

Week of 6 May 2018

  • If you use the I2C bus on the ESP32, you still need external pull-up resistors. The internal pullups don’t cut it. This doesn’t just apply to ESP32, by the way. Source #electronics #esp32 #i2c

Week of 29 April 2018

  • There’s a library for the TM1637-based 4 digit LED boards. - I was just in the midst of writing an ESP-IDF component for this. (Update 2018-05-05: I adapted this library to display floating point numbers. See this article.) #esp32 #electronics
  • Hydraulic quick couplers, also called hydraulic quick disconnect or QD fittings should click in easily. If they don’t, then it’s usually because of excess pressure in the line. This can either be on the tractor side or the implement side. Both the male side and the female side of the coupler has a nipple that can be used to bleed off pressure. When replacing the snowblower attachment with the loader on our Kubota I couldn’t attach two of the four hydraulic lines. It turns out that it was excess pressure (from last year, even!?) on the implement side. To relieve the pressure, I took a socket wrench extension, placed it inside the female coupling, wrapped it with a rag and gave the other end of the socket extension a couple sharp blows. A tiny amount of hydraulic fluid leaked out but that was enough to relieve pressure in the hose and I could easily attach the remaining lines.
  • If you want to develop a personal library of custom components for ESP32, then you can specify a search location for them in the project Makefile using the variable EXTRA_COMPONENT_DIRS: - Source ESP32 programming guide - documentation, build system #esp32 #electronics
  • To remove git tracking information from a directory, it’s just rm -rf git. Source - Stack Overflow

Week of 15 April 2018

  • System Integrity Protection (SIP) can prevent you from installing certain development software on macOS systems. For the average user this is a great idea. For a developer, hacker or tinkerer, it’s terrible. For example, trying to install the ESP32 toolchain for macOS sudo easy_install pip failed because Python is using an outdated version of openssl. Guess what, SIP prevents you from making the necessary fixes. #macos #electronics #esp32
  • Want to know if SIP is enabled on your Mac? From the Terminal, or iTerm it’s csrutil status. #macos Source
  • Want to know if SIP is restricting certain directories? It’s ls -lO /System /usr and look for restricted in the output. #macos Source
  • To disable SIP, it’s csrutil disable but it only works it you boot into recovery mode. #macos Source
  • Booting into recovery mode on macOS is done by restarting with command-R until the Apple logo comes up. #macos Source
  • The response to “Спасибо” is “не за что”, not “ничего”. Why can I not remember that?
  • Upgrading OpenSSL on macOS can be complicated, but here’s the method #macos Source
  • There are some PCB’s that have half-round holes at the edge where you would normally mount header pins. These are called castellation vias or castellation holes. They are intended for you to mount directly to another PCB. #electronics Source: Prototype PCB
    Castellated vias