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, and can be thought of as 'conceptual understanding', it has a more defined and precise definition; which is the set of related abstract propositions and models that describe the system of meaning at the core of a domain of knowledge - and it embodies the crucial pedagogical idea that students need to be able to reason using this knowledge.
In this example assignment you will find a selection of questions that have been designed to help novice students both understand and reason using their knowledge of circuits and embedded systems.
The first question was one 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 not just see but engage with visualization of electric circuits - an important pedagogical principle.
The second question 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 a simple scripting language . This means that every time a question is presented a slightly different set of data - in this case faults - is presented to the student.
The third question 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 simple 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.
The next question 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. This is not a trivial exercise as it requires students to understand the nature of AVR I/O registers,and the interealtionship of hardware and software in embedded systems. The code from the simulator can be copied directly into Atmel Studio, and programed into an AVR . The simulator can also be used with the ESP32 and programed using Arduino software.
The next question was developed as part of a series on AVR timers. 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.
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 20 years.
Bill Collis
Page |
Title |
Your Progress |
Group Progress |
Page |
Title |
Your Progress |
Group Progress |
- Instructions
- Devices
- Reg's
- Var's
- Block Diagram
- State Machine
- about System Designer JS
PLEASE WAIT FOR EVERYTHING TO LOAD - Note you need to be using Firefox or Chrome to run program code
State Machine designer
System Designer JS by Bill Collis
This program was designed to help learners who are new to microcontroller based embedded systems
The Block Diagram Editor
Drag and drop I/O devices onto the block diagram
Link them to the microcontroller
As you do the program code will automatically be generated to match the I/O device and its connection to the microcontroller pins
The Code Window
Code can be run or stepped through line by line
The slider changes the speed of the run
T changes Theme and F changes Font size
The State Machine Editor
Click and drag to draw new states
Right click to add actions to states
Click and drag inside a state to draw transistions between states
Add conditions inside [] to the transisition by double clciking to edit or right click e.g. [IS_SW_LOW]
Add actions to transitions in the form [conditon]/action e.g. [IS_SW_LOW]/CLR_LED; _delay_ms(DEL);
There is no undo so be careful
analytics