About Jay Jay

Hi there. My name is John Elliot V. My friends call me Jay Jay. I talk about technology on my blog at blog.jj5.net and make videos about electronics on my YouTube channel @InTheLabWithJayJay.

My day at ElectroneX with my friend

Well. Wow. What a day!

Today was the opening day of ElectroneX in Sydney.

I had the great privilege of spending the day with my very good friend Aleksei. Between us I think we managed to talk to every single exhibitor. By the time I got home my legs were sore and my lips were parched, so much walking, standing, and talking!

I turned up in character. I wore my costume. A lot of people thought that was fun, as did I. :)

I met Dave Jones of EEVblog fame, which really made my day. I knew he would be there and I was really hoping to see him, and I did! He was nice enough to plug my channel, what an excellent human being! <3

And as if things couldn’t get better they went on and did! It was an honour and a privilege to meet Nicholas Vinen, the editor of Silicon Chip magazine. I had hoped that he would be there and I would run into him… and then he was and I did!

All round a super great day. I had a lot of fun, learned a few things about the state of the art, and I even netted a few new subscriptions on the channel. :)

John and Aleksei meet Dave Jones

Today was Spring cleaning day

I had to get new batteries in four of my UPS devices which involved a lot of plugging and unplugging. Since I was down there under my desk I took some time to vacuum and do a better job of my cable labeling.

While I was sorting cables I found one with a frayed end which I decided to keep for spare parts. In makes me nervous just looking at this thing. That’s a mains power lead with bare ends, it’s a death sentence waiting to happen! But that bit of cable with that attachment might very well come in handy some time so I will file it in its relevant drawer.

John's mains power cable with bare ends

Homework

This is a part of the homework feature of my blog, which is an ongoing conversation with my mate S.F.

Hey mate. Lovely to see you again, as always.

I ended up getting these cards printed at clickmedia.com.au to take with me on Wednesday to ElectroneX:

John's business card for In The Lab With Jay

I mentioned Iain McGilchrist, he’s a psychiatrist who dabbles in philosophy. I think he has a really excellent and interesting view of things. It’s hard to summarise his position but he is very interested in the difference in perceptive capabilities of the left and right hemispheres of the brain. He has a YouTube channel over here: @DrIainMcGilchrist and if you search for him you will find many a fascinating interview.

You told me to check out Succession (TV series).

I found the Four Corners video you mentioned, over here: Self-defence or genocide? Asking Israel’s powerful voices about Gaza | Four Corners.

I mentioned Eben Moglen, who has a website over here: moglen.law.columbia.edu. I find Eben inspirational. He’s always talking in grandiose eloquence about the importance of free software, if you search for him on YouTube you are bound to find something of interest.

I mentioned Annie Jacobsen, she’s a pretty interesting cat. She has written a number of books on conspiracy-theory-like topics. I recently read her book Nuclear War: A Scenario.

I have a note here that says “positive view on nihilism” but I forget what that was about. Something I wanted to tell you, now lost to time. But searching for ‘positive view on nihilism’ turns up a bunch of interesting results! (Oh. Wait. Found it! It’s a video I wanted you to see: Optimistic Nihilism.)

Oh, another note I don’t remember: “void of ‘huh'”. I assume we were being hilarious.

There is an urban myth that the first human projectile that made it into space was a manhole cover from nuclear testing facilities for Operation Plumbbob in 1957. I dunno if it’s true, but it’s a good story!

Announcing new website for In The Lab With Jay Jay

Good news everyone!

The In The Lab With Jay Jay website has been freeloading off jj5.net for a while now, over here: https://www.inthelabwithjayjay.com/in-the-lab/

But I am pleased to announce that it has now been moved into its new and permanent home, over here: InTheLabWithJayJay.com

There is also a short-link domain which will redirect you to the new site which I put into production to keep the links on my business cards short: jjlab.net

Speaking of business cards I had some made to take with me to ElectroneX on Wednesday:

John's new business card for In The Lab With Jay Jay

I’m planning to show up in costume and hand out business cards, because I am a *genuine* nerd.

As part of the migration to the new domain I improved the content of the site a bit. There is now an about page with contact info and such and also a support the show page with some ideas about how people can support the show!

Channel News #3: Announcing Mini Projects | Learning Electronics In The Lab With Jay Jay

This post is part of my video blog and you can find more information about this video on this show’s homepage which is here.

You can support this channel on Patreon: patreon.com/JohnElliotV

Silly Job Title: Amp Alchemist

In this video I announce the new Mini Projects. These are a new feature of Silicon Chip magazine sponsored by Jaycar. Each month two or three Mini Projects get published in Silicon Chip, and we will be building those projects together on the channel each month!

If you’re interested in Silicon Chip magazine (it’s really good!) then I would certainly encourage you to subscribe.

In this video I misspoke and said this was the “May 2004” issue of the magazine, but of course it is the “May 2024” issue of the magazine! Unfortunately I missed that errata during editing and didn’t include a title clip correction.

I don’t understand what happened that caused that video corruption we saw earlier in the video. I suspect the workstation I was using to record the video had some other processing task which interfered with its recording speed or something? Hopefully this is not an ongoing problem. It’s not a problem I have seen before.

Update: ElectroneX has now been and gone and my write up about the day is over here: My day at ElectroneX with my friend. I got my photo with Dave Jones!

Thanks very much for watching! And please remember to hit like and subscribe!


Following is a product I use picked at random from my collection which may appear in my videos. Clicking through on this to find and click on the green affiliate links before purchasing from eBay or AliExpress is a great way to support the channel at no cost to you. Thanks!

Kaisi Soldering Tools With Desoldering PumpThis is an image of the product.notes

Let’s go shopping!

Fixing compile_commands.json for VS Code and Linux kernel sources

I have my Linux kernel sources setup like this:

-------------------
Fri Jun 14 00:35:24 [bash:5.2.15 jobs:0 error:0 time:2449]
jj5@virtuoso:/home/jj5/repo/git/git.kernel.org/torvalds-linux
$ git remote show origin
* remote origin
  Fetch URL: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
  Push  URL: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
  HEAD branch: master
  Remote branch:
    master tracked
  Local branch configured for 'git pull':
    master merges with remote master
  Local ref configured for 'git push':
    master pushes to master (local out of date)
-------------------

The scripts/clang-tools/gen_compile_commands.py runs just fine:

-------------------
Fri Jun 14 00:35:28 [bash:5.2.15 jobs:0 error:0 time:2453]
jj5@virtuoso:/home/jj5/repo/git/git.kernel.org/torvalds-linux
$ scripts/clang-tools/gen_compile_commands.py 
-------------------

But there is a problem with some unknown clang options, as you can see here:

Problems with clang commands in VS Code

So I wrote this collection of sed scripts to delete the problematic options:

-------------------
Fri Jun 14 00:11:28 [bash:5.2.15 jobs:0 error:0 time:1013]
jj5@virtuoso:/home/jj5/repo/git/git.kernel.org/torvalds-linux
$ cat jj5/fix-commands.sh 
#!/bin/bash

main() {

  set -euo pipefail;

  cd "$( dirname "$0" )";

  cd ..;

  local file="compile_commands.json";

  sed -i 's/-mpreferred-stack-boundary=3//g' "$file"
  sed -i 's/-mfunction-return=thunk-extern//g' "$file"
  sed -i 's/-mindirect-branch=thunk-extern//g' "$file"
  sed -i 's/-mindirect-branch-register//g' "$file"
  sed -i 's/-fno-allow-store-data-races//g' "$file"
  sed -i 's/-fconserve-stack//g' "$file"
  sed -i 's/-mrecord-mcount//g' "$file"

}

main "$@";
-------------------

Bug fixed! Thanks to my mates on IRC for helping me fix this one. This clangd extension for VS Code seems to work really well.

p.s. another possible solution is here.

Spiral

My friend sent me this:

a bunch of hardcoded print statement which spiral a counter

It pretty much forced me to write spiral.php and spiral.sh to generate this:

print('1')

print('7 8 9')
print('6 1 2')
print('5 4 3')

print('21 22 23 24 25')
print('20  7  8  9 10')
print('19  6  1  2 11')
print('18  5  4  3 12')
print('17 16 15 14 13')

print('43 44 45 46 47 48 49')
print('42 21 22 23 24 25 26')
print('41 20  7  8  9 10 27')
print('40 19  6  1  2 11 28')
print('39 18  5  4  3 12 29')
print('38 17 16 15 14 13 30')
print('37 36 35 34 33 32 31')

print('73 74 75 76 77 78 79 80 81')
print('72 43 44 45 46 47 48 49 50')
print('71 42 21 22 23 24 25 26 51')
print('70 41 20  7  8  9 10 27 52')
print('69 40 19  6  1  2 11 28 53')
print('68 39 18  5  4  3 12 29 54')
print('67 38 17 16 15 14 13 30 55')
print('66 37 36 35 34 33 32 31 56')
print('65 64 63 62 61 60 59 58 57')

print('111 112 113 114 115 116 117 118 119 120 121')
print('110  73  74  75  76  77  78  79  80  81  82')
print('109  72  43  44  45  46  47  48  49  50  83')
print('108  71  42  21  22  23  24  25  26  51  84')
print('107  70  41  20   7   8   9  10  27  52  85')
print('106  69  40  19   6   1   2  11  28  53  86')
print('105  68  39  18   5   4   3  12  29  54  87')
print('104  67  38  17  16  15  14  13  30  55  88')
print('103  66  37  36  35  34  33  32  31  56  89')
print('102  65  64  63  62  61  60  59  58  57  90')
print('101 100  99  98  97  96  95  94  93  92  91')

print('157 158 159 160 161 162 163 164 165 166 167 168 169')
print('156 111 112 113 114 115 116 117 118 119 120 121 122')
print('155 110  73  74  75  76  77  78  79  80  81  82 123')
print('154 109  72  43  44  45  46  47  48  49  50  83 124')
print('153 108  71  42  21  22  23  24  25  26  51  84 125')
print('152 107  70  41  20   7   8   9  10  27  52  85 126')
print('151 106  69  40  19   6   1   2  11  28  53  86 127')
print('150 105  68  39  18   5   4   3  12  29  54  87 128')
print('149 104  67  38  17  16  15  14  13  30  55  88 129')
print('148 103  66  37  36  35  34  33  32  31  56  89 130')
print('147 102  65  64  63  62  61  60  59  58  57  90 131')
print('146 101 100  99  98  97  96  95  94  93  92  91 132')
print('145 144 143 142 141 140 139 138 137 136 135 134 133')

print('211 212 213 214 215 216 217 218 219 220 221 222 223 224 225')
print('210 157 158 159 160 161 162 163 164 165 166 167 168 169 170')
print('209 156 111 112 113 114 115 116 117 118 119 120 121 122 171')
print('208 155 110  73  74  75  76  77  78  79  80  81  82 123 172')
print('207 154 109  72  43  44  45  46  47  48  49  50  83 124 173')
print('206 153 108  71  42  21  22  23  24  25  26  51  84 125 174')
print('205 152 107  70  41  20   7   8   9  10  27  52  85 126 175')
print('204 151 106  69  40  19   6   1   2  11  28  53  86 127 176')
print('203 150 105  68  39  18   5   4   3  12  29  54  87 128 177')
print('202 149 104  67  38  17  16  15  14  13  30  55  88 129 178')
print('201 148 103  66  37  36  35  34  33  32  31  56  89 130 179')
print('200 147 102  65  64  63  62  61  60  59  58  57  90 131 180')
print('199 146 101 100  99  98  97  96  95  94  93  92  91 132 181')
print('198 145 144 143 142 141 140 139 138 137 136 135 134 133 182')
print('197 196 195 194 193 192 191 190 189 188 187 186 185 184 183')