A general purpose State MAchine Runner for Training animal behaviors.
- Bpod is an open-source software for real-time behaviour measurement. However, Bpod is running on an expensive hardware pod ($500+) and requires a PC ($500+) connected to it.
- This library enables running behavioral state machine on an Teensy/Arduino board ($30) and without PC ($0) in loop. In addition to that, behavioral events are re-organized to fit a general purpose (see Features below).
- Constructing and runing behavioral state machine on the same Teensy (3.6)/Arduino (due) board
- General-purpose events including digital I/O, soft events, global timer/counter, etc.
- Additional PWM channels for precise frequency and duty control
- Object-oriented programming
- See the example code
gpSMART_Teensy.ino
orgpSMART_Arduino.ino
to learn how to use the library.
gpSMART: A general purpose State MAchine Runner for Training animal behaviors (2020) https://github.com/Yaoyao-Hao/gpSMART
Feel free to pull a request If you want to contribute code to this repository, or leave your messages (bugs, comments, etc.) in the Issues page.
- DueTimer library from: https://github.com/ivanseidel/DueTimer
- pwm_lib library from: https://github.com/antodom/pwm_lib