Go to file
2023-11-25 21:52:06 +01:00
src add functions and global variable in the parser 2023-11-25 18:43:36 +01:00
.gitignore use static library instead of object 2023-11-13 13:06:47 +01:00
Makefile add functions and global variable in the parser 2023-11-25 18:43:36 +01:00
README.md update readme 2023-11-25 21:52:06 +01:00
student.ino add functions and global variable in the parser 2023-11-25 18:43:36 +01:00

Arduino digicode brute force interpretor

Subject

Usage

  1. You can modify the passcode of the digicode by changing the variable CODE in the file src/pin_handler.h

Note that the passcode must end with a '#'

  1. Run the command make prepare

This will create a student.tar.gz that will contain the static library used to run the student code and the parser code

  1. To test the student.ino just run make run

Warning

This is a very very basic parser, and so it will not work with a certain number of cases:

  • if you don't use the variable for the pin numbers
  • if you write 'digitalWrite()' on several lines
  • if you move the loop() opening bracket on the next line
  • if you use arduino or c++ specific functions
  • ...

Debug Level

There is a variable "DEBUG_LEVEL" in the src/pin_handler.h, it allows you to give more or less output to the student.

With a value of 1, it will print each code the student try.

With a value of 2, it will do 1 and each time a digitalWrite is executed, it will print the wire change (1-4: row, 5-8: col) and the state to change.