|Just another Perl shrine|
Re^2: How RPi::WiringPi suite is automagically unit testedby stevieb (Abbot)
|on Aug 18, 2017 at 16:49 UTC||Need Help??|
Well, this specific "invention" is pretty much sole-purpose... solely to test the software. However, each component is acting on its own, just like one would do in smaller projects. It's just a culmination of hardware so that I can thoroughly test all of the various software components.
If you removed all of the pieces except for the Pi and the Arduino and the two I2C connections, the software on the Pi side (RPi::I2C) and the current test Arduino sketch combined actually does write to the Arduino EEPROM (and read from it), so that's definitely possible. That said, I'm not familiar with Android, but if it has a Serial or other reasonable API-type interface, then yes, the software could definitely be used to flash the device. If you can provide a link to an example you're thinking about, I'll test it ;)
The testing software I'm using on this project is one I've spent about three years designing, and until recently, the Pi was not related to it at all. It just fits perfectly for this project :)
If you were to remove all of the components less the LCD, the test software can be used to dispatch the unit tests from *any* Perl distribution to the Pi, and the results will be displayed on the LCD (the dist has to be on Github though, as that's how it calculates whether a run is needed or not (amongst other things due to it being a literal network run even though both the listener and dispatcher are both localhost).
I've got about 50 different types of sensors and other things that can all be used by the software I've already written. I'm always on the hunt for a new sensor/IC that doesn't have Perl code yet, and I thoroughly enjoy writing the C/XS, then the Perl wrapper. That's what I enjoy most (reading and navigating datasheets, and turning that into code that operates the devices).
Currently, I have a full-blown single-page jQuery web UI that controls one of my entire test indoor grow rooms (fans, lights, humidity, medium moisture levels/auto-drip feed system etc). It's backed up by Dancer2. It's incomplete as I haven't worked on it for quite some time, but that dist that does this is App::RPi::EnvUI. The documentation is very lacking at this time as well.
The only other product I've built that's completed (well the prototype anyway) isn't directly related to Perl other than the knowledge gained allowed me to learn how to do it, is my GPS take me home device.
Let me know about the Android flash thing. I've got a spare phone which I don't care if I brick if you really want me to play around.