macGRID-SRN / hitchBOT

hitchBOT - Canada's hitch-hiking robot
http://hitchbot.me
GNU General Public License v2.0
22 stars 8 forks source link

Make LED panel generator an asp.net application, store generated code to database. #50

Open gagichce opened 9 years ago

gagichce commented 9 years ago

This will let other members of the team view and edit the panel designs easily and streamline the process.

Should also generate beaut code.. ie all the data should be stored as an array of numbers, not hard code, this will allow for greater variation.

gagichce commented 9 years ago

I will start implementing the database models for this,

@inikdom do you have any ideas as to how we should represent the pixels for each screen?

domerin0 commented 9 years ago

I liked the boolean array idea. A single dimensional array that represents the linearized panel. We can re-tool my code generation tool to spit it out. Another column will have to represent which panel (1-4).

gagichce commented 9 years ago

Ok let's simplify it even more. A rough code structure would like something like:

Face{
//4 panels
Panel[] panels = new Panel[4];
}

Panel{
//16 rows 
Row[] rows = new Row[16];
}

//24 bits long (3 bytes)
Row{
    byte[] row = new byte[3];
}

This way we can write a function UpdateFace(Face myFace) which would save a lot of space on the arduino.

This also should be converted to an asp.net application because people on the team want to preview and submit these designs. We can then generate the code straight from what is stored in the database.

gagichce commented 9 years ago

I was thinking.. not really a cruicial feature but it would be useful if there was a button when previewing the panel to invert all the LEDs. That way someone can toggle for a lighter/brighter image and not have to do it themselves.

domerin0 commented 9 years ago

I considered that actually, I'll do it in the next update for the panels. I agree its important.

domerin0 commented 9 years ago

This is still open, the code is done, it just needs some testing to ensure validity.