CCHS GGHC: CCHS element14 group
Team moment of the week
With the exception of the PCB's, we finally got hold of the hardware components! It was kind of exciting to see all the little packages arrayed before us: it was kind of like Christmas (except it was Easter). In particular, the much anticipated arrival of the LCD's was a big hit: they're nice displays ![]()
Progress this week
Project: Unfortunately, the schedule woes continued to plague us this week. The PCB's didn't make it to us prior to Easter. This meant the prototype hardware rigs took on increased importance as an enabler for software development. We managed to get up and running on various fronts: the software work, the hardware prototypes and we made a start on reviewing the enclosure layout. We also obtained all the remaining hardware components with the exception of the potentiometers (we can source those locally).
Requirements: We're exploring usability concerns around the enclosure and software layout and navigation. Further exploration is underway of the experiments we'll use to demonstrate the Lab.
Design: This week, the design effort shifted to focus predominantly on the software. We had an excellent planning and design session Tuesday night, and began working through the activities to realise the first key design elements over the Easter weekend.
Build: Given the situation with the PCB's, the prototype rigs became critical items. We completed these in short order, constructing a couple of different rigs. We bought a few additional through-hole components to make breadboarding the rigs easier: these will be replaced by surface-mount equivelants on the final PCB's. We also came up with the idea of using Arduino Pro Mini's for the breadboard rigs in the absence of the 328p's on the PCB's: more on that later.
Plan & Schedule: Despite our best efforts, the PCB's didn't arrive before the Easter long weekend. The disappointing news was that by Thursday they'd made it as far as Sydney - so close, yet just far enough to #fail
. By mid week, it was looking likely they wouldn't make it, so we began planning alternative strategies for the Easter weekend using prototype hardware rigs and focusing on software development. We'll have a good chunk of time during the final weekend of the challenge to complete hardware assembly, as this is our regular scheduled monthly hackerspace weekend meeting. However, we now have a large number of concurrent tasks on the go that all need to come together smoothly in the last week. I guess we're not calling it a "Hackerspace Challenge" for nothing
.
Key Thoughts and Observations
We're working in parallel as much as is possible and practical. Tuesday evening was a great example of this with software design planning, initial hardware prototype rig creation and enclosure layout work all happening at the hackerspace concurrently. Andy lead us through the software design thinking, and Antionette took the lead on having a look at the revised enclosure layout. Elsewhere, team member Rob did some great work building a prototype for one of the experiments we're hoping to demonstrate with the completed Lab
The hardware prototyping work continud over the Easter weekend, and Luke got three prototype rigs up and running in collaboration with hackerspace member Clifford Heath. We also established a github repository to enable current, distributed software development work, and Andy and Paul began working together in that repo.
This concurrent, collaborative activity is extremely important for a few reasons. First, it enables better use of the limited time available on such a short-term, part-time project as this. Second, it enables assumptions to be explored early, and associated adjustments and corrections to be incorporated into the project while there is still time. Third, it enables fantastic collaboration and skill transfer to occur as team members with different skills and experience pair up and work together.
We feel strongly that working concurrently on activities by involving multiple team members, enabling collaboration between those team members and offering team members involvement across the breadth activities is a winning combination. It helps us to drive out issues early, learn, have fun and deliver a well-socialised result.
Rough Milestones for next week
For week six, we’ll be focused on bringing all the remaining pieces together into at least one completed prototype product. To do that, amongst other things, we'll:
- Build the first couple of ArduinoLab boards
- Organise and run a surface-mount build day for the remaining boards
- Complete the Software development, including testing
- Take the enclosure layout from prototype through to a first working solution
- Build the demonstration experiments
- Organise a school trial at the end of the competition.
Spotlight: prototype test boards
As mentioned, we built three prototype test rigs to explore the hardware and enable early test and validation of the software design.
The first rig included the shift register setup to drive the Graphic LCD. To build this, we picked up some through-hole equivelants of the surafce mount shift registers used on the PCB. To this prototype, Clifford added the button board rig, enabling us to confirm the button design works to generate reliable values for button pushes through the resistor combinations.
We also built two rigs using Arduino Pro Mini's that would enable us to explore the existing GLCD Arduino library using direct control from an Arduino. Although this isn't the same as the shift register control we'll be using on the finished PCB, this approach has a few nice benefits. First, we're testing against the same MCU as the target PCB, so we can confirm many elements such as memory use, CPU speed etc. Second, we can confirm the existing LCD library works with this MCU and this LCD. Third, we can get straight into the higher-level application design using the existing functions provided in the library, and then work on an approach to convert the lower-level library functions to work with the shift registers. Team member Andy has been thinking through what needs to be done, and has a good plan of attack to make that happen.
If you'd like to follow our progress on the software, have a look here on github.
And if you want to review the hardware work, see the previously mentioned repository here on github.
We're coming into the home stretch, and yes, as previously mentioned, it's extremely busy: even more than we'd expected, if that's possible!
Stay tuned for our final updates!
Happy Hacking from the Connected Community HackerSpace (Melbourne)
