E-ink displays are awesome. Humans spent centuries reading non-backlit devices, and frankly it’s a lot easier on the eyes. But have you looked into driving one of these critters yourself? It’s a nightmare. So chapeau! to [Julien] for his FPGA-based implementation that not only uses our favorite open-source FPGA toolchain, and serves as an open reference implementation for anyone else who’s interested.
Getting just black and white on an E-ink display is relatively easy — just hit the ink pixels with the same signal over and over until they give up. Greyscale is made by applying much more nuanced voltages because the pixels are somewhat state-dependent. If the desired endpoint is a 50% grey, for instance, you’d hit it with a different pulse train if the pixel were now white versus if it were now black. (Ever notice that your e-book screen periodically does a white-black flash? It’s resetting all the pixels to a known state.) And that’s not even taking into account the hassles with the various crazy voltages that E-ink displays require, which [Julien] wisely handed off to a dedicated chip.
In the end, the device has to make 20-50 passes through the screen for one user-visible refresh. [Julien] found that the usual microcontrollers just weren’t capable of the speed that he wanted, hence the FPGA and custom waveform tables. We’ve seen E-ink hacks before, and [Julien] is standing on the shoulders of giants, most notably those of [Petteri Aimonen] and [Sprite_tm]. [Julien]’s hack has the fastest updates we’ve ever seen.
We still can’t wait for the day that there is a general-purpose E-ink driver chip out there for pennies, because nearly every project we make with a backlit display would look better, and chew through the batteries slower, with E-ink. In the meantime, [Julien]’s FPGA implementation is pretty close, and it’s fully open.
It seems the older I get, the density of broken and/or old laptops on my garage grows. That’s one of the reasons it’s interesting to know which projects are being made to bring back to life these things. [zigzagjoe] sent us an interesting project he made out of a Lenovo Yoga 2 motherboard: a pfsense router/firewall.
The laptop was damaged, but the main board was functioning just fine. What started as adding an old Pentium heatsink to it and see how good it would work, escalated to a fully working, WiFi, 4 port gigabyte NIC, 3D printed case firewall. The board had PCI-E via an M.2 A/E key slot for the WiFi module but [zigzagjoe] need a normal PCI-E slot to connect the quad-port NIC. He decided to hand solder the M.2 A/E (WiFi card) to have a PCI-E 1x breakout since his searches for an adapter came out empty or too expensive. For storage, he chose 16GB SanDisk U100 Server half-slim SSD for its power efficiency. Once again, the SSD cable had to be hacked as the laptop originally used a super-slim HDD with a non-standard connector. The enclosure was then designed and 3D printed.
But [zigzagjoe] went further to optimize his brand new router/firewall. On the project documentation, we can see a lot of different modifications went into building it, such as bios modification for new WiFi modules to work, an Attiny85 fan driver for extra cooling, a 45W PSU inside the case and other interesting hacks.
This is not your typical laptop to firewall hack, that’s for sure.
The BeagleBone famously fits in an Altoids tin. Even though we now have BeagleBone Blacks, Blues, and Greens, the form factor for this curiously strong Linux board has remained unchanged, and able to fit inside a project box available at every cash register on the planet. There is another Altoids tin, though. The Altoid mini tin is just over 60×40 mm, and much too small to fit a normal size BeagleBone. [Michael Welling] has designed a new BeagleBone to fit this miniature project box. He’s calling it the Pocketbone, and it’s as small as the mints are strong.
The Pocketbone is based on the Octavo Systems OSD355x family, better known as the ‘BeagleBone on a chip’. This chip features a TI AM355x ARM Cortex A8, up to 1GB of DDR3 RAM, 114 GPIOs, 6 UARTs, 2 SPIs, 2x Gigabit Ethernet, and USB. It’s housed in a relatively large BGA package that makes routing easy, and as a proof of concept [Jason Kridner] built a PocketBone in Eagle.
[Michael]’s version of the Pocketbone is based on the earlier proof of concept, with a few handy additions. There’s an IO expansion header, provisions for a battery input, a few fixes to the USB, and all the parts are on one side of the board facilitating easier assembly. This version of the Pocketbone was created using KiCad, which will endear the project to the Open Source community.
[Scotty Allen] from Strange Parts, has just concluded a three month journey of what clearly is one of the most interesting Shenzhen market projects we have seen in a while. We have all heard amazing tales, pertaining the versatility of these Chinese markets and the multitude of parts, tools and expertise available at your disposal. But how far can you really go and what’s the most outrageous project can you complete if you so wished? To answer this question, [Scotty] decided to source and assemble his own Iphone 6S, right down to the component level!
The journey began by acquiring the vehemently advertised, uni-body aluminium back, that clearly does not command the same level of regard on these Chinese markets when compared to Apple’s advertisements. [Scotty’s] vlog shows a vast amount of such backings tossed as piles in the streets of Shenzhen. After buying the right one, he needed to get it laser etched with all the relevant US variant markings. This is obviously not a problem when the etching shop is conveniently situated a stones throw away, rather simplistically beneath a deck of stairs.
Next came the screen assembly, which to stay true to the original cause was purchased individually in the form of a digitizer, the LCD, back-light and later casually assembled in another shop, quicker than it would take you to put on that clean room Coverall, you thought was needed to complete such a job.
[Scotty] reports that sourcing and assembling the Logic board proved to be the hardest part of this challenge. Even though, he successfully purchased an unpopulated PCB and all the Silicon; soldering them successfully proved to be a dead end and instead for now, he purchased a used Logic board. We feel this should be absolutely conquerable if you possessed the right tools and experience.
Modern displays are fascinating little things. In particular, the E-Ink displays employed in modern E-books achieve mesmerising paper like contrast with excellent standby power consumption. Many of us at some point have had a go at experimenting with DIY displays, but been discouraged by the miniature scales involved. Driving them is hard enough, but building your own?
[MChel] has achieved some excellent success in building a simple E-Ink display. The account presented on this Russian electronics forum, graciously translated for us by Google Translate, outlines that the greatest barrier to pursing this in your home lab is creating the conductive layer that serve as electrodes for each pixel and depositing the thin layer of electrostatically charged ink pellets onto another transparent yet conductive film. [MChel] solution was to extract a small a portion of pre-deposited ink from a smashed and notoriously brittle E-ink display. Next, instead of attempting to build an ambitious and dense grid of electrodes, [MChel] etched a simple battery indicator on a PCB. The ink and the electrodes were then fused with some DIY graphite based conductive glue and sealed with some careful yet ingenuitive epoxy laying skills.
The result is a working battery indicator that consumes no power, whilst reporting any remaining power.
There is something increasingly defiant and laudable about home-brewing technologies, otherwise thought to be confined to multi-million dollar factories. We have already covered how you should go about making some conductive glass and using it in your homemade LCD.
There are times when you might want an odd-value resistor. Rather than run out to the store to buy a 3,140 Ω resistor, you can get there with a good ohmmeter and a willingness to solder things in series and parallel. But when you want a precise resistor value, and you want many of them, Frankensteining many resistors together over and over is a poor solution.
Something like an 8-bit R-2R resistor-ladder DAC, for instance, requires seventeen resistors of two values in better than 0.4% precision. That’s just not something I have on hand, and the series/parallel approach will get tiresome fast.
Ages ago, I had read about trimming resistors by hand, but had assumed that it was the domain of the madman. On the other hand, this is Hackaday; I had some time and a file. Could I trim and match resistors to within half a percent? Read on to find out.
Industrial controls are fun to use in a build because they’re just so — well, industrial. They’re chunky and built to take a beating, both from the operating environment and the users. They’re often power guzzlers, though, so knowing how to convert an industrial indicator for microcontroller use might be a handy skill to have.
Having decided that an Allen-Bradley cluster indicator worked with the aesthetic of his project, a Halloween prop of some sort, [Glen] set about dissecting the controls. Industrial indicators usually make that a simple task so that they can be configured for different voltages in the field, and it turned out that the easiest approach to replacing the power-hungry incandescent bulbs with LEDs was to build a tiny PCB to fit inside the four-color lens.
The uniquely shaped board ended up being too small for even series resistors for the LEDs, so a separate driver board was also fabbed. The driver board is set up to allow a single 5-volt supply and logic levels of 3.3-volt or 5-volt, making the indicator compatible with just about anything. The finished product lends a suitably sinister look to the prop.
If you’re not familiar with the programmable logic controllers such an indicator would be used with in the field, then maybe you should try running Pong on a PLC for a little background.