Fluid Simulation in Blender

“Throw off your fears let your heart beat freely at the sign that a new time is born.” — Minnie Riperton

I’ve completed my workflow design for fluid dynamics testing in Blender. Here’s a proof of concept:

Now I just need to figure out RealFlow in C4D…

Blender: Time To Make The Donuts

I’m very happy with the results of my first project in Blender.

White Frosting

White Frosting

Classic Pink

Classic Pink

And Nekkid!

And Nekkid!

After struggling with Cinema 4D, I decided to use a plugin rather than trying to cludge together some handcrafted fluid simulation. Unfortunately, I ran into a licensing problem with Next Limit’s RealFlow plugin. I’ve been emailing back and forth all week, and they finally got a fix for me — SUCCESS! While I waited to sort that out, I decided to give Blender a try. I began following this tutorial, but quickly found myself getting lost. I needed to become more familiar with the software and interface. I decided to follow a beginner’s tutorial to get my feet wet. I choose this particular video series because it employs procedurally generated elements, and covers all the basic modeling commands, node handling, and the complete stack of scene construction. And also: donuts are delicious. The world is terrifying, and we could all use something sweet.

I am honestly shocked that Blender is a free program. Many 3D programs are horrifically expensive; without student licensing, I could never afford to touch most of the 3D tools I’ve been learning over the years. Yet Blender seems to be very capable as a 3D program. I have only scratched the surface, but it is very impressive. Now that I have familiarized myself with Blender, and have a working fluid simulator plugin for C4D, I am in good shape to begin A/B testing.

Prototyping Cutlery

For one of my final projects this semester, I’m interested in creating a set of eating tools that help account for involuntary muscle movements (e.g., Parkinson's disease or tremors) and other mobility difficulties that limit the enjoyment and consumption of foods; I'm interested in exploring simple solid shapes, living hinges, and assembly forms derived from explicit advantages of additive manufacturing techniques.

[I want to make a really nifty spoon.]

Fabricating physical prototypes will be a challenge (…)

Seriously: fuck you, COVID-19.

This is not the only challenge, however. Finding access to food-safe materials, conducting a series of user tests, iterating forms, and self-directed research will also require creative workarounds to overcome the limitations of working while under “shelter-in-place” orders due to global pandemic.

I have decided to go 100% digital. instead of building various forms and testing their ability to hold fluids under rapid motion, I will instead conduct a series of simulated physics tests to evaluate forms. For the first part of this project, I am required to conduct an A/B test or evaluation. I have decided to conduct dual testing using different 3D programs.

Method 1:

Maxon Cinema 4D includes a variety of physical simulation abilities—including particles and fluid dynamics. I intend to leverage this software’s capacity to test various designs and forms. Tests will be designed to evaluate fluid retention under repeated multi-axial movements. Cutlery designs will be tested against traditional forms (e.g., standard soup spoons).

Method 2:

Blender is a free, open source platform for creating 3D models, rendering, animation, and more. Among the built-in features is a fluid simulator. Combined with rigid body and gravity physics, it should be possible to evaluate a variety of spoon shapes and (potentially) even different forms of cutlery.

Considerations:

By using two different simulations, it should be possible to more thoroughly evaluate a design’s fluid retention abilities.

Timeline:

Week 1 — Cinema 4D Workflow: Since I am already familiar with Cinema 4D, I have decided to begin this project by constructing my first simulation with this software. I will use Fusion 360 to generate original spoon designs, as well as a “traditional” spoon shape to compare performance.

Week 2 — Blender Workflow: Using the assets from week 1, I will spend week 2 developing and executing a comparable test running under Blender’s fluid simulation engine.

Resources:

Blender Tutorial - Realistic Fluid Simulation: https://www.youtube.com/watch?v=zmw-BTCbWMw

Cinema 4D Tutorial - Water simulation Animation: https://www.youtube.com/watch?v=JehbYBAZw7c

What does Day 1 look like?

Let’s just say I have a lot to learn.

Interactive Design Prototyping

THE TIME HAS COME TO…PUSH THE BUTTON

Wireless communication between Arduino #1 and #2

Wireless communication between Arduino #1 and #2

My current project in IxD Prototyping involves physical computing (i.e., “interactive systems that can sense and respond to the world around them.”) I have worked with Arduino before (Restricted Area, 2017) but this newest project is expected to have a daily use. In my head, I keep a long list of annoying technology interactions—this gets updated frequently. We are saturated with unsatisfying technology and devices that cause more problems than they solve. We have inconveniences stacked upon inconveniences, and if we were to step outside of this environment, you would inevitably conclude that most electronics are made to punish the buyers. I am looking to improve just one such interaction.

Back in 2012 I bought an HD video projector. If you love to watch movies, there is something magical about having “the big screen” at home. I love it. Do you know what I don’t love? Using an infrared remote control on a devices that is mounted above and behind me. Seriously, Epson: what where you guys (and yes, I’m assuming it was a team of men, with their dumb penises getting in the way of common sense) thinking?! The primary function of the remote control is to simply turn the projector on and off. I would gladly give up the remote control entirely if I could simply move the power button to the armrest of my couch. Instead, I must contort my arm in Kama Sutra fashion just to find the right angle to get the sensor to recognize the POWER-ON command from the remote.

Getty Images: the various methods for turning on an Epson HD Projector.

Getty Images: the various methods for turning on an Epson HD Projector.

My girlfriend’s method to bypass the projector is more elegant: she retrieves a step-stool from our utility closet and presses the ON/OFF button on the projector chassis. This works well, but … well, let’s just say, it ruins the mood. I began to explore other options, and realized that the primary issue is that IR remotes are directional. The IR sensor is part of the assembly, and cannot be relocated. Arduino is capable of IR communication, it is also capable of RF communication. Radio frequency is far less dependent on line-of-sight, especially within the context of indoor and residential use. Imagine what WiFi would be like if it worked over infrared. Consider also that Apple abandoned their IR remote interface for the Mac.

Enter the Arduino

I found a few open source projects that utilize IR and RF communication:

https://learn.sparkfun.com/tutorials/ir-communication/all

https://www.electroschematics.com/ir-decoder-encoder-part-2-diy-38-khz-irtr-module/

https://create.arduino.cc/projecthub/electropeak/use-an-ir-remote-transmitter-and-receiver-with-arduino-1e6bc8

https://learn.adafruit.com/using-an-infrared-library/hardware-needed

https://www.sparkfun.com/datasheets/Components/nRF24L01_prelim_prod_spec_1_2.pdf (PDF Warning)

https://www.deviceplus.com/arduino/nrf24l01-rf-module-tutorial/

https://forum.arduino.cc/index.php?topic=421081.0

https://howtomechatronics.com/tutorials/arduino/arduino-wireless-communication-nrf24l01-tutorial/

All of these resources are excellent. I want to call attention to one more link: https://create.arduino.cc/projecthub/muhammad-aqib/nrf24l01-interfacing-with-arduino-wireless-communication-0c13d4

I have a bone to pick with this one. Take a look at the wiring diagram:

Diagram created by /u/Muhammadaqibdutt

Diagram created by /u/Muhammadaqibdutt


Note the LED pin-out for the receiver. This diagram shows the positive leg of the LED connecting to Pin 3

Now, lets take a look at the code:

SOURCE.png

The devil is in the details: “digitalWrite(6, HIGH)” condition turns the LED on. Pin 3 does nothing.

This made for some very “fun” troubleshooting. I’ve since ironed out all the kinks, and have successfully pirated the IR remote signal from an Epson brand projector (on loan from the Design Office at CMU), and have moved on to making an enclosure. Will I 3D print or laser cut? I have not yet decided.

Here is some sample code for my RF triggered IR emitter:

(NOTE: this code is just one half of the project, and by itself cannot do anything. You’ll also need IR and RF libraries to make this code work on your Arduino)

#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
#include <IRLibAll.h>
RF24 radio(9, 10); // CE, CSN
const byte address[6] = "00001";
boolean button_state = 0;
int led_pin = 3;
IRsend mySender;
void setup() {
  pinMode(6, OUTPUT);
  Serial.begin(9600);
  radio.begin();
  radio.openReadingPipe(0, address);   
  radio.setPALevel(RF24_PA_MIN);
  radio.startListening();
}
void loop()
{
  if (radio.available())
  {
    char text[32] = ""; 
    radio.read(&text, sizeof(text)); 
    radio.read(&button_state, sizeof(button_state));
    if (button_state == HIGH)
    {
      digitalWrite(6, HIGH);
      Serial.println(text);
      //Arduino Remote On/Off button code
      mySender.send(NEC, 0xffa25d);
    }
    else
    {
      digitalWrite(6, LOW);
      Serial.println(text);
    }
  }
  delay(5);
}

Playing Catch-up

Thinking fast vs. looking back

Season 2, episode 1 is easily the most famous episode of the 1950s TV series, I Love Lucy. Ethel and Lucy go to work at a chocolate factory, while Fred and Ricky take on their respective housework. Whether or not you’re familiar with this comedy, chances are you probably know (or are about to know) where this is headed.

I Love Lucy, “Job Switching” (Season 2, Episode 1), 1952

I Love Lucy, “Job Switching” (Season 2, Episode 1), 1952

Lucy and Ethel are assigned with the task of wrapping chocolates on an assembly line. Having already disappointed the foreman with their poor performance from earlier in the episode, this is their last chance to avoid being fired. Their task is simple, and repetitive: wrap the chocolates as they come down the belt, and don’t let any chocolates through unwrapped. At first the speed is manageable, but it quickly speeds up, and the quantity of chocolates increases dramatically — and that’s what makes this episode so damn funny. Lucy and Ethel panic. They begin setting chocolates aside, but eventually resort to stuffing the chocolates into their blouses and mouths. At the end of the episode, Fred and Ricky realize that they are terrible housekeepers, and decide that they want Lucy and Ethel to return to their traditional roles. As a token of appreciation, Ricky gives Lucy a gift: a box of chocolates.

What does any of this have to do with LxD, civic engagement, elections, or the unaddressed hazards of 21st century technology? Not much. It is however, a great analogy for my schedule last week. I managed to stay on top of things through the first few weeks of the semester, but then the belt sped up, and I had too many “chocolates” without the capacity to wrap them. I’m now looking back, instead of writing and reflecting in the moment. This shift in perspective has been fruitful, I along with the rest of my team have made significant strides toward our goal of developing a learning experience.

What is still missing are my posts on Medium and this personal blog. I want to document this process, but am doing so one week later. The next two posts (06-11 February) are dated to correspond with the class schedule and for their prompts. This is done for clarity, and not a deception. The advantage of writing from this vantage point is that I now have the benefit of knowing how these ideas unfolded. I can write about what was done, and how it changed things.

Tackling the challenges for our learners

Bridging knowledge gaps.

Working with a team of three other designers, we began to see points of divergence for our goals. Amanda’s focus on online activism and leveraging new technologies was compelling, but she was driven to do this work independently. Nandini and Michelle were also interested in the digital realm, but were not sure about the framing for citizenship.

One of the key challenges for addressing citizenship in the 21st century is the fundamental misunderstanding by the public of how we interact with these new technologies. Twitter, Facebook, Instagram, etc. have removed the traditional political boundaries and geographic limitations of culture and ideas.

This is our stake-holder map, there are many like it, but this one is ours.

This is our stake-holder map, there are many like it, but this one is ours.

The advantage of this style of mapping is that we do not need to work from the current state toward feasible solutions. While the appearance may be linear, we actually developed our ideas for bridging the gaps by first looking forward, to a preferred state. Herbert A. Simon succinctly described the field of design as “changing existing circumstances into preferred ones,” which is exactly what we are plotting with this map. We then can backcast from the preferred state, and identify patterns and opportunities for intervention.

This tool is simple as it is effective. For weeks we had been looking at how technology was affecting citizens’ perception of reality (bots, trolls, hackers, fake news, hoaxes, disinformation campaigns, post-truth, etc.) but we had not adequately considered how bidirectional that perception was. In late 2013, a hacktivist documentary titled, TPB AFK (The Pirate Bay, Away From Keyboard) was released. This film chronicled the political and social aspects of digital sharing, and the rise of Sweden’s “Pirate Party.” Having won seats in parliament in 2009, The Pirate Party of Sweden was a recognized political group. Since then, other nations (e.g., Germany and Iceland) have also elected members from this movement.

The philosophy of the Pirate Party is best understood from their belief that “the internet is real.” They do not make the distinction between interactions “IRL” (In Real Life) and “online.” Instead, they use the term “AFK” (Away From Keyboard) to describe that state. In American politics, we can see the disruption all around us from this misunderstanding. People have been tricked into believing that their online activities are somehow contained, safely behind a prophylactic digital barrier. It’s “on the internet” and therefore not real. Except that it is. Imagine the mayhem that would exist if people believed that their personal vehicles and the roads on which they travelled were somehow a totally self-contained reality, separate from everything else.

Our goal therefor is not to leverage technology to help citizens become more engaged IRL, or AFK, but to help them understand that they are still citizens, even (and especially) when occupying digital spaces.

Decoding a learning experience: a case study of factitious

One major area of concern going into the 2020 election is the role of social media in spreading disinformation. While I firmly believe that social media companies (e.g., Facebook and Twitter) need to take a more proactive role in combating fake news (and other propaganda), users and community stakeholders can also help to fight against the tide. One helpful tool is an online game, factitious.

The rules are simple: players are presented with a headline, text, and images — is it real or fake? The correct answer will be rewarded with points, while incorrect answers will provide helpful tips for how to spot a fake. Why is this game important? One of the hard-learned lessons from the 2016 election year was that people often share a news story without ever vetting the contents. Even worse, many Facebook users were willing to share a news story without ever having read the article.

What works: the game is simple, informative, entertaining, and free to the public. What could be better: the game is low stakes, and while that certainly encourages players to give it a try, it doesn’t have any replay value, or real incentives for competition. This could be improved.

Related links:

https://www.brookings.edu/blog/order-from-chaos/2018/05/09/how-misinformation-spreads-on-social-media-and-what-to-do-about-it/

https://www.brookings.edu/research/how-to-combat-fake-news-and-disinformation/

https://www.cits.ucsb.edu/fake-news/protecting-ourselves-teach

https://www.poynter.org/ifcn/anti-misinformation-actions/

Designing Experiences For Learning

What excites me about diving into designing experiences for learning and why.

During my undergraduate studies, I took an elective on Design Thinking, and nothing has been the same ever since. I began to rethink what it means to solve problems, and became acutely aware of how easily and often products and services fail to address human needs. This journey lead me to volunteering at a “Design and Innovation” classroom at Ockley Green Middle School in Portland, OR. Working with these young minds helped me to appreciate the value of fresh perspectives, and exposed many of my own gaps of knowledge. I was gobsmacked to see people half my age building interactive prototypes for mobile apps, and completing design challenges with intuition and glee. In many cases, they were even doing more compelling work than some of my peers in the Art School at Portland State. The craft was often lacking, but their concepts were rich and deeply human — solid evidence that their imaginations were still unspoiled and wild.

When given permission to try “crazy ideas,” while also being properly supported by mentors and educators, there is earnest potential for groundbreaking innovation (this was evident, even in a K-12 context). Through many exchanges and observations along the way, I knew that I wanted to be a part of this process, to educate and support this kind of growth. My own experiences with public education were less than ideal, and I never saw this sort of potential before. I became deeply interested in the learning process, and wanted to know why some students succeed while others fail. I wanted to know what methods and environments helped people to become better versions of themselves. Most of all, I wanted to know what role Design Thinking could play in these developments.