<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>app &#8211; About Things | A Hans Scharler Blog</title>
	<atom:link href="https://nothans.com/tag/app/feed" rel="self" type="application/rss+xml" />
	<link>https://nothans.com</link>
	<description>Life, Comedy, Games, Tech, Marketing, and Community</description>
	<lastBuildDate>Sun, 05 Jul 2026 23:24:44 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://i0.wp.com/nothans.com/wp-content/uploads/2023/02/cropped-settings.png?fit=32%2C32&#038;ssl=1</url>
	<title>app &#8211; About Things | A Hans Scharler Blog</title>
	<link>https://nothans.com</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">114568856</site>	<item>
		<title>Layout your Game Room without Moving 300-pound Machines Around</title>
		<link>https://nothans.com/layout-your-game-room-without-moving-300-pound-machines-around</link>
					<comments>https://nothans.com/layout-your-game-room-without-moving-300-pound-machines-around#respond</comments>
		
		<dc:creator><![CDATA[Hans Scharler]]></dc:creator>
		<pubDate>Sun, 05 Jul 2026 23:24:39 +0000</pubDate>
				<category><![CDATA[Games]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[arcade]]></category>
		<category><![CDATA[game room]]></category>
		<category><![CDATA[pinball]]></category>
		<guid isPermaLink="false">https://nothans.com/?p=5462</guid>

					<description><![CDATA[]]></description>
										<content:encoded><![CDATA[
<p>A pinball machine weighs about 300 pounds. Arcade cabinets heavy. I am always looking to maximize my bonus room space&#8230; and dream. I built a quick-and-dirty web app to lay out your game room. Add games, rotate, resize, add clearance, add customized blocks. Iterate.</p>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe class="youtube-player" width="750" height="422" src="https://www.youtube.com/embed/fwVzahs8-V0?version=3&#038;rel=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;fs=1&#038;hl=en-US&#038;autohide=2&#038;wmode=transparent" allowfullscreen="true" style="border:0;" sandbox="allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox"></iframe>
</div></figure>


<h2 class="wp-block-heading" id="what-i-made">What I made</h2>


<p>It&#8217;s called <a href="https://github.com/nothans/gameroom-designer">Gameroom Designer</a>. It lays out your game room to scale, right in the browser. You set your room&#8217;s real dimensions, drop in machines at their real footprints, and slide everything around until it works, before you move a single machine.</p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><a href="https://github.com/nothans/gameroom-designer"><img data-recalc-dims="1" fetchpriority="high" decoding="async" width="750" height="472" data-attachment-id="5463" data-permalink="https://nothans.com/layout-your-game-room-without-moving-300-pound-machines-around/gameroom-designer-screenshot" data-orig-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/gameroom-designer-screenshot.png?fit=1271%2C800&amp;ssl=1" data-orig-size="1271,800" data-comments-opened="0" data-image-title="gameroom designer app screenshot" data-image-description="" data-image-caption="" data-large-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/gameroom-designer-screenshot.png?fit=750%2C472&amp;ssl=1" src="https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/gameroom-designer-screenshot.png?resize=750%2C472&#038;ssl=1" alt="screenshot  of the game room designer app" class="wp-image-5463" srcset="https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/gameroom-designer-screenshot.png?resize=1024%2C645&amp;ssl=1 1024w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/gameroom-designer-screenshot.png?resize=300%2C189&amp;ssl=1 300w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/gameroom-designer-screenshot.png?resize=768%2C483&amp;ssl=1 768w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/gameroom-designer-screenshot.png?resize=750%2C472&amp;ssl=1 750w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/gameroom-designer-screenshot.png?w=1271&amp;ssl=1 1271w" sizes="(max-width: 750px) 100vw, 750px" /></a><figcaption class="wp-element-caption">Gameroom Designer</figcaption></figure>
</div>


<p>You can try it here:&nbsp;<a href="https://nothans.github.io/gameroom-designer/">https://nothans.github.io/gameroom-designer/</a></p>


<h2 class="wp-block-heading" id="how-it-works">How it works</h2>


<p>Start by typing your room size in feet (or meters, if that&#8217;s your thing). You get a room drawn to scale with a grid.</p>



<p>Then you fill it. There&#8217;s a searchable catalog of real stuff at real sizes: pinball (Stern, JJP, the Atari and generic widebodies), arcade uprights and cocktails and sit-down racers, a pool table, air hockey, foosball, shuffleboard, plus couches, bar stools, storage, the works. A 27-inch-wide pinball takes up exactly as much room next to an 84-inch sofa as it would in real life. Click an item to drop it in, or drag it straight onto the floor.</p>



<p>From there it&#8217;s the fun part. Drag machines around. Rotate them. Grab a whole row of pinballs, line up their edges, space them out evenly. Drop a dashed &#8220;clearance&#8221; zone around the pool table so you don&#8217;t forget you need five feet to actually swing a cue. Add doors, swing arc and all, so you can see the door won&#8217;t clip the cabinet you parked next to it. Zoom out to take in the whole room, use the minimap to get around, and when it looks right, export a PNG to show your partner exactly why the couch has to move.</p>



<p>There are a few example layouts built in, too, if you&#8217;d rather poke at a finished room than start from an empty one.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img data-recalc-dims="1" decoding="async" width="750" height="750" data-attachment-id="5464" data-permalink="https://nothans.com/layout-your-game-room-without-moving-300-pound-machines-around/image-109" data-orig-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/image.png?fit=750%2C750&amp;ssl=1" data-orig-size="750,750" data-comments-opened="0" data-image-title="Free Gameroom Designer App" data-image-description="" data-image-caption="" data-large-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/image.png?fit=750%2C750&amp;ssl=1" src="https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/image.png?resize=750%2C750&#038;ssl=1" alt="" class="wp-image-5464" style="width:512px;height:auto" srcset="https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/image.png?w=750&amp;ssl=1 750w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/image.png?resize=300%2C300&amp;ssl=1 300w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/image.png?resize=150%2C150&amp;ssl=1 150w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/image.png?resize=530%2C530&amp;ssl=1 530w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/07/image.png?resize=500%2C500&amp;ssl=1 500w" sizes="(max-width: 750px) 100vw, 750px" /></figure>
</div>

<h2 class="wp-block-heading" id="i-built-it-fast-with-ai">I built it fast, with AI</h2>


<p>I built and shipped this fast using Agentic AI.</p>



<p>The interesting part was never &#8220;the code got written.&#8221; That&#8217;s kind of a solved problem now if you&#8217;re one person building one thing. The interesting part was the loop. I&#8217;d use the tool, hit something that annoyed me, and fix it right then.</p>



<p>Dragging a rotated block sent it flying to the wrong spot, so I fixed the math. Resizing a block didn&#8217;t stick, so I fixed that. I shrank my browser window and the whole layout looked like it had wandered off, so I wrote it up as issue #1 and fixed that too. Ideas showed up and went in the same afternoon: circular clearance zones, doors and windows, even spacing, drag-straight-from-the-library. Then a deploy to GitHub Pages, a banner, a little intro video.</p>



<p>None of that is magic. It&#8217;s a build-use-fix loop, run tight. The machine is fast at the typing, but knowing what to build next is still the whole job.</p>


<h2 class="wp-block-heading" id="your-machine-your-data">Your machine, your data</h2>


<p>The whole thing runs in your browser. Your layout saves to your own machine, so there&#8217;s no account to make, no server to trust, and nothing leaving your computer. It&#8217;s free, and it&#8217;s open source under MIT, so the entire thing is on GitHub if you want to poke at it or fork it:&nbsp;<a href="https://github.com/nothans/gameroom-designer">https://github.com/nothans/gameroom-designer</a>.</p>


<h2 class="wp-block-heading" id="tell-me-whats-missing">Tell me what&#8217;s missing</h2>


<p>I just posted it over in the forum to get some real feedback, because I built this for people who have way more machines than I do.</p>



<p>So go break it. Tell me which machine I forgot, which part feels clunky, what you&#8217;d add. That&#8217;s the fastest way this gets any good.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nothans.com/layout-your-game-room-without-moving-300-pound-machines-around/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">5462</post-id>	</item>
		<item>
		<title>TouchShield Slide Two-way Communications</title>
		<link>https://nothans.com/touchshield-slide-two-way-communications</link>
					<comments>https://nothans.com/touchshield-slide-two-way-communications#respond</comments>
		
		<dc:creator><![CDATA[Hans Scharler]]></dc:creator>
		<pubDate>Sun, 21 Mar 2010 05:26:00 +0000</pubDate>
				<category><![CDATA[ThingSpeak]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[liquidware]]></category>
		<category><![CDATA[projects]]></category>
		<category><![CDATA[serial]]></category>
		<category><![CDATA[TouchShield Slide]]></category>
		<guid isPermaLink="false">http://nothans.com/touchshield-slide-two-way-communications</guid>

					<description><![CDATA[]]></description>
										<content:encoded><![CDATA[<p>Last summer, I got the GamePack from Liquidware which includes a touch screen display, joystick, microcontroller, and battery pack. With this kit, you can make a GameBoy from scratch. With some blood, sweat, and tears, I was able to re-create some games like Asteroids and Tetris.</p>
<p>The touch screen is called the TouchShield Slide which is a 320×240 OLED and resistive touch screen. The screen also has a microcontroller that is Arduino compatible and expands your program space. Since the screen is really a microcontroller in disguise, it can be used for many types of projects. Overall I am very happy with the screen, but I realized I didn’t know how to use it very well. I set out to learn and develop a protocol / reusable library that allows the screen to talk to a microcontroller and vice-versa. So I wanted to take a moment and explain what I learned &#8211; maybe you can get going faster than I did.</p>
<h3>The Goal</h3>
<p>My goal is to be able to display data on the screen that has been received from another device. The data requested would be initiated by a touch on the screen. The protocol has to be consistent and reliable while being flexible enough to be the basis for future projects.</p>
<p>Touch -&gt; TouchShield Slide -&gt; Arduino -&gt; TouchShield Slide</p>
<p><img data-recalc-dims="1" loading="lazy" decoding="async" data-attachment-id="1060" data-permalink="https://nothans.com/touchshield-slide-two-way-communications/system-overview-2" data-orig-file="https://i0.wp.com/nothans.com/wp-content/uploads/2010/03/System-Overview-1.jpg?fit=546%2C386&amp;ssl=1" data-orig-size="546,386" data-comments-opened="0" data-image-title="System Overview for TouchSlide" data-image-description="" data-image-caption="" data-large-file="https://i0.wp.com/nothans.com/wp-content/uploads/2010/03/System-Overview-1.jpg?fit=546%2C386&amp;ssl=1" class="aligncenter size-full wp-image-1060" src="https://i0.wp.com/nothans.com/wp-content/uploads/2010/03/System-Overview-1.jpg?resize=546%2C386" alt="" width="546" height="386" srcset="https://i0.wp.com/nothans.com/wp-content/uploads/2010/03/System-Overview-1.jpg?w=546&amp;ssl=1 546w, https://i0.wp.com/nothans.com/wp-content/uploads/2010/03/System-Overview-1.jpg?resize=300%2C212&amp;ssl=1 300w" sizes="auto, (max-width: 546px) 100vw, 546px" /></p>
<h3>Programming Tips and Tricks</h3>
<p>I found quite a few libraries and resources on liquidware.com.  I also discovered quite a few important things through my trial and error. My biggest frustration was with programming and figuring out the IDE. Here are some tips.</p>
<ul>
<li>To program the screen use the Antipasto Arduino / Aardvark IDE</li>
<li>Program the screen and Arduino separately &#8211; make sure the IDE has the proper device selected</li>
<li>To put the screen in program mode, press the switch beside the power connector &#8211; it’s in program mode when the LED on the backside is red</li>
</ul>
<h3>TouchShield Slide Serial</h3>
<p>Serial data sent and received by the TouchShield Slide uses the hardware serial lines.</p>
<p>To setup the serial connection, place this line in your setup code block:</p>
<p>[cc lang=”c”]Serial.begin(9600);[/cc]</p>
<p>Now you can read and write to and from the serial buffer. To read in a whole string, use a byte array to store bytes from the serial buffer when serial data is available. To write to the serial buffer, simply use serial print.</p>
<p>[cc lang=”c”]char charIn = 0;<br />
byte i = 0;<br />
char stringIn[32] = “”;</p>
<p>while(Serial.available()) {<br />
charIn = Serial.read();<br />
stringIn[i] = charIn;<br />
i += 1;<br />
}</p>
<p>Serial.print(“A”);[/cc]</p>
<h3>Arduino Serial</h3>
<p>On the Arduino side, you have to use some form of Software Serial that sends and receives data on Pins 2/3. I have found that the Adafruit SoftSerial Library, “AFSoftSerial.h”, works the best. It seems to be reliable and produces consistent results when talking to the TouchShield Slide. Reading and writing from a software serial buffer is about the same as a hardware one with this library.</p>
<p>To use software serial, follow these steps:</p>
<ul>
<li>Include the “AFSoftSerial.h” library in your Arduino code header space</li>
<li>Define the RX and TX pins</li>
<li>Instantiate the software serial</li>
<li>Initiate the software serial line</li>
</ul>
<p>[cc lang=”c”]#include AFSoftSerial.h</p>
<p>#define RX_PIN 3<br />
#define TX_PIN 2</p>
<p>AFSoftSerial touchSerial = AFSoftSerial(RX_PIN, TX_PIN);</p>
<p>void setup() {<br />
touchSerial.begin(9600);<br />
}[/cc]</p>
<h3>Demo Project</h3>
<p>I took a moment to put together all of the things that I learned into a quick demo project. This project displays a random number on the screen. The random number is generated by an Arduino, sent via serial, and requested by a touch of the TouchShield Slide.</p>
<p>Random Number from Arduino Displayed after Detecting a Touch&#8230;</p>
<p><img data-recalc-dims="1" loading="lazy" decoding="async" data-attachment-id="1058" data-permalink="https://nothans.com/touchshield-slide-two-way-communications/touch-2" data-orig-file="https://i0.wp.com/nothans.com/wp-content/uploads/2010/03/Touch-1.jpg?fit=620%2C371&amp;ssl=1" data-orig-size="620,371" data-comments-opened="0" data-image-title="TouchSlide for Arduino" data-image-description="" data-image-caption="" data-large-file="https://i0.wp.com/nothans.com/wp-content/uploads/2010/03/Touch-1.jpg?fit=620%2C371&amp;ssl=1" class="aligncenter size-full wp-image-1058" src="https://i0.wp.com/nothans.com/wp-content/uploads/2010/03/Touch-1.jpg?resize=620%2C371" alt="" width="620" height="371" srcset="https://i0.wp.com/nothans.com/wp-content/uploads/2010/03/Touch-1.jpg?w=620&amp;ssl=1 620w, https://i0.wp.com/nothans.com/wp-content/uploads/2010/03/Touch-1.jpg?resize=300%2C180&amp;ssl=1 300w" sizes="auto, (max-width: 620px) 100vw, 620px" /></p>
<p>Visit Liquidware’s App Store to download the source code and library for this demo project.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nothans.com/touchshield-slide-two-way-communications/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">686</post-id>	</item>
	</channel>
</rss>
