Solar powered website — the updated final project idea.
I was think about building a solar power website since working on the solar project for energy class. I was give up on this idea because I don’t know what kind of content I want to put into the site. I would like back to this idea because I would like have the basic functionality running before graduation. So I can keep working on the digital content part later after my ITP study.
I knew the idea of solar powered website since one of the reading week at Tech&Society club.
Low-tech Magazine refuses to assume that every problem has a high-tech solution. A simple, sensible, but nevertheless controversial message;
I also found https://wp.nyu.edu/solarpoweredmedia/ that semester. I think build a server with Raspberry Pi, and use solar panel to power the server.
Contribute to alexnathanson/solarserver development by creating an account on GitHub.
This github page seems have a good documentationo and interaction about how to setup the solar server.
What: I want to make a wearable device (solar wing) that other people can control part of it though log in to the website. The wearable will have feedback based on the solar power, and the data received from the viewers. And the viewers will each act as a digital moths/butterflies on their device.
Why: During school times, I spent so much time neither at ITP, or at home. I haven’t experience outside environment that much. I want to use this device let me go outside and enjoy the sun. And since anyone can join the website, this can be a way I talk with strangers.
How: I will use solar panel to power the speaker and the GPS Module Receiver, and send those data to the webhost. And the gps data will be how the moths/butterflies flys in the website, and the viewer can control the moth by ”wasd” or drag their phone. And those drags will sent back to the solar wing, and the speaker will tell me how to move.
I ‘m create two dynamic maps for both the physical and digital devices.
Question I have: Because it’s live experience, it seems like I should websocket for the experience ? I still not sure what data I should send and receive for both object...
So The inspiration of this project is from Kelly Heaton's Circuit Garden project, which I saw and really loved during Spring break.
Artworks by Kelly Heaton
Official website for contemporary artist Kelly Heaton
At the beginning, I just want to use the two large solar panel I got from Lulu and Jason, and make two solar bugs.
Showing here.
But Jason found the solar bug toolkit.
Brand-new redesign of our original Solar Bug. More choices! More Coloring! More Movement!
I think I should add this into the project, so I have group of bugs.
Here is the video documentation of all the solar bugs displayed under solar light.
Here is some documentation about my making process.
Here are photos of the final outlook:
The things I learned from this project. It's really hard to get direct high power from solar. With solar project, have some kind of energy storage is super necessary.
And I should keep measure all those power sources. So I know how many power I need to running them.
For the midterm, I only knew I want to do something with privacy and control, after having office hour with Tom. I decided just make a camera pan/tilt that can control by my phone as an exercise.
I ordered this pan-tilt from adafruit.
This fully-assembled pan-tilt kit is the perfect way to give your project full range motion with two micro servos. The pan-tilt can rot
And started from here.
I used the basic motor example from Arduino website
Learn how to connect and control servo motors with your Arduino board.
And than, I added buttons to test if the motors can be controled with serial communication. There are the code and the demo video:
int button = 2; //pin of the first button
int button1 = 3; //pin of the second button
#include<Servo.h> //include the servo library
Servo servo1; //create a servo object
Servo servo2;
int pos = 0; //initial position of the servo
void setup() {
// put your setup code here, to run once:
//servo1.attach(7); //pin used by the servo
servo2.attach(9);
pinMode(button, INPUT_PULLUP); //define first button as input pullup
pinMode(button1, INPUT_PULLUP); //define second button as input pullup
/*
INPUT_PULLUP send to arduino LOW signal, so, when you press the button, you send a LOW signal to arduino
*/
}
void loop() {
// put your main code here, to run repeatedly:
if (digitalRead(button) == LOW) { //if Value read of the button ==LOW:
pos++; //increases the value of the "pos" variable each time the push button of the left is pressed
delay(15); //5 milliseconds of delay
//servo1.write(pos); //servo goes to variable pos
servo2.write(pos);
}
if (digitalRead(button1) == LOW) { //if Value read of the button ==LOW:
pos--; //decreases the value of the "pos" variable each time the push button of the right is pressed
delay(15); //5 milliseconds of delay
//servo1.write(pos); //servo goes to variable pos
servo2.write(pos);
}
}
After this run of test, I started working with p5ble, And I used the write to one characteristic one becasue I want to send info from p5ble to arduino
function downToBle() {
myBLE.write(myCharacteristic, 'D');
}
function upToBle() {
//const inputValue = input.value(0);
// Write the value of the input to the myCharacteristic
myBLE.write(myCharacteristic, 'U');
}
function leftToBle() {
myBLE.write(myCharacteristic, 'L');
}
function rightToBle() {
myBLE.write(myCharacteristic, 'R');
}
The down, up, left, right to arduino.
if(value == 'U'){
delay(15);
pos+=15;
myservo2.write(pos);
Serial.println("move up");
}
if(value == 'D'){
pos-=15;
delay(15);
myservo2.write(pos);
Serial.println("move down");
}
if(value == 'L'){
pos-=15;
delay(15);
myservo1.write(pos);
Serial.println("move left");
}
if(value == 'R'){
pos+=15;
delay(15);
myservo1.write(pos);
Serial.println("move right");
}
On the arduino side, once the arduino had the valu, than the motor will do those actions.
After I had those working locally, I hosted it on glitch so that I can open it on my phone.
Simple, powerful, free tools to create and use millions of apps.
Later I faced the issue that web Bluetooth API can't work with IOS browsers
The Web Bluetooth API provides the ability to connect and interact with Bluetooth Low Energy peripherals.
At the end I found an App named Bluefy that I can connect Bluetooth with the App, than I can control my phone to the motor.
This is the mobile interface, and here is the demo video showing it connect with the website to contrl the motor.
The issue I still facing is that most all cameras are bigger then this tool. So I have to tape it to use it.
I will keep working on the filed of privacy for the final project. But I will to use CCTV cam for it. And think about how viewers can really become performer in the project.
When I think about the topic we cover in this class, I think about network ecosystems, data, information, interface and surveillance. I am always into those topics. And I think make a device to device project about surveillance and interface sounds cool for myself.
I went office hour with Shawn and we think those words are very big, I need to start with things more detailed. And he said think about recommendation system might be a good start.
Later I was looking at some art projects about surveillance.
SOMEONE SOMEONE imagines a human version of Amazon Alexa, a smart home intelligence for people in their own homes. For a two month period in
MICHAEL CANDY BLOG // ABOUT PERSISTENCE OF VISION 2021 Persistence of Vision (POV) is an AI enabled interactive network of spotlights...
I think I would like do something about camera, machine learning(computer vision), and network system.
I am familiar with the computer vision part, but not so sure about how network system will be part of this project.
I know it's still a blurry, and it's due in one week. But I will have a prototype by next week and keep working it after midterm.
Here is a video about the HID device to mobile phone that Yontan and I worked on last week. Yes, it's working now!
So for this week, I do have a real world setting for the HID device that I'm trying to made.
I submitted a olde artwork to a show. And the curator want to change the mouse based interaction to all the buttons. She was thinking so that user can push those buttons at the wall.
First, I built all 5 buttons to control the top, down, left, right, and left-click for the mouse.
Based on the Button Mouse Control code on arduino's office website (which Tom wrote 10 years ago)
Control cursor movement with 5 pushbuttons.
I had the button based mouse working well.
And my friend Jason Gao saw this homework, decide use his solderable perf board make one just for fun.
Later, I found I do have joystick in my toolkit. And I added it to the project. The only problem I had with joystick is that the click is not working well.
I started my jostick with https://itp.nyu.edu/physcomp/labs/lab-mouse-control-with-joystick/ this code. To make sure it's working.
Than, I used this example code
Examples for programming an Arduino to be a mouse, keyboard, or other Human Interface Device - hid-examples/MouseJoystick.ino at main · tigo
I started with this code, and for the press logic, I used
if (clickState == LOW ) {
// if the mouse is not pressed, press it:
if (!Mouse.isPressed(MOUSE_LEFT)) {
Mouse.press(MOUSE_LEFT);
}
}
// else the mouse button is not pressed:
else {
// if the mouse is pressed, release it:
if (Mouse.isPressed(MOUSE_LEFT)) {
Mouse.release(MOUSE_LEFT);
}
}
if the clickState is High, it will keep pressing, and if the press is LOW, the click will have no behavior .
Another question: based on this video, if I want to add it as each station with one button, so it will have about 18 buttons, how would I do it with those Arduino pins?
Later, I combine the basic button code and the joystick code together. Here is the final demo video.
It's a dictionary, a timeline, a biography of myself. But in a design fiction way. There will be a really me, and a egos me, to interact, to have conversations.
When I think about this performance, I was thinking, why this has to be a performance, not a video proejct about myself. Now I think I found the answer, I think there are many elements of exploration in this. In many cases, the whole journey can be changed, just like life. Some parts are fixed (the video at the beginning ); but there may be many parts that are unknown, waiting for everyone to discover the world together.
Film and live move — 1 mins
I wearing my costume walking, the character in the film is walking as well. I am acting to match the vitural character.
Exploring the database — 4 mins
Many motions of me, and VFX keep changes.
Sound
I will have a lot of recording sound. But also, unity is very good for spatial audio, so I will have a lot of sound effects as well.
- Think of a project idea involving mycelium or fungus
I will do a final project involving both mycelium and fungus. I had the idea of doing a VR film project about mushroom since multisensory storytelling class for the first half of semester. It's about networks, and hallucinations.
I watched https://www.fungifilmfest.com/ today and will keep watching film for next two days.
And I found this work was interesting.
Los Angeles based, environmental artist working in the areas of art and ecology, art and mycology and environmental justice. I often work wi
And I went to a mushroom watch two weeks ago.
I went to office hour with Elaine Gan this week. And she given me a lot of feedback and information about funus. I think I will go to green-wood cemetery this weekend for a field tirp. Since it's where https://gardens.green-wood.com/ happens.
I want to have some physical / biological elements outside of the VR environment. Still need to think more about that.
- Readings
I knew Paul Stamets though watch fantastic fungi. And this is the first time I'm reading his book. And I think this chapter was very interesting. He web and internet as metaphor for mycelium, it's something I'm thinking to. But didn't have In-depth study.
I read The Mushroom at the End of the World, earlier this year. And Lucas and I was talk about it today on why this is a very good book to read. The concept of symbiosis inspired me a lot.
I think Context Free Grammars is really good for making a Fortune Cookie Generator, so I made one.
Play it here:
A web editor for p5.js, a JavaScript library with the goal of making coding accessible to artists, designers, educators, and beginners.
But I don't really understand the algorithm itself, so I just changes the text document (cfg_test.txt) file.
I would like make this project better, but for now I would like know more about, how Context Free Grammars works? I watched all these videos, but still can't code it when I started the project. hahah
Here are some inspirations for my fortune cookie generator.
This page generates fortune cookie sayings.
A list of fortune cookie fortunes I've received
Here are some results for the current version of my generator