-
1Step 1
Hookup guide - here are some basic details to make the connections. See the parts list for values.
VCC on the neopixel ring is attached to VIN on the NodeMCU
GND on the neopixel ring is attached to GND on the NodeMCU
The capacitor is placed across VCC and GND.
IN on the neopixel ring is attached, via the resistor, to D1 / GPIO5 on the NodeMCU which is pin 5 in the Arduino code.
The whole thing is powered by USB connected to the NodeMCU.
-
2Step 2
See the links to the code in Github if you would like to try to implement this. You will need to fill in some of your own details for your wifi network and your pvoutput account.
Replace <your network ssid> and <your network password> with…you guessed it…your SSID and password (the login details for your wifi).
const char* ssid = "<your network ssid>"; // The ssid of your wifi network const char* password = "<your network password>"; // the password for your wifi network
-
3Step 3
To use this, you need to have an account at pvoutput.org and have live data being loaded to it. The code assumes 5 minute interval data, but will still work if your interval is longer. To log into your account and grab the data, you need to add your pvoutput sid and API key in place of <your pvoutput sid> and <your pvoutput API key> respectively. You can find these under "settings" once you have logged into pvoutput.org.
const char* sid = "<your pvoutput sid>"; // sid const char* key = "<your pvoutput API key>"; // API key
-
4Step 4
You might also need to update the below values based on the size of your system and it's max output. The first one, maxpow, is the maximum power you want to display (I chose the rated size of my system as this is pretty close to the highest I ever see). The display will stop at this level and go no higher. The second, powint, is the amount of power represented by each pixel in the display. I have chosen 200 Watts per pixel, which will use up to 15 of the pixels. Change these values to scale your display, but make sure you don't use more than 24.
const int maxpow = 3000; // Maximum power output that can be displayed, in Watts const int powint = 200; // The amount of power, in Watts, that each LED represents
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.