I met up with one of my peeps for lunch the other week. We’re chatting about stuff, then we started talking about coding. We have a nice rivalry – I’m very much about the “art and craft” of software engineering, and he’s all about using the latest/greatest to build stuff. I call B.S. on his shinny new, and he calls B.S. on my old and crusty.
Me: “Dependency Injection used to be your jammy jam. You told me that my code sucked because I called a constructor directly. So what’s your newest hotness?” Continue reading “Wizbangadry”
My BMW S1000R motorcycle is my favorite bike so far. I like everything about it except the headlights – when I turn on the high beams, both bulbs stay on, then after a few seconds the low beam turns off. Arg!!!! I want as much light as possible.
I have a factory service manual (FSM), but the FSM doesn’t have any wiring diagrams or technical information about the CANBUS. I’m going to have to hack it and I’ll show the steps I used to figure out the wiring. However this comes with a disclaimer – use this at your own risk. Messing around with your CANBUS can be life-threatening and could cost you a lot of $$$ if you break a controller.Continue reading “BMW S1000R Motorcycle CANBUS Hacking”
Microsoft announced that Progressive Web Apps (PWA) will be added to the Microsoft Store (the “Store”). This means just like a native app (or Universal App in Microsoft Store parlance), you can build a PWA app and have that added to the Store. From a developer perspective, this is great. A PWA app in theory should be much more cross-platform than a native app. But what I find more interesting is thinking about the “why’s” a company would do something.
The big tech companies have been battling for years. When you are building your business, trying to navigate the cesspool of technologies is a challenge. You have to be careful of betting on a technology that could get dropped when it isn’t a strategic fit anymore. Remember a thing called Silverlight? As developers, we know its possible to have standards and the Web has been that shinning light. But Apple, Google, and Microsoft all have different objectives. Unfortunately, rather than evaluating a technology on its technical merits, it’s actually more important to evaluate it on the viability of its long term success. Continue reading “Progressive Web Apps and The Microsoft Store”
This is a picture of my workbench and some gizmo I was making last year. I originally wanted to be an electronics engineer. However, back in the dark ages of the 80’s, hardware geeking was much harder than today. The cost of the test equipment was prohibitively expensive and way outside of my reach. Access to parts was usually limited to what you could find at Radio Shack. If you wanted broader access to parts, such as CPUs, memory, or other integrated circuitry your best bet was to ask for engineering samples. I was a young starving student and I did not have the money nor patience required to get into hardware, so I shifted to software. Continue reading “Messy Workbench”
We’ve prototyped the circuit, built the software, and flashed the microcontroller. Everything should be working correctly, but it just looks like a pile-of-parts and wires. Now we need to make this more permanent and finished.
Ever since I outfitted my truck for the Zombie Apocalypse, parking it in my garage is something of a pain. The front and rear bumpers have lengthened the wheelbase so I only have a few inches of margin – if I drive in too far I’ll hit the front wall, and if I don’t drive in far enough the garage door will hit the spare tire and refuse to close.
For years I put up with this until the hassle overcame my laziness factor. I could have hung a tennis ball from the ceiling, but I’ve got a pretty cool garage “man cave” and a dangling tennis ball isn’t cool. Plus, I’ve got some geek cred I need to maintain, I can build it myself, and more importantly maybe this can teach/inspire someone else along the way.
I’ve organized this into a two part series. Part one will give you some background info, instructions on bread-boarding (prototyping) the circuit, and getting the software flashed to the circuit. Additionally, I’ll point out some of the more important details in the software and give reasons why this was done.
While you might see some of the electronic equipment on my bench, don’t let that stop you. All you need is a multimeter, and you don’t really need that unless stuff goes whacko. Start with a simple breadboard and hookup wire. If you decide to make this more permanent, I’ve included links to “perma-proto” boards. These look just like the breadboard you are using, but you can solder stuff to them. Continue reading “Garage Parking Assist – Part One”