GUI time.
GUI time.
Coding efficiency is all about tools.
No tools, welcome back to software stone age. Icons by number.
Putting everything together..
A screen for choosing songs.
Hardware to actually play the songs.
Some sort of mass storage to hold the music.
An amplifier to drive the speakers.
Speakers. Well..
Earbuds for now.
A processor to run everything.
A 3D designed and printed case.
Figure out how control SD card.
Write code for the .mp3 player.
Patch the .mp3 library to start faster.
Try to get some more sleep!
SPI bus that functions correctly.
Processor mount?
Complete SPI rewrite.
Complete redesign of the Development system.
3D print finish quality issues.
Need simple case to demo. problem.
Write editing GUI for song selection.
Add ability to group screen objects.
Add point & click without a touch screen.
Using .bmp file as background to GUI.
Read and write parameter files.
Hints to the user as to what he could do.
Tiny icons. Really?!
I had written a somewhat complete framework for building GUIs for these little processors. So this should be the frosting on the cake.
It was actually when I started working on the GUI that every thing crashed down on me. I took time off, pretty much finished the case design and did all the rework on the code. Once I got everything working. It was time to revisit the GUI.
I had a fuzzy plan. It should be old ‘40s tech looking so I went for brass looking bezels with what looked like a stained paper card with typewriter file listings.
That was the plan..
Want to build one yourself?
Wiring notes : Are here.
To print your own:
And the code to make it go :
The pushpot : Mouser # 652-39LB-1PB-103
Well, it looks better in “real life” but that’s how it turned out. Tough to get a good type writer look with 8 pixel characters. And the fancy background forced me to set up code allowing a bitmap file to be used as the background. Then, with the grouping and coordinate shifting? Wow! My brain hurts!
I ended up with what I call the PushPot interface. The knob can be turned or clicked. Its sort of a one demential single button mouse. Highlighted icon shows focus.
Before c++, the hardest part of most programs was the GUI. Hard to get right. The GUI would end up being 90% of your coding headache. And, cause most crashes. Not to mention the customers would hammer on it about everything. Then, with the introduction of application frameworks, all that nightmare just evaporated.