What I did today

You know what’s even better than one giant monitor?

… two giant monitors.

Here’s my setup:

JK that’s from Silicon Valley. But it surprises me to see a pack of cigs on his desk. His character does not smoke, but he must smoke in real life lol.

I made some more progress on my multiplayer 6DOF FPS arena shooter, and added a server profiler to finally debug some lag spikes I’ve been having (looks like it’s coming from how I’m sending objects)

The mechanics are getting somewhat defined now, I might post a demo on JGO soon with a giant server for everyone to play on

Huh…this will be interesting: https://www.infoq.com/news/2017/05/no-jigsaw

Psh, only three monitors? How about two monitors hooked up to my MacBook Pro and another older laptop dedicated to Netflix? So, 3 monitors just for working and another just for Netflix!

Really though, most of the time I’m just working on my MacBook. High res displays like the Retina display are a god send for someone like me who loves working on the go, there’s so much room to work packed into this little laptop!

I spent hours rereading and rewriting code because of this line:

GL30.glVertexAttribIPointer(attribute, elements, GL11.GL_INT, elements << 2, 0);

I used to have one monitor and was fine with it, but now that I’ve had three monitors, I can’t stand only using one monitor; it feels too restricting.

Implemented a simple taskbar.

https://puu.sh/vDRVy/73d04b26c5.gif

Sooo, half a year ago I said I would build a flight controller with arduino (teensy) …
Here it is :smiley:

c3J9zeZ7tY4

Sorry for giving you cancer with the video quality ::slight_smile:

I’ve flown 1km far out yet, still plenty of signal with the RFM69H module, you can fly for at least about 20 minutes, with medium motor usage.
It has sensors for gps, air pressure, orientation and battery voltage onboard.

With all of that you can compute altitude, speed, distance and angle from home, etc with the ultimate goal of programming my own autopilot.
Right now it’s just displaying the information on the transmitter-display.

That’s the brain right here, painstakingly hand soldered…

I saw the great post from Archive with the chaos game and had to try it too. I made a little tool to try it out with more dots and not only with splitting in the middle. You can try it out here.

Finished the taskbar implementation, reworked how maximized windows render decorations and implemented title bar double-click to maximize.

4xwG-4oTOeY

Very cool project 8) Incredible that you were able to finish it and even fly that thing so well. I imagine it requires expertise in electronics, aviation and software. I’m interested to learn electronics and have some questions.

  1. Do you communicate all that gps, battery usage and other info using that radio signal device? If so, did you use some API that can encode binary data over such a device? I thought radio waves are analog and therefore so lossy so I’m interested in how this is done.

  2. Is there some guide you can recommend for doing such a project? I’ve investigated various quadcopter projects but an aeroplane with longer range is much cooler in my opinion.

Thanks!

@CommanderKeith

I did a lot of flying in wwii flight sims ;D fpv helps too.

  1. The radio has a serial interface (SPI) that allows you to manipulate registers in the radio, which controls the radio IC.
    You set the configuration registers on startup and then read/write bytes of the message queue.
    This is all done by a library, that thankfully exists, I had to rewrite some parts though.

https://learn.sparkfun.com/tutorials/rfm69hcw-hookup-guide

I store my data in structs. This allows me to grab the entire chunk of memory and just push it to the radio. The other side receives the chunk of data and copy pastes the data directly into it’s memory where the struct is ready to be interpreted as separate variables.
(Keep in mind the memory alignment, as it needs to be the same or else the serialization gets more complicated)

  1. There are a lot of things to research, i didn’t use one specific guide.

Here’s some of the topics you may need to investigate:

  • soldering correctly
  • pull-up/down, voltage divider, cmos basics etc
  • how the SPI library works(!!!)
  • structs and memory alignment
  • capabilities of your hardware (how many PWMs and analog inputs, etc)
  • how servos are controlled
  • capacitor placement for power smoothing
  • signal line termination and line impedance for SPI
  • (veeery basic) antenna theory (and maybe simulation with 4nec2)
  • Don’t buy a cool looking or very fast (=difficult) plane for your first one, go for an easystar or any other trainer
  • look at build reports for the plane you choose (weight, motor and CG)
  • Pick up a joystick, learn how to start/fly/land with some kind of realistic sim
  • research everythinggggg to the slightest detail
  • general rc knowledge (=> youtube: flitetest/rcmodelreviews/etc)

Here’s the code:



(I also wrote some libraries for the project, but they are not yet uploaded)

This was a tedious and long project, nothing you just do in a few weeks for fun btw, if you want to fly soon, better grab a ready made transmitter.
You’ll also need to buy a lot of little stuff like wire, tin, resistors, heat-shrink, tools, this that and the other, it all adds up.
Once you got it working though it’s awesome, you can control every single bit and fine tweak it all in software, there are much more options than with a of-the-shelf radio.

And again, don’t use some guide and do strg-c+strg-v, the moment you get a problem you’ll run against a wall.
Better start slow and accumulate the required knowledge, so that you can just build what you want to build into it.

I haven’t been as active here or with my programming as I’d like to have been of late, uni is really giving me a full plate. I don’t know if I shared the breakable objects feature I added but here’s some exploding cars :slight_smile:

lLAG4LesDm0

Every signal is analog, as the world is analog :slight_smile: Your wifi, your TV remote, the transistors in your CPU, over time they have many values between 0 and 1. Thresholds and noise-filters make them digital, redundancy adds error detection and/or correction. A good start would be googling for the protocol of an IR TV remote. That is a seriously lossy signal, but we make it work. Bonus points if you calculate how many pulses you send to instruct the TV to ‘go to channel 2’. :point:

Dropped a preview beat for my next Myers-Briggs themed album.
Pretty damn proud of how it turned out, and I did it all today too!

https://soundcloud.com/drey-warde/album-one-preview-one

Mix quality is thanks to the new headphones I got for my birthday 3 days ago (:

Tried to wire the electrical supplies…

http://www.lethalrunning.com/images/bad-wiring.gif

I liked the sound of this one! Also I know what you mean with getting new headphones, I got some new ones myself and the quality is absolutely incredible.

Implemented Assimp :D, testing it with the Sponza model.

https://puu.sh/vKiiL/244bdab122.png

.

https://puu.sh/vKijq/a8e95b2cac.png

Not exactly today, but this past Saturday I have finally graduated from Georgia Tech with Highest Honors!!

Congrats man! What’s next? Job search?