Hi all, first off, I’m not a programmer so the reason for this question. I want to see if there is already a BBB application to allow it to be used for telemetry and or could be modified for what I need.
I am able to supply an interface board that can go from the headers of the BBB to do all the necessary level changes so as not to “destroy” the board by over voltage inputs etc.
This is what I need to do.
DC Voltage measurements in the ranges of 9-15V and 44-55V (multiple inputs)
DC Amperage measurements in the ranges of 2-20A and 40-60A (multiple inputs)
Temperature input (multiple)
Again multiple inputs for an On or Off state
Multiple out for switching relays, depending on both Analogue and Digital input levels.
Be able to display the measurements and some control of outputs etc via a Web Page.
Hoping someone can help
I am a programmer, and have hands on with doing a few projects that fall into this category. What you’re attempting to do does not sound very hard at all. But it could turn out to be fairly complex in nature. Tacking a few ADC values, GPI value as well as “toggling” a few GPO’s is not that hard. Where it gets complex is in doing this smartly over a web app. By “smartly” I mean securely.
There is NodeRED, which I’ve heard is designed for engineers who have limited or even no programming experience. But, being a programmer, I’m not really keen on these types of hardware / software abstraction. So I know very little about it. It may be something for you to look into though.
There is another way to go about this bit is slightly more complex, and would require an additional “server” somewhere. This server could be another embedded Linux system if you so wished. Such as a beaglebone.
But basically how this works if you have an MQTT broker running locally, with the MQTT subscriber( the remote beaglebone ) out in the wild somewhere. The MQTT protocol while technically not very secure. Can be made very secure if some serious thought is put into how you architect your complete system. MQTT works by using a publish, and subscribe model. So one can pretty much bullet proof how a publisher, and subscriber interact with one another.
E.G. The Broker acts as a Publisher and Subscriber as well as does the remote system. So the local, and remote system each have their respective Published, and subscribed values. Which makes it very hard for “The man in the middle” attacks, and probably impossible for input injection.
Here’s a pretty good hackaday article on MQTT: http://hackaday.com/2016/05/09/minimal-mqtt-building-a-broker/
So this is actually a part of a set of articles by the same person I believe. But this first article gives a pretty good overview of MQTT, and the utilities available to Linux( debian ). Technically, you could even write a set of shell scripts to accomplish what you want. But personally I’d probably rather at least wrap these utilities from within another high level language. Maybe even just use their API, and write my own code in C . . . YMMV.
After saying all of the above however. You’d probably want to completely lock your remote and lcoal system down completely, and avoid using wireless or bluetooth on either end. To be the most secure.
Thanks William, I will have a look at it a bit more. I was hoping someone out there already had a piece of software that could be used and or modified. As I said I’m not a programmer. Further investigation required.
Posted to myself instead of you William. Thanks for your input I will look further into it. As I said I’m not a programmer and was hoping that there was already an application out there that could be modded to suit. Further invetigation required.