- tokyo_nomad_
- Posts
- Nomad Error Logs #16
Nomad Error Logs #16
March 2025 Newsletter
Evening all.
Welcome to the March edition of the Nomad Error Logs. This one is going to be a short one this month. Unfortunately, real life is handing me a beating and right now it has me in a headlock while keep threatening to suplex me through a table.
I toyed with the idea of just skipping a month, but I really enjoy writing these, so I decided to write a condensed version. That means you’ll get some news of all things going on in Nomad Land, as well as a lovely glitch art tutorial. Hopefully, I’ll be able to bring back the usual Artist Spotlight and Glitch Video next month, ‘cos I have some good ideas in the pipeline.
News
What a difference a month makes. We go from February's News vacuum to a newstacular March, jam-packed full of cool stuff.
Jade Cicada
If you've been reading this newsletter regularly, you may remember that I've been saying I have some new projects in the works that hadn't been released yet. Well, guess what nerds.
Over the New Year's holiday, I was privileged enough to be able to work on helping come up with some press photos for the music artist Jade Cicada. Up until now, he's largely remained anonymous, and this work marks the first time revealing his face in public.
It was a huge privilege to be asked, and to see his fans reacted to the post.
His team put together an animation of all the WiPs I created for the piece. I think the animation came out looking pretty cool, but I wish the IG format would loop it again or play in reverse (are we bringing Boomerang back?)
Remember in 2024 when the glitch.art.br art exhibition happened? Of course you do. And if you don't, then this is the perfect post.
Every year a few months after the exhibition opens, the organizers post an online book containing all the artwork as well as essays on glitch art theory. You can check out the book here.
It always impressed me how much effort the organizers of the festival go to so that the work is professionally exhibited in a way that allows the audience to take in and appreciate the work - which is always a challenge with online exhibitions.
You should totally go check it out, and not just ‘cos my work is featuring there.
OneLab iOS beta
Some exciting news for iPhone users from last month that I didn't have time to squeeze in because it came so late.
For the last few years, Android users have been gorging themselves at the Glitch app banquet; cramming our gobs full of glitchy goulash and pixel pastries found in the Lab series of apps (Glitch Lab, Chroma Lab, and more recently One Lab). All the while, iOS users have had to live off the scraps of lesser apps.
But, guess what my starving Applemaniacs; OneLab is now in Beta. You can download it here.
And if you haven’t heard of the Lab apps before, what are you doing here!? Here are some of my favorite pieces I made with the Lab apps.






Glitch Tool: FM
We continue our journey into the Golden Goose of Glitch; GenerateMe Processing scripts. This month I want to talk about the script that got me into Processing and GenerateMe, and that is Frequency Modulation.
Now, frequent users of Glitch Lab might know this by another name, as it’s called Oscilloscope in the Lab apps. I remember when I first saw art using this effect and I was blown away with how cool it looked. It was one of the effects that changed the direction of what I was doing and made me want to make glitch art. Come to think of it, I’m pretty sure it was this exact artwork that made me want to make similar things

Shutterstock Mannequin - mthrflwr
Besides a name, I’m not 100% sure who the original artist is, but it seems to be used as the artwork for about 16 million different Soundcloud songs, so whoever it is must have been able to retire early to live a quiet life on a tropical island somewhere, from all the millions they made in royalties from SoundCloud musicians. I’m sure of it.
All I can find is this Reddit post from a user called mthrflwr, who seems to be the artist
Oh, how I longed to make such cool-arse images. Alas, I had one small problem; I had no idea what this effect was called and had no idea how to recreate it. I spent ages just googling things “How to make artwork of people that kind of looks like that one Joy Division album?”
I tried to recreate it in GIMP, but the stuff I was making really didn’t come out how I wanted.

Eventually, I stumbled upon the Reddit post I linked above and I finally had a way to recreate this kind of effect, using the FM script in Processing. Discovering GenerateMe was a landmark moment for me, so I have a lot to thank mthrflwr for!
There are actually quite a few ways to achieve this effect; FM in GenerateMe, the Oscilloscope filter in Glitch Lab (now called Modulation in One Lab), analog glitching with a circuitbent video synthesizer, or using filters in Adobe After Effects. I’m a man of humble means, so I naturally went with the cheapest option. The FM script in GenerateMe is absolutely free, as is Processing, and it’s also quite flexible with its features.
So, what does FM actually do? Well, according to the script itself
// - convert RGB into desired colorspace (GS - grayscale)
// For every channel
// - modulate signal
// - quantize and dequantize signal (if quantval > 0)
// - demodulate signal using derivative method
// - apply 3 lowpass filters in a chain to remove carrier (if possible)
// Combine channels and convert back to RGB
From what I understand, modulation involves taking a carrier wave, which is a pure wave with a constant frequency and superimposing the data of the image on top.
But if that doesn’t make a lick of sense to you either, here’s some pretty pictures. These are some artworks I’ve made with the FM script in the past.






So let’s take a closer look at what it can do. For these tests, I’m going to try and get revenge for my very first attempts at this by using the same base image as my original Unknown Pleasures looking works. This is a photo I took of one of the statues in Italy Park, which is a garden in Tokyo with a ton of ‘marble’ statues in it.

Nice jug. I mean, water receptacle.
First thing we need to do, is look at the controls. So, this script runs in a similar fashion to all the previous scripts I’ve written about. You load the script (I usually use Processing 2) and you need to write the filename of the image you want to glitch here
// set up filename
String filename = "test";
String fileext = ".jpg";
String foldername = "./";
Make sure that the image is saved in the same folder that the script is saved in.
Once you hit Run, it’ll open the output in a Processing window and you can edit the glitch by moving your cursor around the window,
Here are the controls
// Usage:
// * move mouse X axis - change the carrier wave frequency
// * move mouse Y axis - change bandwidth
// * click mouse to fix setup (click again to release)
// * press N to negate image
// * press SPACE to save
It sounds pretty technical but the simplest way to think about it is like this:
Move the mouse left and right: changes the how spaced out the waves are. Honestly it can be hard to tell which is which, and it also seems to change the amplitude (height) of the waves too. Basically, the further to the right you move the cursor the more chaotic it gets.
Move the mouse up and down: Changing the bandwidth changes how much data of the original image it carries. So the further up you go, the more narrow and fewer frequencies there are with bigger spaces between them, and it becomes harder to make out the image. Moving the cursor further down means there are more frequencies packed more tightly, and more data is carried on the wave giving a more hi-res image.
Let’s take a look at three side by side as we move it along the x-axis. For these examples, I tried to keep the y-axis in the middle

left, centre, right
Then I did the same for the y-axis while keeping the x-axis in the centre

top, middle, bottom
You’ll find that most of the interesting results tend to come from placing your cursor somewhere else, not at the very edges or the center of the image. Move your cursor around until you find something you like. keep in mind that even small changes in positioning can make a big difference.
Next up is the N key which basically makes a negative version of the color space you’re using

Negative with cursor in the centre

I moved the cursor closer towards the upper right corner
The next thing you can mess with is the color spaces. Just find the Config part in the code and change the color space from RGB to a new one
// configuration
int colorspace = RGB;
There’s a full list of color spaces on the second tab. There are 15 to choose from
final static int OHTA = 0;
// RGB == 1; defined in processing
final static int CMY = 2;
// HSB == 3; defined in processing
final static int XYZ = 4;
final static int YXY = 5;
final static int HCL = 6;
final static int LUV = 7;
final static int LAB = 8;
final static int HWB = 9;
final static int RGGBG = 10;
final static int YPbPr = 11;
final static int YCbCr = 12;
final static int YDbDr = 13;
final static int GS = 14;
final static int YUV = 15;

OHTA / HSB / XYZ

YXY / HCL / LUV

LAB / HWB / RGGBG

YPbPr / YCbCR / YDbDR

GS / YUV
A lot of my own works have been made using the GS colorspace and then you can apply gradients to them in Photoshop or GIMP.
There’s actually one more kind of colorspace you can use, which is turning the “First Channel Only” setting on for any of the L (LUV/LAB) or Y (YPbPr/YCbCr/YDbDr/YUV) colorspaces, which will only apply the modulation to the Luma
You can change that in the config section - just change ‘false’ to ‘true’
final static boolean first_channel_only = true;

The next setting is Quantval. I’ll let the code explain what it is.
final static int quantval = 30; // 0 - off, less - more glitch, more - more precision
The default setting is 30.
For each of these experiments, I tried to keep the cursor around the same position.

5 Quantval

10 Quantval

30 Quantval

50 Quantval

0 Quantval (turned off)
Personally, I quite like the default 30, but you can get some pretty interesting results if you go down to about 10. Any less than that and it tends to get a bit messy.
The final setting you can play around with is turning off the low pass filters
final static boolean lowpass1_on = true; // on/off of first low pass filter
final static boolean lowpass2_on = true; // on/off of second low pass filter
final static boolean lowpass3_on = true; // on/off of third low pass filter
By default they’re all turned on. I don’t really understand what these do, but turning them off seems to make the waves grainier and thinner (especially turning off lowpass3)
For these I tried to keep the cursor around the same point.

ON ON ON

ON ON OFF

ON OFF ON

ON OFF OFF

OFF ON ON

OFF ON OFF

OFF OFF ON

OFF OFF OFF
The final thing you can play around with is adjusting the size of the image that you feed into the script. Bigger files tend to have more precise hi-res waves, whereas smaller files tend to be blurrier and the waves thicker.
One thing to just keep in mind though is that if you’re not on a fast PC, Processing can struggle with the real-time glitching of big files, and it can take a while to update as you move your mouse around.
The examples above were all performed on an input image that was around 1000×1000 pixels.
Here’s a couple more examples with different resolutions where I’ve tried to place the cursor in the same location.

500×500

1000×1000

2000×2000
Just keep in mind that your output window displays at the actual size, so if you find yourself on laptop with a tiny screen, part of the window gets cut off.
Anyway, this is a tool that makes really cool art, and if you do some post-fm editing with another app or in PS/GIMP, you can come up with some really cool effects.
That’s it for this month. We’ll see if we’re able to go back to the regular length next month, but it may be shorter versions for another couple of months. Let me know which features you like the most, so I know not to cut anything you really enjoy.
Apologies if I made any typos.
See ya!