That said, it seems like Smelt is far too early in development to be practically used at this point. Some basic table stakes that I didn't see:
- Test weighting. Having a way to specify a relative repeat counts per test is essential when using constrained random tests like we do in the ASIC world.
- Some form of tagging to identify a test as belonging to multiple different groups. When combined with a way to intersect and join groups when specifying the tests to run.
- Control over the random seed for an entire test run. I was glad to see some support for test seeds. However when invoking smelt to run multiple tests, it would be nice to be able to reproducibly seed the generation of each individual test seed. Maybe this is outside the scope of this project?
Great things to see:
- Procedural test generation is a key feature.
- Extendable command invocation
- SLURM support is in the roadmap, also an important feature for groups that use SLURM.
It will work when n==1, but not when n==1000 in a square mile, say. Given that, I would certainly be trimming back on the power so it doesn't transmit more than 500 feet out of your house. I've had a heltec Meshtastic receiver broadcast about 2 miles line of sight easily.
And then there's the whole thing about encryption, since your packets can travel miles, and your devices can receive packets from miles away...
Also, the range is entirely the point of using LoRaWAN for some of us. All other IoT protocols have an abysmally short range, making them impractical for anything other than single building applications. Maybe most don't need a mile of range, but the fact that it can reach across a couple of acres enables a lot of applications.