<?xml version='1.0'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:atom="http://www.w3.org/2005/Atom" >
<channel>
	<title><![CDATA[PublMe - Space: Posted Reaction by PublMe bot in PublMe]]></title>
	<link>https://publme.space/reactions/v/60056</link>
	<atom:link href="https://publme.space/reactions/v/60056" rel="self" type="application/rss+xml" />
	<description><![CDATA[]]></description>
	
	<item>
	<guid isPermaLink="true">https://publme.space/reactions/v/60056</guid>
	<pubDate>Tue, 28 Oct 2025 21:00:01 +0100</pubDate>
	<link>https://publme.space/reactions/v/60056</link>
	<title><![CDATA[Posted Reaction by PublMe bot in PublMe]]></title>
	<description><![CDATA[
<p>Original E39 Head Unit Modernized</p>
<div><img width="800" height="600" src="https://hackaday.com/wp-content/uploads/2025/10/e39-computer-main.jpg?w=800" alt="" srcset="https://hackaday.com/wp-content/uploads/2025/10/e39-computer-main.jpg 1067w, https://hackaday.com/wp-content/uploads/2025/10/e39-computer-main.jpg?resize=250, 187 250w, https://hackaday.com/wp-content/uploads/2025/10/e39-computer-main.jpg?resize=400, 300 400w, https://hackaday.com/wp-content/uploads/2025/10/e39-computer-main.jpg?resize=800, 600 800w" data-attachment-id="872323" data-permalink="https://hackaday.com/2025/10/28/original-e39-head-unit-modernized/e39-computer-main/" data-orig-file="https://hackaday.com/wp-content/uploads/2025/10/e39-computer-main.jpg" data-orig-size="1067,800" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="e39-computer-main" data-image-description="" data-image-caption="" data-medium-file="https://hackaday.com/wp-content/uploads/2025/10/e39-computer-main.jpg?w=400" data-large-file="https://hackaday.com/wp-content/uploads/2025/10/e39-computer-main.jpg?w=800"></div><p>Although most modern cars have moved to using proprietary components nearly everywhere, especially when it comes to infotainment systems, for a brief moment which peaked in the 90s and 00s most cars shipped with radios that fit in a standard size opening called a DIN slot. If you wanted a new Pioneer or Kenwood stereo it was usually a simple matter to slide the factory radio out and put your choice of aftermarket head unit in its place. [Stefan] has an E39 BMW from this era and <a rel="nofollow" href="https://e39.dev/" target="_blank">wanted to upgrade the factory radio but use the original hardware instead of replacing it</a>.</p><p>This isn’t just a simple stereo upgrade either. [Stefan] has gone all-out for this build which he started in 2020. Beginning with a Kotlin/Jetpack Compose Linux application to handle control input from the vehicle’s various knobs and buttons he moved on to a map application and an on-screen keyboard. From there he implemented VGA to send video to the OEM screen, and now has a fully functional system based on a Raspberry Pi. It does everything the original unit can do including playing music and showing the feed from the backup camera, plus adds plenty of new, modern features like Bluetooth.</p><p>For a certain classic car enthusiast, this build hits a sweet spot of modernizing a true classic like the E39 without removing or permanently modifying any OEM components. The amount of work that went into it is pretty staggering as well, with [Stephan] putting in over 100 hours of work just to get the video signal timing correct. We also like it because it reminds us of the flash-in-the-pan “carputer” trend from the late 00s <a rel="nofollow" href="https://hackaday.com/2009/09/01/homebrew-carputer/">where people in the pre-smartphone age were shoving all kinds of computing horsepower in their trunks</a>.</p>]]></description>
	<dc:creator>PublMe bot</dc:creator>
</item>

</channel>
</rss>