When you first learn about digital logic, it probably seems like it is easy. You learn about AND and OR gates and figure that’s not very hard. However, going from a few basic gates to something like a CPU or another complex system is a whole different story. It is like going from “Hello World!” to writing an operating system. There’s a lot to understand before you can make that leap. In this set of articles, I want to talk about a way to organize more complex FPGA designs like CPUs using a technique called pipelining.
These days a complex digital logic system is likely to be on an FPGA. And part of the reason we can get fooled into thinking digital is simple is because of the modern FPGA tools. They hide a lot of complexity from you, which is great until they can’t do what you want and then you are stuck. A good example of that is where you are trying to hit a certain clock frequency. If you aren’t careful, you’ll get a complaint from the tool that you can’t meet timing constraints.
After recent talks, Microsoft has now officially confirmed that it will be merging GitHub to master. The acquisition will cost $7.5 billion, and has received mixed reactions so far. A staple of the open source community, GitHub is well known to Hackaday readers, and has played a key role in developing an incredible amount of the software we use on a daily basis.
Microsoft has embarked on a community crusade of late, seemingly trying to win some respect from developers and makers. Under the encouragement of Satya Nadella, we’ve had Visual Studio Code, Typescript, the Ubuntu-on-Windows saga, and many more. It’s hard to tell whether these endeavours have succeeded in winning the hearts of the community or not, but those who distrust Microsoft may be looking to make a move away from GitHub. In fact, since murmurs started about the possibility of the acquisition, GitLab, one of GitHub’s major competitors, has reported 10x the number of normal repositories moving to GitLab.
How does GitHub make money? Mainly through paid private repositories plans, and GitHub Enterprise for businesses. This provides GitHub with enough cash to allow free public repositories for the community. It will be interesting to see what changes in business and culture are made (if any) by Microsoft’s Nat Friedman (founder of Ximian) who will be taking the role of GitHub CEO.
While nobody is exactly sure on the exact etymology of the term, Thomas Edison mentioned some of his inventions being riddled with “bugs” in a letter he wrote all the way back to 1878. In the context of computers, any loyal Hackaday reader should know Grace Hopper’s infamous account of a moth being caught in an early electromechanical computer’s relays. To this pantheon of troublesome insects, we would humbly summit the story of a Sonoff TH16 switch being destroyed by a lowly ant.
According to [CNX Software], the Sonoff TH16 had been working perfectly for a year and a half before the first signs of trouble. One day the switch wouldn’t respond to commands, and a power cycle didn’t seem to clear the issue. Upon opening up the device to see what had gone amiss, it was clearly apparent something had burned up. But upon closer inspection, it wasn’t a fault with the design or even a shoddy component. It was the product of an overly curious ant who got a lot more than he bargained for.
Consulting the wiring diagram of the Sonoff, it appears this poor ant had the terrible misfortune of touching the pins of a through hole capacitor on the opposite side of the board. Bridging this connection not only gave him a lethal jolt, but apparently caused enough current to surge through a nearby resistor that it went up in smoke.
Now, some might wonder (reasonably so) about the conditions in which this switch was operating. If bugs could climb into it, it’s not unreasonable to assume it wasn’t well protected from the elements. Perhaps damp conditions were to blame for the failure, and the image of the ant “riding the lighting” is nothing more than a coincidence. Maybe. But sometimes you just gotta believe.
Incidentally, if you’d like to learn more about the woman who helped secure “bugs” in the IT lexicon, here’s a good place to start.
Ed Note: If you think you’re having deja vu all over again, we did point to this story in the Sunday Links roundup, but the graphics are just so good we couldn’t resist running it in full.
[Ramin Assadollahi] uses his Raspberry Pi Zero W as a self-contained mobile desktop, connecting to it over VNC from another computer when he wants to hack away at some code or work on a new project. But he often found himself wishing there was some convenient way of displaying pertinent into right on the device, such as what IP address the Pi Zero had pulled. Then he found the 2.13 inch e-Paper HAT for the Pi Zero from Waveshare, and it all clicked into place.
The final device, which he refers to as the StickPi, combines a Pi Zero W, the Waveshare e-Paper display, and a strip of protoboard featuring a few tactile buttons, all inside of a 3D printed case. To really get the most out of the internal volume of his case, [Ramin] soldered the header pins to the Pi Zero in the middle, allowing him to create a space-saving “sandwich” out of all the components.
With the e-Paper display, [Ramin] now has a way to show information on the device itself without having to connect to it over the network. But thanks to the tactile switches on the back connected to the Pi’s GPIO, he also has six programmable buttons that could do anything he wants.
In the most basic implementation, each button could execute a command or script on the Pi. But [Ramin] has something a little more advanced in mind. In the video after the break, he explains that his next step is going to be working on an actual user interface for the Pi’s e-Paper screen, making use of the roughly gamepad style layout of the rear buttons. A “paged” interface with scrolling options would allow the user to perform all sorts of functions quickly and easily, and we’re looking forward to seeing what he comes up with.
[Martin Lorton] acquired a GPS-disciplined oscillator. He wasn’t quite sure what to do with it, so he did a little research and experimentation. If you have about two hours to spare, you can watch his videos where he shares his results (see below).
The unit he mainly looks at is a Symmetricom TrueTime XL-DC, and even on eBay it ran over $500. However, [Martin] also looks at a smaller unit that is much more affordable.
The CAN bus is a rich vein to mine for a hacker: allowing the electronic elements of most current vehicles to be re-purposed and controlled with ease. [MikrocontrollerProjekte] has reverse engineered a CAN bus media and navigation controller and connected it to an STM32F746G-Discovery board. The STM32 is in turn connected to an Android phone, and allows the media controller to trigger a large number of functions on the phone, including music playback, maps, and general Android navigation.
When reverse engineering the controller, [MikrocontrollerProjekte] employed a variety of approaches. A small amount of information was found online, some fuzzing was done with random CAN bus IDs and messages, as well as some data logging with the device inside the car to identify message data to the relevant IDs on the bus.
The STM32F746G-Discovery board acts as a Human Interface Device (HID), emulating a mouse and keyboard connected to the Android phone via USB OTG. The LCD screen shows the output of the keystrokes and touchpad area. We’re not sure how useful the mouse-emulation would be, given that the phone has a touchscreen, but the media functions work really well, and would also make a really snazzy music controller for a PC.
The Tesla Model 3 has been available for almost a year now, and hackers and tinkerers all over the world are eager to dig into Elon’s latest ride to see what makes it tick. But while it’s considerably cheaper than the Model S that came before it, the $35,000+ USD price tag on the new Tesla is still a bit too high to buy one just to take it apart. So for budget conscious grease monkeys, the only thing to do is wait until somebody with more money than you crashes one and then buy the wreckage cheaply.
Tesla Model 3 battery monitor board
Which is exactly what electric vehicle connoisseur [Jack Rickard] did. He bought the first wrecked Model 3 he could get his hands on, and proceeded to do a lengthy teardown on what’s arguably the heart and soul of the machine: its 75 kWh battery pack. Along the way he made some interesting discoveries, and gained some insight on to how Tesla has been able to drop the cost of the Model 3 so low compared to their previous vehicles.
On a Tesla, the battery pack is a large flat panel which takes up effectively the entire underside of the vehicle. To remove it, [Jack] and his assistant raise the wreck of the Model 3 up on a standard lift and then drop the battery down with a small lift table. Here the first differences are observed: while the Model S battery was made for rapid swapping (a feature apparently rarely utilized in practice), the battery in the Model 3 battery is obviously intended to be a permanent piece of the car; removing it required taking out a good portion of the interior.
With the battery out of the car and opened up, the biggest change for the Model 3 becomes apparent. The battery pack actually contains the charger, DC-DC converter, and battery management system in one integrated unit. Whereas on the Model S these components were installed in the vehicle itself, on the Model 3, most of the primary electronics are stored in this single module.
That greatly reduces the wiring and complexity of the car, and [Jack] mentions the only significant hardware left inside the Model 3 (beyond the motors) would be the user interface computer in the dashboard. When the communication protocol for this electronics module is reverse engineered, it may end up being exceptionally useful for not only electric vehicle conversions but things like off-grid energy storage.