My name is Jason. I am a self taught geek. I have been working on a ton of projects both code and hardware for many years. I have decided to chronicle past and current projects and to layout future projects. Join me for some geeky!
Don't wanna be here? Send us removal request.
Text
How to build a raspberry pi picture frame media pc
Happy PI Day!!!
A few years back… ok… like 9 years ago. I built an interesting piece of functional art in my living room. It was my media center pc, mounted in a double picture frame on my wall. This thing served me well for a long time. But now it’s time to upgrade it.
After all this time the ATOM board in there has gotten a little sluggish, the distro isn’t supported, the black lights have gone bad, I think there’s a demon in there. It’s legit struggling.
So how are we going to upgrade it now??!?
Oh good you, you have it under control…
Oh man… I thought you were gone…
You are not a meme…. Let me finish…
Where was I? Oh Yeah. What we are doing to upgrade… So here is the checklist.
Replace old ATOM board with new raspberry pi
Replace black light bulbs with RBG led strip.
Add simple to use RF remote
Flash PI with OSMC for a distro that will keep updated on a regular basis.
Add wemos D1 Mini to control LED in frame lighting
Flash wemos with WLED project for simple easy lighting control
Add wemos to home automation system to turn on/off lights on schedule
Not a ton of work, but there is some work to be done.. So lets get to it!
Woo do work fool!!!
Not helpful…
Materials List
2 Ribba Picture frameshttps://amzn.to/30IWvE4 or https://amzn.to/2OPuacoMisc wire / perf boardhttps://amzn.to/3lfiWtSRBG led striphttps://amzn.to/3rQ7gA8Hingeshttps://amzn.to/2PXjx7P1 3 port keystone wall platehttps://amzn.to/3vkwXuW1 hdmi keystone jack pass throughhttps://amzn.to/2Owwmph1 rj45 keystone jack pass throughhttps://amzn.to/3eyVgiH1 keystone jack blankhttps://amzn.to/3tuqf3Z1 5v 10amp power supply (barrel plug)https://amzn.to/30EYidj1 barrel plughttps://amzn.to/3qMx6nw1 usb adapterhttps://amzn.to/2PYoJbD1 small pc fanhttps://amzn.to/3rOgOvw1 raspberry pi 3/4pi3 – https://amzn.to/30FX7KH pi4 – https://amzn.to/2OoklCy1 usb cablehttps://amzn.to/3cx8ycP1 wemos d1 minihttps://amzn.to/3qLjkl1LED ribbon cablehttps://amzn.to/30JQ5EKmotherboard stand offshttps://amzn.to/3lh4phlLED connectorshttps://amzn.to/3rHbfixOSMC Remotehttps://osmc.tv/store/product/osmc-remote-control/
So, those picture frames don’t look like what you have….
Yes, I know, remember, I am upgrading from an older build. The goal of the picture frame is to be tall/wide enough to house your board and deep enough (why I suggest 2) that you can mount said board inside it with stand offs. The second important piece with the picture frames is to make sure that you have some matting to hide things behind.
How to create a wall mounted pi media player
Ok. So lets get started.
Lets take the 2 picture frames, and stack them, and add some hinges so we have a nice box to work with.
Take the 3 keystone plate and put the hdmi and network pass through it. Take the blank and drill out a hole to fit the barrel plug.
Arrange them however you best see fit. Now with a rotary tool cut around the keystone jacks so that what’s remaining can fit on the side of the frame. I cut around the existing screw holes so they could be reused to fasten to the frame.
As you can see from the first build you mount the board in the middle and start taking care of the wiring.
You take care of wiring.
*sigh*
Then add some lighting.
Here are few shots of the build back in the day.
So now, we move to the upgrades. We are removing the board and and replacing with a Raspberry Pi.
Upgrades to move to Raspberry Pi
Now since I have some LED strip, a wemos d1 and a raspberry pi to power, I am going to create a power distribution board.
Wire up our new LED strip instead of the old blacklights.
Ok. So now we have this beautiful beast all built out. Lets make it do a trick.
hehe… what kind of trick?
Are you 12? Seriously, what’s wrong with you?
Me? Im not the one talk to… you know what, nevermind. Continue.
Thank you.
So we have WLED installed on the Wemos D1 Mini. If you don’t know what WLED is, it is a beautifully written program for the d1 mini to do LED light control. HUGE shoutout to Aircookie for such a great piece of software! https://github.com/Aircoookie/WLED
Supports most LED light strip, but also give you some really awesome control over the LEDS. I have worked with it on some other projects including my neo-pixel LED christmas tree decoration I did this past christmas.
youtube
Aside from the really cool effects, the mobile apps (ios / android) but WLED also has support with tons of Home Automation Systems. I am currently using OpenHab so I will add a scheduled integration so it’s added as a “living room” light, in the group gLivingroomLights. This will automatically add it to the automation to turn on the LED’s with the rest of my living room lights which turn on 15 minutes after sunset each day. If we leave and turn off the lights, when we arrive back home, the lights automatically turn on when we pull in. The picture frame is now part of that. When it’s bedtime and the living room lights all turn off, so does the picture frame lights.
Since this is also a full color/dimmable type of light, it will automatically following follow the rest of the dimming controls for the livingroom lights, including integration into Kodi for the Cinema Vision home automation integration.
For Openhab you can integrate using the build in binding. Or via MQTT, http rest call.
For HomeAssistant you can integrate like this.
The Results
youtube
There we go. An upgraded picture frame art PC on the wall. We have added some nicely controlled LED lighting and have integrated in with the home automation system.
So what else does it do?
What do you mean what else does it do? It’s a Kodi Media player integrated in to plex with plexkodiconnect to sync everything up. It can play back all the media on the network, receive casted data and airplay.. what do you mean what else can it do?!
Yeah, what else can it do?
Home automation on screen notices and surveillance camera pop ups on motion?
Ok… that’s pretty good.
TLDR
youtube
How to build a raspberry pi picture frame media pc was originally published on Cranky Coder
#arduino#home automation#Home Automation Project#led#leds#media entertainment#plex media server#raspberry pi#rgb#wemos d1
3 notes
·
View notes
Text
18650 Battery capacity checker
Some of you know, I really like lithium ion batteries
*shocked*
Shut it! This is a short post, I don’t need you hamming up the works.
Just wait till I show up in your videos….
You wouldn’t….
Hello….
Oh hell…..
Ok, lets not worry about that now.
I picked up a pretty sweet haul of batteries this week.
22lbs. I counted 107 2cell packs. 214 cells to check out. This is great, but I have a single opus charger that can do 4 cells at a time.
So 214 cells will take some time to process. I have done that game. So I wanted to do more cells. There are examples online of doing this with arduino’s and what not and since I am big fan of arduino’s anyways I decided to give that a shot. I built it out initially with an arduino uno. Using the awesome guidance of Adam Welch. If you don’t know who Adam is, you gotta check out his work.
Website: http://adamwelch.co.uk/ Youtube: https://www.youtube.com/channel/UCm5sG3-BXQZfVy3st2T_XKg
His work I used for this is here.
youtube
I modified the code a little as I didn’t have that screen. I have a 20×4 screen. I also updated mine to calculate the voltage reference from the internal 1.1v reference.
/* * Battery Capacity Checker * Uses Nokia 5110 Display * Uses 1 Ohm power resister as shunt - Load can be any suitable resister or lamp * * YouTube Video: https://www.youtube.com/embed/qtws6VSIoYk * * http://AdamWelch.Uk * * Required Library - LCD5110_Graph.h - http://www.rinkydinkelectronics.com/library.php?id=47 */ #include <LiquidCrystal_I2C.h> #define gatePin 2 #define highPin A0 #define lowPin A1 boolean finished = false; int interval = 5000; //Interval (ms) between measurements float mAh = 0.0; float shuntRes = 1.0; // In Ohms - Shunt resistor resistance float current = 0.0; float battVolt = 0.0; float shuntVolt = 0.0; float battLow = 2.9; LiquidCrystal_I2C lcd(0x27,20,4); unsigned long previousMillis = 0; unsigned long millisPassed = 0; void setup() { analogReference(INTERNAL); Serial.begin(115200); lcd.init(); //initialize the lcd lcd.backlight(); //open the backlight Serial.println("Battery Capacity Checker v1.1"); Serial.println("battVolt current mAh"); pinMode(gatePin, OUTPUT); digitalWrite(gatePin, LOW); lcd.setContrast(68); lcd.clear(); lcd.print("Battery"); lcd.print("Check"); lcd.print("Please Wait"); lcd.print("AdamWelch.Uk"); delay(2000); lcd.clear(); } void loop() { voltRef = readVcc() / 1024.0; Serial.print("Volt Ref: "); Serial.println(voltRef); battVolt = analogRead(highPin) * voltRef / 1024.0; Serial.print("Batt Vol: "); Serial.println(battVolt); shuntVolt = analogRead(lowPin) * voltRef / 1024.0; Serial.print("Shunt Val: "); Serial.println(shuntVolt); Serial.println(); Serial.println(); /* Serial.print(battVolt); Serial.print("\t"); Serial.print(current); Serial.print("\t"); Serial.println(mAh); */ if(battVolt >= battLow && finished == false) { digitalWrite(gatePin, HIGH); millisPassed = millis() - previousMillis; current = (battVolt - shuntVolt) / shuntRes; mAh = mAh + (current * 1000.0) * (millisPassed / 3600000.0); previousMillis = millis(); lcd.setCursor(0,0); lcd.print("Discharge "); lcd.setCursor(0,1); lcd.print("Volt:"); lcd.print(battVolt); lcd.print("v "); lcd.setCursor(0,2); lcd.print("Current:"); lcd.print(current); lcd.print("a "); lcd.setCursor(0,3); lcd.print(mAh); lcd.print("mAh "); lcd.print("Running "); } if(battVolt < battLow) { digitalWrite(gatePin, LOW); finished = true; lcd.clear(); lcd.print("Discharge"); lcd.print("Voltage:"); lcd.print(battVolt); lcd.print("v"); lcd.print(mAh); lcd.print("mAh"); lcd.setCursor(0,1); lcd.print("Complete"); } delay(interval); } long readVcc() { long result; // Read 1.1V reference against AVcc ADMUX = _BV(REFS0) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1); delay(2); // Wait for Vref to settle ADCSRA |= _BV(ADSC); // Convert while (bit_is_set(ADCSRA,ADSC)); result = ADCL; result |= ADCH<<8; result = 1126400L / result; // Back-calculate AVcc in mV return result; }
Next step is to add a “charging” function with a tp4056 so I can charge then discharge.
Amazon – 5 for 6.95
Ebay – 10 for 4.95
Aliexpress – 10 < 2 bucks.
Once that is working I should be able to add a couple more modules. I have been really looking towards doing something with Brett Wattys 8 module charger. That things is INTENSE!!!
If you want to see all the info check out the secondlifestorage forum.
https://secondlifestorage.com/t-Brett-s-Arduino-8x-Smart-Charger-Discharger
He also has a portal he is setting up to help aggregate some numbers on how many cells the community has recycled.
Until later!!!
bye!!!!
18650 Battery capacity checker was originally published on Cranky Coder
#18650#arduino#batteries#battery pack#code#lithium 18650 cells#lithium ion#medical packs#opus tester
1 note
·
View note
Text
3dprinted Robot Mower - part 1
youtube
3dprinted Autonomous Robot Mower – part 1
Welcome to part one of me trying everything I can to not have to mow…. After avoiding mowing for a bit I needed to find a better solution.
In my slightly concussed state I came up with it. A 3dprinted robot mower!!
Using printed and electrical parts from http://www.reprap-windturbine.com/index.php?id=20&L=1 I am building my mower.
My firmware will tie in to my home automation system so the system will control mowing times based on times/weather conditions ect.
3dprinted Robot Mower – part 1 was originally published on Cranky Coder
#18650#3dprint#3dprinter#3dprinting#arduino#diy#electronics#green projects#home automation#lithium 18650 cells#openhab#prusa i3#robot mower
0 notes
Text
Let's learn #fusion360 with the #dailyfusion360 challenge
What:
So as you have probably seen my fusion360 skills are ….. lacking.
No $%^^&*
So here is the plan. Pick a time frame. 1 week, 2 weeks, 1 month. ect
8 minutes
Will you stop it. We are trying to help people here!
So once you pick your time frame. The goal is to design something in Fusion 360 each day. Doesn’t have to be anything big, doesn’t have to be for printing. Just to get practice in 360. Take a screenshot, upload it whatever. Just post it on the social platforms. Hash tag it with #dailyfusion360. Let the rest of the communities see what you are working on.
Let’s learn #fusion360 with the #dailyfusion360 challenge was originally published on Cranky Coder
1 note
·
View note
Text
First Attempt at Christmas Light Show! (part 1)
A while back a co-worker hit me up over the weekend and said “hey! I found this thing you want it?!?”
Once finding out what “it” was I said sure..
Haha.. you know what “it” was, and you wanted it.
Really? That’s how we are going to start this?
After getting through hurricane irma and halloween season I was able to start looking into this a little more.
It’s this! A Light-o-Rama 16 channel light sequencer.
So it came with software and everything right? Worked out of the box? Sweet
Why? Seriously…
No, it did not come with software.
But I was able to do some digging and figured out it will work with an RS485 to RJ45 serial connection and using the DMX protocol.
DMX protocol? That ^&*% sounds scary.
For once Im gonna agree with you. Not sure what his “protocol” is but I agree.
So anyways. I hook it up and …. nothing. No signal. Hmmmm.
Time to hit the forums!�� www.doityourselfchristmas.com to the rescue. I found a post that mentioned that LOR (light-o-rama) decided to swap 2 pins.
That’s some dumb shit stuff there..
I know. But that got it working. So I have my laptop able to turn some christmas lights on and off via a testing app. Cool. But not cool enough.
Next step fool!
So we need to sequence this thing.
Different kind of sequence. Time for Vixen3!!
No! Vixen 3!!!
Are you for real with this?
Sorry, Christmas. I forgot.
Thank you.
*smh*
Anyways. Vixen 3 is a nice piece of software for doing light sequencing to music. So I start playing with that and get a few little tests together and run it from my laptop and the LIGHTS ARE WORKING!!!
Enter the raspberry pi!
Ok tons of fun haven’t you had enough pie?
Not that…. it’s a…. shut up.
So with a RASPBERRY PI COMPUTER!!! I load up an image for something called “falcon pi player“. Configure up my connection to the LOR and click the “test” check box. ALL THE LIGHTS TURN ON!!!!! Awesome. We are SO CLOSE. So export the sequence from Vixen 3 and upload all the assets (sequence file, media) and create a playlist. Now lets run it!
Oh man… it’s working. This is too cool.
I drove past your house, you don’t have any lights up yet.
*deep breath* Ignore him, he doesn’t exist.
You don’t exist.
You are right. My lights aren’t up. But I got everything working and even created a preview!
youtube
So next step is the wife has started putting up some lights and we should finish over the weekend!!
First Attempt at Christmas Light Show! (part 1) was originally published on Cranky Coder
2 notes
·
View notes
Text
Bike generator for 18650 battery packs - Part 1
Welcome to part 1 of the bike generator build.
This build will add a pedal powered bike generator to help charge my 18650 battery packs. This will be in additional to the small solar panel currently in use.
The charge controller and statistics will be build on an arduino controller and tied in to my openhab home automation system for tracking and graphing.
The controller will connect wirelessly using mysensors and an nrf24l01 radio.
youtube
Bike generator for 18650 battery packs – Part 1 was originally published on Cranky Coder
#18650#arduino#batteries#battery#battery pack#battery packs#diy#generator#green#green projects#laptop battery#lithium 18650 cells#lithium ion
0 notes
Photo
Cabbing it over to #freedomtower #nyc #geek #geekinnyc
0 notes
Photo
Chili dog!!! #nyc #geekdad #geekinnyc
0 notes
Photo
I can see the city. #geekdad #geekinnewyork #newyork
0 notes
Photo
Heading in to the city #newyork #geekdad
0 notes
Photo
#wheelsup here we go again. Off to #newyork
0 notes
Photo
I have some batteries for you too!! @amscomputers yes that is 7 dead ups batteries 😬😬#battery #ups #recycle #ewaste
0 notes
Video
instagram
Happy to see the #3dprinter printing again. Been awhile. #starwars #prusai3 #3dprinting @hatchbox3d
2 notes
·
View notes
Photo
Sad. Finished all my honey blaze!!! Gotta get more. @sweetwithakick
0 notes
Photo
New power supply for some #ledstrips #neopixel
0 notes