We’ve never tried using an HDMI to VGA converter with Raspberry Pi. We heard they were expensive and have always just used HDMI out (although DVI would be just as easy). Apparently if you have a VGA converter that isn’t powered the RPi board may output unstable video due to lack of current from the connector. [Orlando Cosimo] shows how to fix the problem with a few inexpensive components.
Just this morning we saw a portable PSU using an LM317. This project uses the same part, but in a different way. [Orlando] uses three resistors in parallel to make the LM317 behave like a current regulator (as opposed to a voltage regulator) which will output about 550 milliamps. Input voltage is pulled directly from the 5V line of the microUSB port. The output is injected into the HDMI connector. This will boost the amount of juice available to the unpowered VGA converter, stabilizing the system.
There are a lot of other power hacks out there for the RPi. One of our favorites is pulling the stock linear regulator in favor of a switch mode regulator.
[via Dangerous Prototypes]
Behold, something we’ve always wanted. [Matthieu] mounted his Raspberry Pi board inside of a computer monitor. His work makes for the cheapest smart-TV modification we can possibly think of.
The image above shows the monitor’s driver board on the left, with the Raspberry Pi mounted on the back plastic cover. [Matthieu] used a short HDMI cable to connect the two. The HDMI connector plugs into the RPi directly. The other end has been cut off and the wires soldered to the DVI pins on the monitor’s PCB. This is not a problem since HDMI and DVI use electrically identical protocols. The one thing missing is audio. But if you were pulling off the same hack with a device that had HDMI (like a television) it would just be a matter of also soldering in the audio connections. While he had his iron hot he also connected a 5V source from the monitor board to the RPi. He completes his hack by cutting a slot in the monitor case to allow access to the SD card.
We’ve long wanted an XBMC computer we could velcro to the back of the TV and the RPi turned out to be just the thing. Now we’ve got to consider cracking open the TV to replicate this internalization hack!
[Hamster] admits this 1080p HDMI hack for an FPGA doesn’t put a signal that’s fully up to specifications. But as you can see in the image above it does output a 1920×1080 image at 60 Hz, which is the size and frequency of full HD video. It falls just short due to some jitter, which may be just fine if this is only being used for early prototyping and will be replaced with a dedicated encoder later in the design process.
Here he’s chosen a Pipistrello board but thinks that any device which has a Spartan 6 chip with the differential pairs connected to an HDMI socket will work. The difficulty of the task comes in serializing four output channels at 1500 Mb/s each. Because of this just coding your logic isn’t going to work. After roughing out the design [Hamster] went back in and chose to manually place some of the components to ensure that data from each channel arrives at the same time.
While you’re messing with HDMI you may also want to give this overlay hack a try.
There’s two really useful parts to this hack which involves sniffing the HDMI protocol’s HDCP security keys. The first is just getting at the signals without disrupting communications between two HDCP capable devices. To do so [Adam Laurie] started by building an HDMI breakout cable that also serves as a pass-through. The board seen above is known as an HDMI screw terminal board. The image shows one cable connecting to itself during the fabrication process. What he did was cut one end off of an HDMI cable, then used a continuity tester to figure out which screw terminal connects with which bare wire. After all the wires are accounted for the end with the plug goes to his TV, with a second cable connecting between the board’s socket and his DVD player.
The rest of his post is dedicated to sniffing the security keys. His weapon of choice on this adventure turns out to be a Bus Pirate but it runs a little slow to capture all of the data. He switches to a tool of his own design, which runs on a 60MHz PIC32 demo board. With it he’s able to get the keys which make decrypting the protected data possible.
We love to see derivative works that take a great hack and make it even better. This LCD Laptop resurrection project is an excellent example. [Alex] took the work seen on this other FPGA LCD driver and delivered a leap forward on the final hardware packaging.
The link at the top drops you into the second page of [Alex’s] project thread. But if you go back to the beginning you’ll see the protoboard and spaghetti wiring which started off the process. Obviously if he plans to use this for a length of time it needs to be fortified or he’ll be cracking it open and grabbing a soldering iron again before long. But rather than just tidying up he ended up spinning his own circuit boards that make the screen look like it was manufactured to be used in this way.
He was able to mount the add-on board inside the LCD bezel, cutting out a space for the HDMI connector, barrel jack, trimpot, and the head of the inductor which was just a bit too large to fit inside. The trimpot allows him to adjust the LCD brightness. As far as we can tell the HDMI connector is just an easy way for him to deliver the drive signals from the Papilio board (FPGA) to the screen.
It’s fairly easy to create VGA with an FPGA using a simple R/2R DAC. As [Mike] points out, this requires a lot of IO pins, and many development boards only support 8 bit VGA. Analog VGA is being replaced with DVI-D and HDMI on many devices nowadays, so it would be nice to port projects from VGA to DVI-D.
To address this, he’s come up with a simple DVI-D implementation in VHDL. The result converts RGB and sync data for VGA into DIV-D. Since DVI-D and HDMI both use the same signals for video, this can be connected to either input on a monitor or TV.
This implementation is shown displaying a test pattern on the Pipistrello development board, which features a Spartan 6 LX45 FPGA, but the project was written to be portable to other vendor’s FPGAs. With the right connector and a fast enough clock speed, this project should help move a project from 8 bit VGA to glorious 32 bit color.
[bunnie] is up to his old tricks again. He successfully implemented a man-in-the-middle attack on HDCP-secured connections to overlay video in any HDMI video stream. There’s a bonus, too:
his hack doesn’t use the HDCP master-key. It doesn’t violate the DMCA at all.
HDCP is the awful encryption scheme that goes into HDMI-compatable devices. Before HDCP, injecting video overlays or even chroma keying was a valid interpretation of fair use. [bunnie] thinks that HDMI devices should have the same restrictions analog devices have, so he decided to funnel his own video into his TV.
The build uses the NeTV, a handy and cheap FPGA board with an HDMI input and output. [bunnie] got the FPGA to snoop the HDMI bus and decide if a pixel needs to be changed or not. This isn’t much different from what researchers in Germany did a few months ago, but unlike the academic security researchers, [bunnie] gives you a shopping list of what to buy.
As an example of his work, [bunnie] implemented something like a ‘tweet ticker’ on HDCP-encrypted video. There’s very little the NeTV setup can’t do from chroma keying, filters, or simply dumping the HDMI stream to a hard disk. Check out the slides from [bunnie]’s talk to get better idea of what he did.
[PAPPP] found a video of the talk in question. Check that out after the break.
Continue reading “Overlaying video on encrypted HDMI connections”