You will need to enable JavaScript in your browser for GECKO to work

Kia ora - welcome - to GECKO.

GECKO is a suite of tools for students in electronics and embedded systems.  GECKO stands for Growing Epistemic Circuit Knowledge Outcomes.  While the terms epistemic and episteme are not commonly used, they can be thought of as 'conceptual understanding',  The purpose for using an unfamiliar word is to draw attention to the important ideas around learning and knowledge. That learning requires the development of a set of abstract concepts in the mind about something, and if these become established they can be used by students to reason about problems and solve them. 


In this example assignment you will find a selection of questions that have been designed to help  students both understand and reason using their knowledge of circuits and embedded systems (both hardware and software).

Question 1 was designed as part of an assignment to engage students with fundamental circuit concepts. It demonstrates one of the two simulators at the core of GECKO, a modified open source circuit simulator. It allows students to see and engage with what is usually unseen or hidden in an electric circuit (voltage and current).

Question 2 is part of the same fundamental circuit concepts assignment, and requires students to fix the wiring of a trailer.  It demonstrates the second key technique of GECKO: where questions and simulations are controlled using by a scripting language .  This means that every time a question is presented a slightly different set of data - in this case faults - is presented to each student. The purpose of varying the work to different students is to counter some of what students are good at - copying and not thinking for themselves.  If two or more students work on a question together, then often one student will solve the problem and the other may miss the learning.  In this case everyone gets a slightly different problem, so if one student solves it more quickly than the others, then hopefully the first student will help the others reason through their problem, rather then copy the answer.    Well that's the theory anyway, in practice students must be trained to think collaboratively and not just give answers away.

Question 3 demonstrates an important pedagogical principle with visualization - having students engage with visualization by modifying it. In this question students are presented with two circuits and required to find the equivalent resistance of a series/parallel resistor combination, and then change the resistance in the second circuit so that it is equivalent to the first.  The idea is to draw students attention to what circuit equivalence really means - that is, when the same voltage is applied to the two circuits, then the same current will be drawn by each circuit. It seems in textbook after textbook that I read, equivalence is not defined in this precise way; and nor is the soloving of series and parallel circuits taught in schools this way.

Question 4 is one that uses the Atmel AVR simulator - in this question students need to complete the code (in C) to make the running LED pattern work correctly. The theory underpinning this is not trivial, as it part of a process that helps students understand the the interrelationship of hardware and software in embedded systems. Once the solution is found, the code from the simulator can be copied directly into Atmel Studio, and programed into an AVR board. Each time the question is delivered to a student a different error is automatically generated in the code.

Question 5 was developed as part of a series on AVR timers for a second year university course. The concepts around sequential logic are demanding for students, and here simulation is used to make these hidden ideas visible. Each time the question is delivered students get a different set of timer options to work with.

Question 6 was developed as part of a series of developing understandings on embedded systems for first year university students. It is relevant to any student at the beginning of a learning journey that combines hardware with software. It uses the ESP32 development board, and the software in the simulator can be copied into the Arduino IDE and programmed into an ESP32 DevKit3 board.

Question 7 is not actually a question. It allows students access to the embedded systems editor to develop their own hardware and software for an ESP32. Their software can then be uploaded to an ESP32 using the Arduino IDE.

I developed GECKO during my PhD. I was an engineer for 20+ years and have since worked in education at secondary and tertiary levels for over 20 years.

Dr. Bill Collis

you are using gecko3