FamiLamp: Cloud-Synchronized Color-Selectable Lamps

I understand the purpose of the project, having ‘dabbled’ with it before, which is how I know it’s a pain to make a generic solution. While it’s true that the product auto-flash feature can be handy, it’s not at all helpful during the debugging process, where hard-coding is much easier.

was just cool to research and implement, obviously im using it for the wrong reason but it made it somewhat easier to troubleshoot (at least for me) as I could see logs rolling in via that .

YASS, I will so buy this, ill buy a couple for other projects as well.

So i finally got it working. what i did i took everything apart and rewired it (even though ive done this multiple times). i then reflashed everything from your verrsion 13 minus a few things changed as i dont have as many led’s. I do not have a resistor, cap or step up to 5v circuit. I will put those in eventually just had to rip out all stuff i thought could interfere with it. I put a lower resistor 100k instead of 10m. Also a process of deduction it looks like I damaged either pin 3 or 4 in either a past project or this project so the sensing wasn’t working. I switched sensing to 5 and 6 works fine :slight_smile: :slight_smile: :slight_smile: :slight_smile: :slight_smile: huuuzzzaaahhhh

However if i ever get time i think, i will do what moors suggested and use the capacitive circuit and just put it as a normal pin, and I would like to eventually port it over to ESP8266 with MQTT which is essentially what this is doing but on a professional level. I already have a home automation server with MQTT so I dont think it would be terribly hard to change/modify

Hi, I’m interested in starting this project and I’m curious to know if you have made the changes you mentioned to the PCB already? I’m not familiar with EAGLE or PCB design, and wouldn’t know how to make the changes myself.

I have not been able to make the changes. The device does work well with the current PCB on OSH Park, so they are more about me being nit-picky than requirements.

This is a great project. I had this idea where you would take an RGB color sensor and aim it at the sky by a window. Then, over the cloud (on a device like yours), it would sync with the brightness and color sample of the sky. Imagine a basement or windowless room where you can mirror the “feel” of the outside, complete with orange sunsets, lightning flashes, and dimming when clouds block the sun.

You could also “share your location” to get/receive the light effects of other users. Or imagine “mixing” between “New York” and “Los Angeles” over a few days before a trip to help reduce jetlag.

1 Like

This is a very interesting idea. Reminds me of those virtual windows futuristic dystopian movies always have.

Oh, and Disney actually does something similar with their interior staterooms on their cruise ships.

Yeah, it’s like a poor man’s LCD television setup. The Disney setup would require an HD camera and >50" television. This solution is just an RGB sensor and a some RGB bulbs you can make into a lamp.

The next step is anonymously sending sky colors from users around the country/world and building an incrementally more accurate map of the sky color in real time. This could even triangulate lightning strikes if you had a few in one area.

Lots of cool stuff you can do when you get sky RGB values to the cloud. Crowdsourced weather system without needing to be interested in weather. Use the cool factor to get the masses using it.

1 Like

Hey so i need some help, Ive soldered everything together and it works…sort of. the LEDs will not light up but using the console i can see that it is publishing updates to be received by others. so i know that the lamp is responding to touch, its just not powering the LEDs.

I am using the SK6812RGBW LEDs from Adafruit, where apparently the neopixel library does support them, but i cant help but think either the logic shifter im using (Sparkfun) could be the culprit, either that or its the LED type not playing nice.

Did you run into the same issue at all?

The SK6812RGBW strips are definitely a different animal since they have W in addition to RGB. For the below troubleshooting, my recommendation would be to write a very basic sketch that leaves out a lot of the complicated code not needed for testing your strips. Such as the one I provide here: https://github.com/Here-Be-Dragons/familamp/issues/3#issuecomment-282372652

Some things you can try according to https://learn.adafruit.com/adafruit-neopixel-uberguide/arduino-library:

I was able to skip the logic shifter in testing, so maybe remove that part and see if you get life. Plan on putting it back in for your final design once you identify the issue, though.

The block of code near the top of familamp.ino needs to be updated to reflect your strip type. The syntax used for the Particle Neopixel library seems to be slightly different from the example code at the above link. My code:

#define PIXEL_COUNT 60
#define PIXEL_PIN D2
#define PIXEL_TYPE WS2812

Adafruit_NeoPixel strip = Adafruit_NeoPixel(PIXEL_COUNT, PIXEL_PIN, PIXEL_TYPE);

Possible solutions – according to documentation, you may be able to leave off the third argument:

Adafruit_NeoPixel strip = Adafruit_NeoPixel(PIXEL_COUNT, PIXEL_PIN);

Alternatively, you may have to use a different PIXEL_TYPE according to https://github.com/technobly/Particle-NeoPixel, like:

#define PIXEL_TYPE SK6812RGBW

Hopefully one of these gives you your result. If you get a finished product made, I’d love to see what you’ve built.

So after some testing, it seems like the library on particle isnt quite set up for SK6812RGBW LEDs. interestingly though, it sort of works with WS2812 as the pixel type, though the colours are all wrong.

Anyone else thats ends up using SK6812 LEDs, heres the post to the library edit that works for now:

Curious, since GitHub - technobly/Particle-NeoPixel: An Implementation of Adafruit's NeoPixel Library for Particle devices: Core, Photon, P1, Electron, Argon, Boron, Xenon and RedBear Duo. indicates it does. Maybe open an issue against that repo?

Yea will do eventually. Might even see if I can see what’s different and see if I can get it to work properly, at the very least point out where it’s not working. On my to-do list next week.

I built the Filimin version (found on instructables) of this touch lamp about a year ago and as others have said they stopped working because of some kind of change. I found your code and have implemented it but I can only get it to work if I plug the photons in via a computer USB power source, otherwise the lamps just keep cycling colour like they are being touched all the time. My components/setup is a bit different than what you have as in I don’t use the Shift Register and am using a Neopixel ring (I adjusted pixel count in code). Any tips on how to get mine to work. Seems to be a power supply issue and I have tried numerous supplies. On my Filimin version I was able to tweak the sensitivity of each lamp depending on the power supply I used as I picked up cell phone chargers.

Someone else is having the same problem with a separate project and opened an issue on the GitHub repo for this project here: https://github.com/Here-Be-Dragons/familamp/issues/5.

I have no idea why you’d be having the problem. I did not write the CapTouch library I’m using (https://github.com/lbt/captouch) but it has always worked reliably for me, and supposedly self-calibrates. Are you able to post a schematic of your design and maybe some photos of the implementation? I’m wondering if it has something to do with you being on a different power system from me. What’s your voltage and frequency at the wall?

Oh, and side note: there is a special function that runs on easter day to fade colors when idle. Could this be what you’re seeing? Comment out all of the extra fluff in loop() for holiday idle sequences and see if that fixes it.

Not the Easter issue (which is great by the way). I have one lamp connected to my computer which works flawlessly but like the other poster on Github the touch sensor does not work when using a power supply other than a computer USB power source. Just constantly cycling colours. So the fact that the computer USB works seems to point at the power supply. I don’t have a schematic off hand but used these instructions: http://www.instructables.com/id/Networked-RGB-Wi-Fi-Decorative-Touch-Lights/

At the end of these instructions at instructables they mention using a high quality cell phone charger but I haven’t found any that work and have tried about 8 of them that I picked up at thrift shops.

I’m going to try and use a lower valued resistor to see if that helps.
Voltage is 110. 60Hz.

OK so you’re running same voltage as me. Your spelling of “colour” had me wondering if somehow the power was different. Yes, lower-value resistor would be a good idea to try. Now that you mention it, when I was prototyping I did have some weird issues with 10MOhm.

Yes, it does seem to be the resistor. Just went from 10MOhm down to 1 and it is working on a wall wart power supply. Excellent. I am going to retrofit my Neopixel rings to the the spiral led setup you used. Thanks so much for your time. Colour - Canadian over here. lol.

So glad you figured it out and a simple little resistor fixed it. Maybe the library needs a larger integer type or something… probably overflowing the variable.

Guess I should have tried that first but in a way I’m glad I asked so if anyone else is having the same issue they now have an option to try. Great project and implementation.