What's exactly the idea here?
As opposed to my previous project, where I strived to show the objective switch in humans based on the presence of others, now I want to go further. How far can I push the Arduino before a new platform is needed? Can you have a real (albeit scripted) engaging conversation with a robot before the logic becomes too much for a small board to handle?
Of course, that means I have to add as much to this project as I can before I run out of memory. What will this project consist of? Well, here's a rough (very rough, more used for testing than anything else) model of the shell of such an idea. This will be laser cut multiple times (to scale, in mm) before the idea is finalized and 3d printed. Everything, minus the SPEAKER will be cut out to house their respective objects on the surface. The SPEAKER will be mounted on the inside with various holes through to the surface to let loose sound.
What exactly will each thing do?
TFT Screen: Show the Ascii Art I so lovingly worked on frame by frame
16x2 LCD Screen (Robot Speech):
16x2 LCD Screen (Option One):
16x2 LCD Screen (Option Two):
Speaker: Once again, self explanatory. Another Arduino connected through the TX and RX pins of the Mega will receive a string of code corresponding to an already existing audio file on the connected SD Card. The file will play and be unable to be interrupted. When it is done, the Arduino will send the Mega a bool value of TRUE, stopping the halt on the program and allowing it to continue. This is the function of text, however not of various sound effects. Those will happen organically, as in, not by the nature of player input. (ie, scripted)
What does it look like?
Well, here are the guts (so far). The only thing missing is one more attached button.
[Definitely forgot to upload this. Whoops. You wanna gather around and see it in action, class?]
Code? Why do you want nerd shit?
Fine, but this is what you wanted. Remember that while you try to read the kludgfest that always seems to plague my WIPs.
PlayCertainFiles (for the Arduino with the speaker)
TextMode_3LCD (For the Arduino Mega with everything else)
What is there left to do?
In short, a lot.... kinda? It's all somewhat easy from here, just a whole lot of testing involved. This includes:
-Adding one (1) more button
-Soldering the rest of the board from the mini breadboard
-Many laser cutting tests
-Hopefully only one (1) 3d Print
-Figuring out a dialogue tree
-Recording and editing voice lines for minimal space allocation
...Probably other things that'll come up as time passes on by.
Godspeed, guys.