Skip to main content Skip to local navigation
Home » Category: 'VPL' (Page 2)

VPL

Automated student testing of Matlab code, Part 1

Automated student testing of Matlab code, Part 1

It's important to have dynamic 24/7 interactive activities for programming classes. There are plenty of solutions out there, including Matlab Grader and Möbius. The folks at Jetbrains have their Academy system, too. What I need, at this stage, is a no bells-and-whistles, auto-grader for Matlab code that can run a unit test on a student's […]

Update to VPL for Java on EECS at YorkU

Update to VPL for Java on EECS at YorkU

The VPL server in the YorkU EECS department was recently updated (2022/23). This had a small impact on existing VPL scripts. With Java, any script that uses JUnit needs to have its vpl_run.sh and vpl_evaluate.sh scripts updated. Here, I have the run script do the JUnit test directly. The evaluate script does JUnit through the […]

Ad-hoc unit testing on simAVR and VPL

Ad-hoc unit testing on simAVR and VPL

In the previous post I showed you how to use VPL and simAVR together to write a basic activity that would test to see if a student could change or assign the value of a register in the simulated microcontroller using the C programming language. While it was the most straight-forward way that I could […]

Simulated Microcontrollers in VPL Exercises

Simulated Microcontrollers in VPL Exercises

In Computer Architecture classes or Embedded Systems classes, it can be really useful to allow for students to be graded on assignments that allow them to interactively explore the inner workings of a microprocessor. One way is to have the students create programs in a hardware description language like Verilog or VHDL. Another way is […]

Installing SIMAVR on Mac OS X

Installing SIMAVR on Mac OS X

The SIMAVR package is for simulating AVR processors like the ATMEGA328 on the Arduino UNO. I'm looking to try to use it with VPL in courses like our computer architecture class, EECS 2021, as a way of simulating the UNO's processor in exercises involving assembler and C programming. On a Mac, we use HomeBrew. The […]

VPL, Vectors and Java

VPL, Vectors and Java

This is an example exercise in VPL. Grade is out of 1. All the students have to do is uncomment the creation of the MathVector object. Want to reproduce this example? PreLabC.java (the template for the student to work on) solution.txt (what the student's solution _could_ look like) MathVector.java (the class with all the methods […]

VPL & Java 17

VPL & Java 17

In our first year programming class for engineering students, EECS 1021, we're using modern features like jShell and var. Unfortunately, the OS that our VPL instance sits on came with an older version of Java, so we've had to modify our scripts to point to the Java 17 JDK. If you get an error like […]

VPL: Circuit Simulation Assignments with SPICE

VPL: Circuit Simulation Assignments with SPICE

Introduction In YorkU's EECS Department, we have access to NGSPICE on our department's Linux machines (via RemoteLab). NGSPICE is yet another variation on the venerable SPICE circuit simulator. Our the University's Moodle system, eClass, we have access to Virtual Programming Lab, a framework for making interactive exercises for students. It is typically used with programming […]

VPL: Using Maple for Math Assignments

VPL: Using Maple for Math Assignments

One of the places that Moodle falls down in is in supporting math assignments. It occurred to me that we could treat math assignments like we do programming assignments by extending the Virtual Programming Lab plugin for Moodle to support Maple. This doesn't replace existing products like the Maple / DigitalEd Möbius platform, nor does […]

VPL: Simplest Working Example

VPL: Simplest Working Example

Virtual Programming Lab can be a little intimidating to use, but once you get the swing of things, it's pretty good. So, let's get you started with the simplest possible working example. We assume that: you have Moodle working at your institution someone has installed VPL on Moodle and you don't need or have access […]