Hi, I'm Fuzzy.

This site, Fuzzy's Logic, is a dumping ground for things I find interesting. If you're looking for content I've personally generated you might want to head directly to one of my other sites:

Hi, I'm Fuzzy.

RimWorld

RimWorld follows three survivors from a crashed space liner as they build a colony on a frontier world at the rim of known space. Inspired by the space western vibe of Firefly, the deep simulation of Dwarf Fortress, and the epic scale of Dune and Warhammer 40,000.Manage colonists' moods, needs, thoughts, individual wounds, and illnesses. Engage in deeply-simulated small-team gunplay. Fashion structures, weapons, and apparel from metal, wood, stone, cloth, or exotic, futuristic materials. Fight pirate raiders, hostile tribes, rampaging animals and ancient killing machines. Discover a new generated world each time you play. Build colonies in biomes ranging from desert to jungle to tundra, each with unique flora and fauna. Manage and develop colonists with unique backstories, traits, and skills. Learn to play easily with the help of an intelligent and unobtrusive AI tutor.

RimWorld

Parrot DISCO

Parrot has unveiled its first drone to ditch the quadrocopter design, dubbed the Disco, that instead features wings to help it fly.Pilots can simply toss the Disco into the air thanks to a propeller in the rear. It will take off and land on its own, as an ultrasound camera on the bottom assists to prevent crash landings.The announcement came at CES 2016 in Las Vegas, and marks a big leap for consumer drones as it moves away from the quadrocopter design. It's certainly not the first take on a fixed-wing drone, however it doesn't require pilots to adjust pitch and yaw like other fixed-wing drone designs on the market.

iRacing Stats App Update

I've been able to get a bunch of work done on my stats app over the last week. Here's a dump from the change log:

  • sync process: improvements to the way the progress bar is updated

  • sync process: improved logging, display % completion of results collection

  • changes to hide / show timing when updating a tab to avoid flickering

  • fixed bug making previous / next buttons on all tabs not work

  • general tab: updated html layout to match updated GUI layout

  • corners per incident graphs now start at 0 like all others

  • fixed crash bug with stats button on all tabs

  • removed a bunch of debug code

  • general tab: series list entry for each car if MC

  • general tab: skip graphs with no content, reformatted general stats

  • fixed bug where All Oval/Road Series menu option displayed when not required

  • refactored messaging between sync thread and main GUI process

  • fixed bug with normal completion of sync

  • only update track and car lists if counts are diff

  • improved aborting sync

  • kill sync threads on close, disable sync button during sync, enable on complete

  • threadify sync process

  • warn user of things that can take a while

  • fixed installer not creating appdata folder

  • fixed main process left running on close of window, added exe version info

  • fixed how multiclass races are detected and fin pos in mc events

  • packaging complete; app installs into program files, user files are in appdata

  • fixed uploading to blogger; moved to new version of google api lib

  • db filename now uses custid

  • new build system, fixed avg fin pos graph for MC events

I'm now able to easily create a user friendly and well polished release version of the application, packaged up with a simple installer. I've done significant testing for fresh installs and brand new users. I'm pretty chuffed with how things are going. I feel like there isn't much more user testing required before I make a version available for wider use. One thing that definitely needs some work is the branding.

Road 2015 Season 4

Here's a dump of the stats from my initial come back races. I had a few ugly incidents as I got back into the swing of things, which took a large chunk of safety rating and dropped me back down to B license. Oops.

Series Races Wins Avg PTS Avg Start Pos Avg Fin Pos Avg iR Avg SR
Mazda Cup 10 2 41 3.8 3.5 3 -0.14
Production Car Challenge 4 1 35 5.2 6.2 -0 0.04
Skip Barber Race Series 1 0 5 14.0 15.0 -105 -0.08
Grand Touring Cup 2 1 28 9.0 8.0 -4 0.07
Ruf Cup 3 1 9 3.0 8.3 -28 -0.06

License B
Safety Rating 1.51
Corners Per Incident 22.16
iRating 2882
Total Driving Time 4 hrs 34 mins
Race Starts 10
Race Finishes 6
Disqualified 0
Disconnections 4
Qualify Sessions 10
Time Trials 0
Wins 0
Podium Finishes 2
Top 5 Finishes 4
Average Finish Postion 9.3
Total Laps 112
Incidents 55









Digital Signage

!-- image digital-signage_1.jpg --!

After sitting unused for quite some time I found a task which my MK802 "PC on a stick" would be perfectly suited to. As part of my day job I've been asked to set up a TV as a Digital Signage display. It is a vertically mounted Panasonic Viera which has its own "smart TV" features, along with this the company had purchased a Popcorn Hour S-300. Unfortunately this came with a European power plug and not enough room behind the TV to fit it and a plug converter.

So in steps the MK802; there is a powered USB port in the TV which gives 5v, more than enough to power the MK802.

I've installed Lubuntu onto it and worked out how to rotate the frame buffer display (thanks to this bit of info):

/usr/share/X11/xorg.conf.d/01-device.conf

I have a PyDashie system rigged up as the dashboard which is displayed in a Chromium browser window that is automatically launched on login. The browser is launched in kiosk mode so that it is completely fullscreen.

My /etc/lightdm/lightdm.conf has the following in it:

This automatically logs in the user on boot and hides the mouse cursor.

I also removed all screensavers and power management.

The system connects to the network via wifi and occasionally its IP address will change. I rigged up a system where a notification will be sent to my phone using the Notify My Android app. To get the message sent out from the digital signage host I installed the nma-python package (pip install nma-python) and then have a cron task that executes the following bash script every 15 minutes:

Here's a screenshot of the webpage displayed:

!-- image digital-signage_2.png --!

And a photo of the setup on the wall:

!-- image digital-signage_3.jpg --!

I'm Back!

After a longer than expected hiatus I've finally got my sim racing rig back up and running. I was dreading that any skills I had built up would have withered away, but I was quite happy to find that I with only a few laps of practice I was able to secure a third place in a top split MX5 Cup race.

I also turned a few practice laps in the Ruf with the Team Ruf guys and was somewhat amazed that I was able to post a very competitive time around Lime Rock.

I'm very eager to get some seat time in the new cars I'd purchased but hadn't had a chance to drive yet; the Aston Martin and the Kia.