Back

CarlChe

View Menu


What you do today, decides who you are tomorrow.
Don't listen to other people's crap.


Site still under construction.







"Away From City Lights" by Me
@ Joshua Tree National Park .
 

LightPi
10.0.0.10


A control center for all of
my home IOT
(Internet-Of-Things) with the
most details of my projects
and thoughts.

DoorPi
10.0.0.11


A door control gadget that
turns the door lock
to lock and unlock my door.

RelayPi
10.0.0.12


A Pi controlled relay to
control a standalone floor
lamp with "minimum"
modification.

CounterPi
10.0.0.13


A 7-segment display connected Pi
to display my daily income.

ClubPi
10.0.0.14


An LED panel soldered with 8 bits
RGB led sticks.
The most time consuming,
but the coolest project.

The Drone


Self-assembled drone with random features.

Morbi Dapibus Eros A Sol
Icitudin Facilisis
Video, Standard

16

Close

ICITUDIN FACILISIS
MORBI DAPIBUS EROS A SOL


I ought to just try that with my boss; I'd get kicked out maybe that would be the best thing for me. If I didn't I'd have given in my notice a long time ago, I'd have he just what I think, tell him everything I would.
It had been set for four o'clock as it should have been; it certainly must have rung. Yes, but was it possible to quietly sleep through that furniture-rattling noise? True, he had not slept peacefully, but probably all the more deeply because of that. What should he do now? The next train went at seven; if he were to catch that he would have to rush.
“And he did not at all feel particularly fresh and lively. And even if he did catch the train he would not avoid his boss's anger as the office assistant would have but instead the lorem ipsum took over.”
It had been set for four o'clock as it should have been; it certainly must have rung. Yes was it possible to quietly sleep through that furniture-rattling noise? True, he had not peacefully, but probably all the more deeply because of that. What should he do now?
It had been set for four o'clock as it should have been; it certainly must have rung. Yes was it possible to quietly sleep through that furniture-rattling noise? True, he had not peacefully, but probably all the more deeply because of that. What should he do now?
ASKING CHINESE
He would have put in his report about Gregor's not being there a long time ago. The office assistant was the boss's man spineless, and with no understanding. What about if he reported sick? But that would be extremely strained.
TELLING INDIANS
It had been set for four o'clock as it should have been; it certainly must have rung. Yes, but was it possible to quietly sleep through that furniture-rattling noise?

Morbi Dapibus Eros A Sol
Icitudin Facilisis
Video, Standard

16

Close

Integer ut iaculis felis
Curabitur eget molestie mi


I ought to just try that with my boss; I'd get kicked out maybe that would be the best thing for me. If I didn't I'd have given in my notice a long time ago, I'd have he just what I think, tell him everything I would.
It had been set for four o'clock as it should have been; it certainly must have rung. Yes, but was it possible to quietly sleep through that furniture-rattling noise? True, he had not slept peacefully, but probably all the more deeply because of that. What should he do now? The next train went at seven; if he were to catch that he would have to rush.
“And he did not at all feel particularly fresh and lively. And even if he did catch the train he would not avoid his boss's anger as the office assistant would have but instead the lorem ipsum took over.”
It had been set for four o'clock as it should have been; it certainly must have rung. Yes was it possible to quietly sleep through that furniture-rattling noise? True, he had not peacefully, but probably all the more deeply because of that. What should he do now?
It had been set for four o'clock as it should have been; it certainly must have rung. Yes was it possible to quietly sleep through that furniture-rattling noise? True, he had not peacefully, but probably all the more deeply because of that. What should he do now?
ASKING CHINESE
He would have put in his report about Gregor's not being there a long time ago. The office assistant was the boss's man spineless, and with no understanding. What about if he reported sick? But that would be extremely strained.
TELLING INDIANS
It had been set for four o'clock as it should have been; it certainly must have rung. Yes, but was it possible to quietly sleep through that furniture-rattling noise?

Mauris augue ante dictum
Video, Standard

16

Mauris augue ante dictum
Video, Standard

16

Mauris augue ante dictum
Video, Standard

16

Mauris augue ante dictum
Video, Standard

16

MORBI DAPIBUS EROS A SOL
ICITUDIN FACILISIS
Video, Standard

16

Close

MORBI DAPIBUS EROS A SOL
ICITUDIN FACILISIS


I ought to just try that with my boss; I'd get kicked out maybe that would be the best thing for me. If I didn't I'd have given in my notice a long time ago, I'd have he just what I think, tell him everything I would.
It had been set for four o'clock as it should have been; it certainly must have rung. Yes, but was it possible to quietly sleep through that furniture-rattling noise? True, he had not slept peacefully, but probably all the more deeply because of that. What should he do now? The next train went at seven; if he were to catch that he would have to rush.
“And he did not at all feel particularly fresh and lively. And even if he did catch the train he would not avoid his boss's anger as the office assistant would have but instead the lorem ipsum took over.”
It had been set for four o'clock as it should have been; it certainly must have rung. Yes was it possible to quietly sleep through that furniture-rattling noise? True, he had not peacefully, but probably all the more deeply because of that. What should he do now?
It had been set for four o'clock as it should have been; it certainly must have rung. Yes was it possible to quietly sleep through that furniture-rattling noise? True, he had not peacefully, but probably all the more deeply because of that. What should he do now?
ASKING CHINESE
He would have put in his report about Gregor's not being there a long time ago. The office assistant was the boss's man spineless, and with no understanding. What about if he reported sick? But that would be extremely strained.
TELLING INDIANS
It had been set for four o'clock as it should have been; it certainly must have rung. Yes, but was it possible to quietly sleep through that furniture-rattling noise?
Back

LightPi
10.0.0.10


The lightPi is actually the first project that I did related to Raspberry Pis. And I kind of just forgot the reason why I first started doing it. I may have done it because I wanted to try to ... wait, I remember now. My first idea related to all these projects was to control an LED strip, making it go on and off with controls with SSH access(and through PHP too). That little thing grew into the multi Pi project that I have on display on my Projects page.
The 10.0.0.10 just means it's accessible through my own home router for accessing the services and controls. I have 10.0.0.2-9 on reserve for my other devices, and all these internet-of-things stuff starts on 10 and goes on.
Special thanks to then UVB-76, now Agiri, for inspiring me and helping me with all these projects and teaching me the fundamentals of programming as well as electrical stuff.
The lightPi was first started as just an LED strip light controller for fun, it wasn't even for lighting. After moving to an apartment, I became lazy at turning off my lights in winter nights(I'd assume that no one wants to get out of a warm bed on a cold winter night), so I started this project so that I can switch my lights on and off without having to get out of my bed. So pretty much 50% of my projects are related to laziness, 50% for fun. In this case, something fun became super useful.
I forgot how I controlled it in the beginning, yes I have a bad memory. But right now, it is being controlled by a MOSFET(IRLB8721 N-Channel) with the gate pin connected to one of the Pi's GPIO pin. The Pi sends pull-up and pull-down signals to control the MOSFET, and the MOSFET's source pin is connected to ground on the PSU(Power Supply Unit) and drain connected to the ground on the LED strip. Also, it started as a premade LED strip, and it just wasn't bright enough to light my studio. After about 2 months, I decided to go with custom-made LED chips. Basically just soldering my own LED lights for the maximum brightness that my power supply can handle. I used a custom made PCB with 24 pieces of 2835 LED chips that was supposed to be used as lights in trucks. I soldered 10 of them in a ringshape given that they're 4.8W a piece, so 48W in total with 240 pieces of LEDs. Divide that by 12V that's 4A, which makes it just under the 5A rating on my 12V PSU.(it's a cut-up laptop charger I bought from eBay. Love these chargers, built-in everything including fuses. I also used these power adapters on my other projects.)
I have two goals when making stuff, whether it is a physical gadget or coding programs. The most important thing to me is that it has to work. As long as it works, I'm good. The other thing is that it has to be as simple as possible to maintain or to upgrade. I don't want a bunch of random wires, or excessive components or complex designs to just make one thing work and eventually forget what the wires were all about. So when designing this whole light thingy, I decided to go with just one PSU that powers both the Pi, as well as the LED strip. One of the perks of a Raspberry Pi is that it can be powered through the GPIO pins with a 5V supply. Problem is, I'm using a 12V charger. But that wasn't hard to fix, a 12V to 5v step-down regulator saves the day. So in the end, the 12V PSU wire connects to the LED as well as the regulator to power the Pi. And there is my goal of simplicity that one PSU powers everything, and it acts just like a regular light.
Oh, I should also mention the physical light design. I bought one of the floor lamps that Walmart sells for about $14. I took out the bulb that came with it and wrapped the PSU's power cord around the stand to make it somewhat nicer(instead of having lose cord hanging in mid air). The lamp came with a half-sphere holder with the opening facing up, which provides me the space to put my custom soldered LED ring. The positive and negative wires of the LED going outside and around the sphere holder, and I have been thinking to just poke two holes on the plastic holder to run the wires through(I Actually Did.), but then, it wouldn't solve any major problems, and it's already working AND I have to resolder the wires to put them through and solder them back. NAH, I'm good for now.
The control part is pretty straightforward. Because I have been setting up my own web servers on my production server, and I am so fluent with setting it up, I decided to go with NGINX+PHP on the Pi(essentially it becomes a webserver). A PHP script that utilizes shell_execute() function to execute native Pi commands to control the GPIO pins to turn the lights on and off.
What happened later...
So this floor lamp became my first IOT(internet-of-things) gadget to play with: controlling lights on and off or any other IOT devices that are connected to my router with my phone. After a while, I added the doorPi, the cornPi and etc, that are also controllable through my local network. And since I didn't want to control all of these stuff through different IP addresses(the doorPi is 10.0.0.11, the cornPi is 10.0.0.12). In the end, I decided to make this lightPi a control center for all my wireless stuff(I could still control all of the stuff through their own respective IP addresses, but I simply used HTML+JavaScript to get info from their own respective web servers, and use AJAX to send GET requests on them to control them, much simpler that way. Here's a screenshot of what the control center interface looks like now:
Even more extra features:
Thanks to Agiri, I have a whole set of programs installed on the lightPi for even more light effects, like dimming, breathing, and reactive to music. So basically when there's a beat in the music, the light goes bright, and fades off, creating a super cool visual effect. Later on I migrated this feature into a standalone project as the 10.0.0.14 clubPi(because it makes my apartment looks and feels like a nightclub :P )
What happened two weeks after I wrote this project description:
Two weeks after I wrote everything above, (about a year later since the original setup with the LED strip) I finally resolderd everything, and made everything much much nicer. The reason for this rework was because I used a tiny breadbord to plug in the MOSFET and all of its pins. The MOSFET generates a huge amount of heat, to the point where it melted the plastic cover of the first breadboard. I noticed this because the light kept on flickering from time to time and it annoyed me SO MUCH. But I was lazy then, I replaced it another breadboard, and of course that got melted again and started to flicker, again. I didn't want this to be a fire hazard because of the possibilities of shorts after the plastic melts, so I did a whole rework on this part.
I used a 50x70mm through hole PCB board to solder the TO-220 packaged MOSFET, with a 40x40x20mm heatsink thermal pasted on the back of the MOSFET, and hot glued the heatsink onto the PCB. To make sure it dissipates all the heat generated form the MOSFET, I also added a 12V 40mm fan on there blowing air towards the heatsink.(Later I found out that the fan was an overkill. The heatsink itself was enough.). I originally had the 12V fan connected to the 12V PSU, but then realized it gets too noisy. Then, this great idea came to me, since if the LED isn't on, the MOSFET won't be hot, so the fan doesn't need to be on 24x7. So I connected the negative wire on the fan to the MOSFET. Voila, the fan turns on and off along with the light. But it still wasn't good enough, because that didn't fix the noisy issue, and here I did the most stupid and illogical thing: I solder a resistor in between the fan to the MOSFET to lower the voltage, which in turn slows down the fan. The result voltage was around 6V I believe. I called this action stupid because I have a step-down regulator soldered on the board too! In hindsight I realized that I could have just soldered the fan to the regulator, but I didn't... and I'm too lazy to correct this mistake, everything works fine now. I also replaced the Rpi 3B with an Rpi zero w for a smaller footprint on the stand. Here are photos of what this whole thing looks like now:
Scratch ALL THAT... on 9/4/2018
I had a rework on this whole thing again because something died... I replaced the Pi zero w a long while back because it didn't have enough processing power to act as my central processing unit, so I switched back to a RPI 3B. About the dead thing: I don't know exactly what died, but most likely the MOSFET died becasue the PI ran just fine, the light lights up if I connect the PSU directly to it, but it does not switch on. And if anyone knows me, which noone does, I hate breakable things. This time, I'm using a single channel relay to make things stop breaking once and for all. Same usual setup with the one difference that the Pi directly control the relay that controls the power to the LED lights now. Much Much simpler. I think from now on I'll start building everything simpler.
The 2020-4-16 update
Yes I used the Chinese date format, because it actually makes sense in places like this. 1. this is my space, I get to do what I want :) 2. the year matters the most on these types of things(that I only update it once couple months or years, in this case, 2 years.). The relay turned out to be the best choice I had made. And I think I'll be using just that from now, though I have made less and less things because of lack of time AND lack of ideas. Creativity dies with age? Maybe.

DoorPi
10.0.0.11


This is the second project that I did after having the lightPi. Pretty much the same setup with a Raspberry Pi, but in this case, it controls a servo instead of an LED strip.
I'll explain by following the current flow this time instead of saying things all over the places... Same 12V5A PSU as the lightPi, instead of having the 12V for the LED on the lightPi, I connected the step-down regulator directly from the PSU since the servo that turns the door lock also operates at 5V. And the same goes without saying, the regulator powers the Pi as well. And I think the door Pi has a much simpler setup since it doesn't require any extra stuff, pretty much just plug, code a little bit, and play. The servo is controlled by the PWM pin on the Pi software-wise. I used python scripts for locking and unlocking(turning the servo). Same web server setup, same control mechanism(I explained in much much more detail in the lightPi project page).
The proper way of installing the servo is supposed to be drilling holes and have it fixed on the door lock with screws, but then I'll probably have to pay for the damages on the door, so I kinda just used tape to tape it all over the door lock, and to date, it has been working for more than a year and a half, so far it has not fallen off. KUDOS.
Again, I got lazy over time. Since the only way to unlock the door , when I designed the whole control mechanism, was through a web interface. A very obvious and annoying problem came afloat. If I wanted to get out of my apartment, or to poen my door for my friends, I'll have to unlock it with either my desktop or my phone or stick my finger in between the tape and turn it manually. I hated that, very much. Unlocking my door should be simpler and easier with technology, it shouldn't be something harder to do just because it's something cool. The extra action of pulling out my phone, unlock it, open up the home screen shortcut to load the web control page, click unlock, and go just feels SUPER redundant. Sometimes I feel like just ripping the whole thing out just to go with the primitive way of turning the lock.
But, there are always shortcuts for my kind of lazy people. I took it to the next level. Since the Pis have GPIO pins, I can easily make a short python script that runs 24x7 to scan for GPIO pin pull-up and pull-down signals when two pins touch together physically, and that's pretty much how physical buttons work too: connecting two separate circuits together to complete the circuit connection. In my case, if two pins touch together(through a physical "Momentary Tact Tactile Push Button Switch". It's just a button... really) it execute a piece of python code, which in turn execute the script that turns the servo through PWM to control its turning degrees and duration, which does what I want. So now, all I need to do, is to just hit that button, that I, again, taped onto the door, and door will just unlock. It's even simpler than what you would normally have to do, which is physically turning the lock handle.
What happened later...
I forgot the reason why, I think it's just for the coolness, I stuck a buzzer onto the doorPi, and I copied the pattern of how my BMW beeps when locking and unlocking it: One beep when it locks, and two consecutive beeps for unlocking. I used to listen to how the lock locks when I'm ready to leave to make sure the door locked properly. Now, I just listen to the louder beep to confirm the same action. I guess that's a small improvement?

RelayPi
10.0.0.12


I don't know what name I should give to this project. I first called it relayPi, then decided to call it cornPi(I'll tell you why later). The reason I called it relayPi is because it has a Pi controlled relay on the circuit to control power to a floor lamp. And the reason I renamed it to cornPi is because I replaced the original trashy "LED" bulb with a "200W Equivalent LED Bulb with 180 LED Chips that looks like a corn shape that consumes only 30W", and the fact that I might use relays to do something else with the pi in the future, that could become confusing.
Again... I forgot the reason why I wanted to ... Ok nevermind, I remembered again... The reason I wanted to do this project is not because of the relay, it's actually because I wanted to utilize the LED Corn light because it is SOOOOO bright!(At this point, I was still using the old LED strip from 10.0.0.10 instead of the custom soldered light, that's why.)(Later edition: Wrong, I only did this becuase the corn LED looked cool...) The pro side with this LED bulb is that it comes with a standard US E26 socket(the twisty light bulb socket) that I can just screw onto the floor lamp without any extra fixtures. The con is... just nasty... all of the transformation and regulation for all of these light bulbs are built into the bulb itself. That means I will have to be switching it at 110V power voltage. I don't know much about electrical stuff, but I'm fairly certain that it's just dangerous to play with raw 110V electricity, no arguments there.
I'd love a controlled bright light, but I also don't want to electrocute myself in the process of making this project. That got me stuck for a long long time. For a short while, I had to manually turn it on and off like regular people, muggles. I had two problems at that time. The first was not even the problem of turning on and off lights because when I thought about this, I thought I could use a servo to twist the rotary switch. The problem was how I can power the Pi and the servo at the top of the lamp without making it look like a piece of ghetto trash like the old lightPi. All the lamp had, was an integrated socket for the bulb. There is no extra electrical stuff available for me to modify, nor do I know the internal design of it(and the stand was metal, I don't have the tools to cut through it). I didn't feel like taking it apart because I usually don't end up being able to put things back... that really bothered me because I REALLY didn't want to use 2 power outlets to power one lamp, that's just... plainly stupid and unnecessary.
While trying to figure out how to power the Pi, I had to figure out how to switch the 110V light as well. That actually helped me in figuring out how the whole setup would look like. After consulting with Agiri, I was recommended to use a 110V relay to control the light. Then it hit me: I have to use Pi to control the relay, and the relay has to control the power to the light. Most importantly, the Pi has to be on at ALL TIMES, and the only place I can do that is where the floor lamp connects to the wall socket, and there come all the ideas.
What I did...
I wanted the safest way possible, but I also want it to work. So I end up cutting the power cord of the lamp(two wires for AC power), stuck a regular USB wall adapter in parallel with the exposed wire(the output of the USB wall adapter gives me a 5V voltage to power the Pi) instead of me having to solder my own regulator which exposes me to more risks of messing something up. The charger plug thingy provides a rectangular plastic platform to rest the Pi on one side and the relay on the other side VERY NICELY. I wasn't expecting this, but it just worked like a charm. To eliminate as much as potential risks of shorting and some other dangerous stuff, I hot glued the whole exposed metal parts of both the cord and the plug part. I glued it to the point that it looks safe to touch, but yeah, I ain't touching it. The relay is controlled by the Pi almost exactly like the LED light control, where one of the GPIO pins of Pi is connected to the relay. Back to the cord for the floor lamp: I made another cut on the neutral line and stuck both opening ends into the COM and NO connectors of the relay. The Pi controls the relay, which in turn controls the light.

CounterPi
10.0.0.13


There is nothing much special about this project, it's a personal notification project that utilizes the Pi and a huge 7-segment display to display my daily income through selling online and automated services.
There is really nothing to explain with this project maybe except for the design and production part of it. You're probably familiar with a 7-segment display. You see it mostly on really old cash registers. The way that I did it that made me feel so smart is that I put a cut-to-size-fit two-way mirror in front of the display. Normally, when the display is off, or even on, you see the grey indentations of the segments that are not on, which makes the lighted segments less readable and just annoying to look at. After hot gluing the two-way mirror in, the red display color looks more vivid because of the reflection of the mirror, and since there isn't much lighting hitting the back of the mirror, the non-lit segments of the display is almost invisible, which makes reading really nice and comfortable, and the mirror also made the thing looks like a high-end gadget. The coding part is super simple: just a PHP script that runs every minute, 24x7, to fetch remote server information(amount of money I have made since 0:00 to this current minute), and every time I receive a payment, it'll update the display to to show the latest amount.
There is one more thing...
Since there is no way for me to know when I receive a payment unless I stare at it(which I'm not gonna do), I decided to stick a buzzer on there, and every time I receive a payment, it buzzes for one tenth of a second to notify me and update the display. All and all, it's a simple and fun project to do. Something that motivates me everyday to make mo' money.

ClubPi
10.0.0.14


This project consists of 80 8-bit RGB Led Sticks, each has 8 connector plates: GND, DATA, VCC-IN, GND, two sets on each, soldered together as a 4x20 panel. I originally wanted to use these sticks in one vertical line on a piece of maybe cardboard or plexiglass, and with maybe multiple lines to make a graph of my daily income. But these sticks took a long time to arrive, and in between the waiting time, I completed the counterPi project, that's why the counterPi has .13 and clubPi has .14 on the IP address assignment.
This project was not supposed to be time-consuming. The only reason it took so long(10+ hours of soldering time) is that I had to hot-glue 80 sticks on a strip of cut-up plexiglass. On top of that, I had to solder them together, and for every 4(one line) I have to use wires to connect it to the next line(3 wires for a line, 60 pieces of wires just to connect them together, not counting other wires). Simple math would be (80 sticks) x (6 plates to solder on each) = 480 tiny connector plates to solder. These plates are like 1 millimeter wide and maybe 2 millimeters in length. The worst of all, I had to experiment with how to solder them and design them properly. The trial and error part destroyed about 10+ sticks(because the plates are easily broken off from the stick if you solder something hard on it, like a magnet wire, and once the little piece falls off, it will no longer go back on, and you lose permanent connection to that connector).
OH, I forgot to mention, I didn't solder them into long lines like I originally planned. I realized that I can assemble these 8bit sticks into a huge panel(which I did, a 4-column x 20-row panel). My second thought on this project was to replace the sound activated LED feature that was in the lightPi, because the lightPi only goes cool white. I assumed that the RGB LED with the same feature would look much much cooler(and I was somewhat right on this).
What happened later...
Only after soldering everything and completing the project, did I realize they sell 8x8(64bits)LED panels...................... I COULD HAVE JUST SOLDERED ONLY 10 64BITS LARGER PANELS INSTEAD OF 80 SMALL ONES!

The Drone


It's like the saying(that I invented just now): Your only limit is your imagination.
I had the most fun and most pain with this project. The pain, in this case, is literal, I'll explain it in a chronological order.
As always, I don't remember why I did this project. All of the previous, including this project, was written after months I have completed them. I'm flying to Boston from LA right now(Aug 31, 2017), and I have 5 hours to kill. What can possibly be the better thing to do than composing for my own site for the sake of sharing my great ideas? Yes I'm condescending, but I only live once, and I'm not forcing people to agree with me, so why not.
Anyways, I bought a set of carbon fiber drone frame and assembled them together. Just to be clear, there are stuff that has to be on there. For example, the CC3D EVO flight controller, the 4 brushless motors, and a radio frequency transmitter. It's the other stuff that I added that matters. My first idea was a Pi controlled drone, operating it with an iPhone, but that obviously just won't work because iPhones can't transmit RF signal. It can control Rpis sure, but nothing so continious to fly a real-time drone. Besides, the CC3D has everything I need to couple with a transmitter and a receiver, why would I go through the extra troubles anyways.
Even though I used premade RF modules, I still wanted to put a Raspberry Pi on there, which I did. My first idea with an on board RPi was to record video and perhaps manage power to the drone itself. But then, I realized that I can't do anything without the Pi being on 24x7, and that drains the precious on board battery. So in the end I just connected a 5V regulator to power the Pi when the drone receives power through a Power Distribution Board. (I think I might have gotten this drone idea when I saw the avalibility of the RPi zero w). I also wanted to put a camera onto the drone, and I figured why not put an RPi camera with it since the RPi has both the interface as well as the storage. Something I learned from putting cameras on drones is that: 1. You absolutely need stabilization on both the camera as well as the flight controller. 2. You need a wide-angle camera if you want your footage to be nice. The first footage I got was just... horrible. The wide-angle lense that I put on later made it somewhat nicer, but I still couldn't get stabilization on either of them. Then I realized GoPro has everything I need. I then bought a $300 GoPro HERO 5 Session on top of the $800+ parts. The sad part is I gave up before I had a chance to test the GoPro quality on the drone because of the cost.
The hardest part that I'd like to complain is the calibration of the motors. I broke more than 6 ESCs (Electronic Speed Control) due to various reasons. The first one died because I didn't setup the calibration process properly, and I somehow burned it. The second one died because of a short, I think. Two died due to crashings of the drone(blade hit ground while I didn't kill power soon enough, the BEC kept on receiving power while the motor doesn't spin). The last two kept on overheating and still on the drone, but I'm too lazy to replace them. I don't really feel like keep working on this project because of the high cost. Yes, this is an expensive hobby. The ESCs are like $5 a piece, and super easy to break. I think I bought 12 of them in total. The ESC part isn't that bad, but when I looked at the total, I decided to not to touch this project anymore: a commercial product, that has GPS, auto-return, flight stabilization and etc(DJI Phantom 4) costs around $499. I spend $800+ on mine and it doesn't have any of those features...
The 2020 update
I can't believe I missed out on the most important part of this project. The pain. It might have been beacsue I was getting off plane, or too tired to continue. What happened was: I was test flighting the drone in my apartment (yeah it's a stupid idea, don't do it). And I had little knowldge then, about how the onboard controller controls its axes. I tried to move the drone by hand while it was in the air. The software came with it automatically corrects its flight path when no input was received from the controller. This was a key component to keep the drone as stable as possible. As far as the drone was concerned, it thought it had a strong wind blowing on it, when it was just my hand trying to move it. This is when the drone crashed into me, and hit my fingers and arm with its blades. The CARBON FIBER BLADES, that I intentionally upgraded from its original plastic counterpart, were rotating at 20,000 RPM. Instantly shattered my 3 fingernails, and a deep cut under one of my nails as well as a cut on my arm. I had no first aid stuff at home at that time unfortunately. I had to drive to a CVS singlehandedly, literally with a single hand, to buy gauze and bandages. To this day, I can still remember the pain, the pain that was so great that my brain numbed my fingers...

ICITUDIN FACILISIS
MORBI DAPIBUS EROS A SOL


I ought to just try that with my boss; I'd get kicked out maybe that would be the best thing for me. If I didn't I'd have given in my notice a long time ago, I'd have he just what I think, tell him everything I would.
It had been set for four o'clock as it should have been; it certainly must have rung. Yes, but was it possible to quietly sleep through that furniture-rattling noise? True, he had not slept peacefully, but probably all the more deeply because of that. What should he do now? The next train went at seven; if he were to catch that he would have to rush.
“And he did not at all feel particularly fresh and lively. And even if he did catch the train he would not avoid his boss's anger as the office assistant would have but instead the lorem ipsum took over.”
It had been set for four o'clock as it should have been; it certainly must have rung. Yes was it possible to quietly sleep through that furniture-rattling noise? True, he had not peacefully, but probably all the more deeply because of that. What should he do now?
It had been set for four o'clock as it should have been; it certainly must have rung. Yes was it possible to quietly sleep through that furniture-rattling noise? True, he had not peacefully, but probably all the more deeply because of that. What should he do now?
ASKING CHINESE
He would have put in his report about Gregor's not being there a long time ago. The office assistant was the boss's man spineless, and with no understanding. What about if he reported sick? But that would be extremely strained.
TELLING INDIANS
It had been set for four o'clock as it should have been; it certainly must have rung. Yes, but was it possible to quietly sleep through that furniture-rattling noise?
ABOUT ME

Originally, I had trouble of choosing what to put on this page.
I think now I know.