Here's a new video as we've changed the script since the one I had up here yesterday - it takes a long time to do the install and so here is what you get when you've done the install.
The script now does it all. So - take a look at the previous blog on the subject where I refer to a Debian installation which you need to put onto a microSD - and then copy 2 files over before utilizing it. Once you start the Orange Pi PC up - it will appear on your network as "orangepi" - you should be able to access it without referring to the IP number.
On it's own it will come up in graphical mode but I did not use that - instead I used winSCP to open it up and started a terminal session - at which point it asks you to type something in to re size the image - and reboot. Do that and come back to the terminal.
Grab the above script and put it in the /home/orangepi directory on the OrangePi - go in as that user (password orangepi) - don't vary from this - don't set up a root user or use other images etc.... once in - change the permissions on the script to give the owner execute permissions.
Then run the script in the terminal ( ./orangepi.sh) - at the first set of questions select a for all - and then grab coffee you will need it. Occasionally you might be asked to select directories - go with defaults - you will also be asked for passwords - if it is the orangepi password it is orangepi - if it is for something that has been installed I suggest the same but you can use any password - I use the same one throughout.
Don't deviate - it will take over half an hour likely. At the end the unit will reboot and you are all set - other than password security on Node-Red which you may not need anyway. Everything should just work - ignore WARNINGS and some daft npn errors.... they look awful but it all works.
The only thing I've not been able to get working is node-red-contrib-ivona - it anyone wants to work on that I'd appreciate it.
As for ports – well I’ve installed GPIO and so this can be called from an EXEC node. Here’s a simple example:-
On power up – initialise a global variable (let’s call it context.global.pinstates) to 0.
When trying to output to a port – (lets’ say 14 - where the command is GPIO WRITE 14 1) check first to see if it has been used and if not – send a MODE command first (ie GPIO MODE 14 OUT).
Here is the code for that function.
Update October 2016 - Bill Price wrote in to comment that someone had fixed an issues with audio and so I'm including this link....