Click here to Skip to main content
Click here to Skip to main content


, 12 Aug 2013
Rate this:
Please Sign up or sign in to vote.
An idiot proof guided approach to doing diagrams of home networking or home theatre connections with the ability to generate diagrams / maps or printouts of configs.

Please note

This article is an entry in our AppInnovation Contest. Articles in this sub-section are not required to be full articles so care should be taken when voting.


The idea behind the app is to provide an idiot proof guided approach to doing diagrams of home networking or home theatre connections with the ability to generate diagrams / maps or printouts of configs.


Think of an automated network scanning tool which detects devices and draws them Visio Style on a surface.  I'd like to have a similar thing, but including which ports are being used.  For example, DSL modem connects to PC on ethernet 1 (DSL) to PC.  DSL Connects to USB Printer via DSL USB Port.  

Code / Idea 

There is no code.  I understand that this is an idea submission and if successful, my development could be funded by the prize?

Basic idea behind the app is that there is little or no "drawing" by the user.  The user starts at a point and creates a node.  The node could be a device of some kind.   2 simple examples follow:

Example 1: Home Theatre Layout. 

Add Node (Home Theatre Receiver). 

Select Node (Home Theatre).  Add Node. Port HDMI Output. New Node Name (Samsung TV).  New Node Port HDMI-In 1 

Select Node Home Theatre. Add Node. Port HDMI In 1. New Node Name (Satellite Receiver). New Node Port HDMI Out 

At this point a diagram is created with the cabling layout of this 3 device home theatre.  As you add extra devices you can make complex diagrams using the same easy steps.  

I have simulated my entire house's IP-Multimedia layout including wireless using a simple scripting language which describes very complex layouts in an easy to understand manner. 

Example 2: PC Layout

Add Node PC 

Add Node PS3 

Add Node XBOX 

Add Node 24" Monitor 

Add Node HDMI Switcher 

Connect PC HDMI Out -> HDMI Switcher Input 1 

Connect PS3 HDMI Out -> HDMI Switcher Input 2

Connect XBOX HDMI Out -> HDMI Switcher Input 3 

Connect HDMI Switcher Output -> 24" Monitor HDMI Input

You can do Networking / Audio / Video as different layers perhaps, but I have already simulated this using a single diagram representing all of this information. 

Points of Interest

The fundamental code is simple and could be elegantly coded with relatively few screens.  Only issue which is an unknown at this point is the layout algorithm for the drawing. I would like each node to have optional attributes such as IP Address, Manufacturer, Warranty, etc, which can be toggled on and off as applicable. I believe that by keeping the node + connector logic generic, this app can be used to diagram or layout other types of data.  Anything in a hierarchy probably. I imagine that while developing it, more uses will come to mind.  The key for me is to be flexible so that users can find niches where the app will be useful. I have not seen a similar app that meets my requirements so I hope it has a cool factor which helps the app succeed in a market of many apps. 





This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

Engineer Personal
South Africa South Africa
No Biography provided

Comments and Discussions

AdminThanks for entering the Intel AIC 2013! PinstaffKevin Priddle16-Aug-13 8:32 
Thanks for your interest in the contest Istoff! Sounds like a great idea for an app, however, you're missing some critical information for your entry to be considered valid. Please review the contest page and requirements and make sure you clearly outline and label all of the following information in your article:
From Intel AIC 2013 contest page:
Your article must include...
  • The Platform you're targeting (All-In-One or Tablet)
  • Category (All-In-One = Games or Entertainment. Tablet = Education, Healthcare, Finance, or Retail)
  • Overview of the application and what it does
  • Description of the intended uses for the application (presented in writing and/or visually)
  • The approach taken to develop the application
  • The coding languages to be used
    Also ensure your Bio tells us about your software development history, years of experience as a developer, and any apps previously created.
    Skip any of these and your entry won't be considered. Rules are rules!

    You especially need to specify which category/platform you will be targeting. Sounds like an Entertainment app to me (so it would have to enter the Entertainment/All-In-One category) but I will leave that up to you to define.
    There is no code. I understand that this is an idea submission and if successful, my development could be funded by the prize?

    Just to clarify: Round 1 is idea submissions. We'll pick up to 50 ideas from the All-In-One platform and up to 75 from the Tablet to move on to Round 2 where you will code and turn your idea into a working functional demo app while competing against other CodeProject finalists and finalists from three other developer communities (one in Russia, one in China, one in India).
    The top 5 apps from each of the six categories (entertainment, games, healthcare, finance, education, retail) will move on to the third and final judging round where the $100,000 in prizes will be awarded.
    Hope that clears things up, but let me know if you have any questions.
    Kevin Priddle
    Editor and Special Projects Manager | Developer Media

    GeneralMy vote of 5 Pinmemberuser998763513-Aug-13 6:23 
    GeneralMy vote of 5 Pinprofessionalketan italiya13-Aug-13 0:25 

    General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

    Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

    | Advertise | Privacy | Mobile
    Web01 | 2.8.140709.1 | Last Updated 12 Aug 2013
    Article Copyright 2013 by istoff
    Everything else Copyright © CodeProject, 1999-2014
    Terms of Service
    Layout: fixed | fluid