Dmitry Grinberg Profile Banner
Dmitry Grinberg Profile
Dmitry Grinberg

@dmitrygr

Followers
4,583
Following
82
Media
267
Statuses
2,543

Creating order out of chaos, or reverse (as needed).

Austin, TX
Joined October 2009
Don't wanna be here? Send us removal request.
Explore trending content on Musk Viewer
@dmitrygr
Dmitry Grinberg
1 month
Today I joined a very exclusive club. The club of people who have been dragged off stage at @defcon from the talk there were meant to participate in. Thanks to all who then came out to my outside talk. Glad I was able to answer all question. It was fun.
25
162
3K
@dmitrygr
Dmitry Grinberg
1 month
Yup. This volunteer firmware writer (me) made the fix from his laptop in the plane on the way to defcon. And was then dragged off stage during badge talk. Yup…
@defcon
DEF CON
1 month
#defcon32 Badge update: Thanks to everyone who has reached out to us about the DEF CON 32 badge. We are aware of the save issue and a fix is incoming. Later today we'll have a patch and some instructions for you at . We'll keep you posted in these spaces.
Tweet media one
24
96
519
20
123
2K
@dmitrygr
Dmitry Grinberg
2 years
Gas prices so high, gas stations are switching to scientific notation.
Tweet media one
7
175
1K
@dmitrygr
Dmitry Grinberg
2 years
V2 business card PCBs arrived. These run Linux :). Now with usb-c. Hope to bring those up later.
Tweet media one
25
63
704
@dmitrygr
Dmitry Grinberg
3 years
What if I told you that this runs Debian Linux?
Tweet media one
37
45
710
@dmitrygr
Dmitry Grinberg
6 months
@awr_hey You misspelled “that actually works, is supported on every architecture under the sun while also not getting in your way unnecessarily, and is the language that ALL SDKs ever ship in.”
5
4
663
@dmitrygr
Dmitry Grinberg
1 year
#rp2040 runs unmodified PalmOS 5.2.8 (showing off world’s only ARM-to-thumb1 JIT)
16
141
646
@dmitrygr
Dmitry Grinberg
2 years
Final PCBs are here. Note the complete lack of traces! :)
Tweet media one
Tweet media two
18
55
461
@dmitrygr
Dmitry Grinberg
7 months
Playing with the world’s tiniest camera! It is so small that the data sheet lists dimensions in µm. You can see it there in the baggie - the tiny black speck. Please forgive the poor color quality in the video. I was too lazy to implement proper de-bayering. 320x320x10bpp
Tweet media one
Tweet media two
16
54
448
@dmitrygr
Dmitry Grinberg
29 days
Found out that defcon banned me from the discord bot. Cold. So much for their public statement saying I am “welcome”. 🤣
Tweet media one
11
37
374
@dmitrygr
Dmitry Grinberg
1 month
15
17
319
@dmitrygr
Dmitry Grinberg
1 month
If you have more video angles of me being dragged off stage please send them to me :)
2
5
299
@dmitrygr
Dmitry Grinberg
1 month
@0xDISREL @defcon Joke is on them. They have no contract with me. None. They have no rights to my firmware. DMCA notice may be incoming. Still deciding.
6
1
290
@dmitrygr
Dmitry Grinberg
1 month
@0xDISREL @defcon I was told that “DT was pissed”. That is all.
4
0
248
@dmitrygr
Dmitry Grinberg
1 month
@cgallaty I wrote their firmware that they shipped.
2
1
212
@dmitrygr
Dmitry Grinberg
2 years
Latest project: My business card runs Linux, and so can yours.
Tweet media one
10
43
185
@dmitrygr
Dmitry Grinberg
6 months
@awr_hey No, no idea what you are talking about. Basically, every architecture out there that has a compiler of any sort, has a compiler for C. There are indeed some that are only programmable in assembly. Everything that has a compiler, has a C compiler
1
1
186
@dmitrygr
Dmitry Grinberg
1 year
Oh NBD. PalmOS 5.2.8 on an RP2040 with a $13 COTS screen.
Tweet media one
Tweet media two
13
31
184
@dmitrygr
Dmitry Grinberg
1 year
This device shipped with PalmOS 1.0. Thanks to rePalm-PalmCard it can run 5.2.8 now. ARM instead of 68k, IrDA, SD, audio.
Tweet media one
Tweet media two
Tweet media three
Tweet media four
6
23
169
@dmitrygr
Dmitry Grinberg
3 months
@elaifresh @litindustrial Uh huh… I personally know a person at Google who got ranted at in a team meeting for taking a vacation to Hawaii. Apparently white people shouldn’t go there because that’s colonialism. After that event, my weekends were always “fine” and interests were always “sleeping”.
8
2
170
@dmitrygr
Dmitry Grinberg
6 months
@briandstone__ Posts like yours make my head hurt. 45KWh/9days averages out to a 312W draw constantly. Running a few cameras and recording to a USB stick should not use 300 fucking watts! It should fit into 3W at most.
15
0
160
@dmitrygr
Dmitry Grinberg
2 years
I'll explain this one last time:
Tweet media one
4
26
139
@dmitrygr
Dmitry Grinberg
10 months
rePalm progress: MP3 playback using an unmodified copy of PocketTunes. This is running real-time via the ARM-to-Thumb JIT
7
19
131
@dmitrygr
Dmitry Grinberg
7 months
The SDIO card itself runs PalmOS5. Device just acts as screen and touch. rePalm-SDIO powered by #rp2040
5
15
126
@dmitrygr
Dmitry Grinberg
1 month
2
15
125
@dmitrygr
Dmitry Grinberg
30 days
@c7five @defcon Hi. I’m the “someone”. This project was 6 years in the making. It is called “rePalm” and much docs on it exist on
4
11
123
@dmitrygr
Dmitry Grinberg
3 years
Latest project. 4xAAA battery as power source. One year of battery life and a new algorithmically-generated image daily.
Tweet media one
8
8
104
@dmitrygr
Dmitry Grinberg
30 days
About this mess: Entropic has repeatedly offered to published their entire comms history with @defcon . I am also happy to do so. Defcon has not offered. Conclude what you wish from that.
4
12
106
@dmitrygr
Dmitry Grinberg
3 years
@emilyldolson @googledrive I always did say that Franz Kafka never died. He is semi-retired working in google’s PM org, occasionally consulting for the UX teams as well.
0
7
101
@dmitrygr
Dmitry Grinberg
1 year
A while ago I made one of these as a present for my mom. Now I finally ported my code from ARM to xtensa to allow me to run it on inkplate10. Generates a new random image every 8h. Battery lasts a year. Inspired by the “shanshui” project, but not using its code (it was too slow)
Tweet media one
Tweet media two
Tweet media three
Tweet media four
3
6
91
@dmitrygr
Dmitry Grinberg
24 days
@wren6991 I have most of 32bit softfloat implemented for a 4bit cpu. LMK if you want a copy.
2
2
79
@dmitrygr
Dmitry Grinberg
3 months
@elaifresh @litindustrial Are you kidding? Just so that person could “be offended” at you too? Everybody stayed as silent as the grave.
2
0
71
@dmitrygr
Dmitry Grinberg
1 month
@MightyMogomra Here is the video of it.
7
5
68
@dmitrygr
Dmitry Grinberg
1 month
@medus4_cdc @J0hnnyXm4s @defcon My badge was not taken away. I still have my badge team badge. 🤣
1
0
66
@dmitrygr
Dmitry Grinberg
1 year
IrDA works on rePalm on #rp2040
2
8
63
@dmitrygr
Dmitry Grinberg
3 years
SSD1675A only support 3 colors? Well, now it supports 6!
Tweet media one
5
3
59
@dmitrygr
Dmitry Grinberg
1 year
Using RP2040 DMA+PIO to drive a poorly-designed but cheap display from waveshare:
6
6
58
@dmitrygr
Dmitry Grinberg
2 years
Built, with a debug header too :)
Tweet media one
4
1
54
@dmitrygr
Dmitry Grinberg
1 year
Pro tip to future “secure boot” designers. TOCTOU is not just a funny way to misspell “toucan”🦜 but also likely the sword you’ll die on if you try to get too clever. This message brought to you by a now-unsecured Cortex-M4 based mcu from a well known company.
1
12
55
@dmitrygr
Dmitry Grinberg
28 days
Hey, @defcon , maybe calm down with the illegal behavior a little?
@entropiceng
Entropic Engineering
28 days
Bad news: Now they flagrantly violated our NDA and posted this without asking. Classy. Good news: it clearly shows that we delivered the final product. Better news: We were always planning to open source, just, ya know, consensually.
Tweet media one
Tweet media two
6
18
91
4
7
59
@dmitrygr
Dmitry Grinberg
2 years
Ignore the camera artifact from the oled. :)
5
2
53
@dmitrygr
Dmitry Grinberg
3 years
7greys+yellow big 4greys+red small 100% working 🙂
Tweet media one
4
2
49
@dmitrygr
Dmitry Grinberg
1 month
@TC_Johnson @medus4_cdc @J0hnnyXm4s @defcon I have no idea!! Nobody told me anything!
1
1
50
@dmitrygr
Dmitry Grinberg
1 month
@darkswordsmantv @0xDISREL @defcon For adding an Easter egg crediting the hardware company that designed the badge haddware and then had their name removed from plastics and uninvited to the badge talk. Defcon saw Easter egg and told me my attendance in the talk is also cancelled.
5
4
49
@dmitrygr
Dmitry Grinberg
1 month
@JayFoxtrot Longest comment there is true. Ther is also a hacker news thread.
0
2
47
@dmitrygr
Dmitry Grinberg
2 years
Projects can continue!
Tweet media one
2
0
46
@dmitrygr
Dmitry Grinberg
1 month
@TC_Johnson @J0hnnyXm4s @medus4_cdc @defcon I am happy to answer any questions from at least what I know, stand for, did, and plan to do
2
4
45
@dmitrygr
Dmitry Grinberg
1 year
The “short” summary of how this works:
2
9
44
@dmitrygr
Dmitry Grinberg
1 year
I don’t usually do product endorsements, but feel free to consider this my official professional recommendation to use #rp2040 over almost any other microcontroller in almost all cases.
3
4
43
@dmitrygr
Dmitry Grinberg
7 months
Here is how it is connected (2x2 bga 0.4mm spacing). 10x magnification. The camera itself is hidden in one of the holes on this protoboard, where the four wires meet.
Tweet media one
1
1
42
@dmitrygr
Dmitry Grinberg
10 months
@Wookiee__ There is only one answer. January 1, 1970.
2
0
41
@dmitrygr
Dmitry Grinberg
1 month
@max_deboosted @cchayer @defcon I didn’t want to resist. The security guards and I have no beef and I don’t want to hurt them or have them hurt me. They are just doing a job. Clearly they can overpower me. Why test that ?
1
0
38
@dmitrygr
Dmitry Grinberg
1 year
New rePalm-PalmCard boards are here. Alarm led now works.
Tweet media one
Tweet media two
1
7
36
@dmitrygr
Dmitry Grinberg
1 month
@Cyberipman @defcon There are photos of it all over Twitter. It was a rainbow colored screen with the logo of the company that did all the hardware for the badge and was then uninvited from the badge talk and had their name removed from the plastics.
1
0
36
@dmitrygr
Dmitry Grinberg
1 year
@legitleavitt @the_transit_guy Near 100%. Usually parking is full by 1030am. Source: work at Apple.
3
0
34
@dmitrygr
Dmitry Grinberg
9 months
@d_feldman False. Latency depends on connection establishment parameters and can be as low as 7.5ms. Source: a full-blown case of PTSD from working on Bluetooth for years.
4
0
35
@dmitrygr
Dmitry Grinberg
1 month
@medus4_cdc @glumDumpst3rPro @defcon DEFCON never had any contract with me. I worked for free under the understanding that I get to be part of the badge talk. Entropic did the hardware. Obviously that needs to be paid for. I didn’t get to talk, and I never granted defcon any license to my binary or code. DMCA :)
1
4
35
@dmitrygr
Dmitry Grinberg
21 days
@wren6991 Signal integrity must be 🔥
2
0
34
@dmitrygr
Dmitry Grinberg
3 years
@matseng Yes. Except: 1. Designed for easy reproduceability (I’ll make a kit), 2. Usably fast. 3. Not ARM anymore. 4. Entirely new code.
6
0
34
@dmitrygr
Dmitry Grinberg
2 years
And after some code refactoring and adding support for quad-channel RAM, it works!
Tweet media one
2
0
32
@dmitrygr
Dmitry Grinberg
25 days
Happy 12th birthday to Trixie!
Tweet media one
4
2
33
@dmitrygr
Dmitry Grinberg
7 months
@cnlohr So what? It produces wrong results with high performance!!
1
0
31
@dmitrygr
Dmitry Grinberg
1 year
The update is read from SPI flash, hashed, and the signature is checked. If it all matches, the update is read again over SPI, this time for purposes of flashing to internal flash. ☠️
3
4
31
@dmitrygr
Dmitry Grinberg
1 month
@202accepted They never shut it down or even came up to me. They just menacingly watched from afar as I stood on the public city sidewalk and signed badges.
2
1
32
@dmitrygr
Dmitry Grinberg
2 years
This device never had a Pokédex app…or greyscale…
1
4
32
@dmitrygr
Dmitry Grinberg
7 months
@ashleevance Has anyone considered parenting? Somehow my parents managed to teach me that drugs are NEVER a good idea. One could argue that this is evolutionary pressure FOR good judgement. A rare one nowadays.
1
0
32
@dmitrygr
Dmitry Grinberg
1 month
@medus4_cdc @glumDumpst3rPro @defcon I stand by what I did. You cannot remove credit from people and in-invite them (they were supposed to be at badge talk too)
2
3
31
@dmitrygr
Dmitry Grinberg
1 year
Today's cursed project: Using 8MB of PSRAM natively on #RaspberryPi 's #RP2040 : It is memory mapped and accessible to all code! cool, eh?
3
8
30
@dmitrygr
Dmitry Grinberg
2 years
Pokémon Crystal :)
1
4
28
@dmitrygr
Dmitry Grinberg
1 year
@yannmasoch @twostraws Display refresh rate is not the same thing as camera-to-display latency. Even a 1000000Hz display would make you dizzy if it took 100ms to reflect the state of the outside world
1
0
28
@dmitrygr
Dmitry Grinberg
1 year
@averyhatestwt @legitleavitt @the_transit_guy Apple MAKES you come to the office. THAT induces demand, not the existence of a garage. Trust me. Nobody is there just to experience the amazing garage!
1
0
27
@dmitrygr
Dmitry Grinberg
3 years
This is #zbs243 aka #sem9110 - a custom Samsung chip with NO documentation of any sort used by SoluM ESL price tags. Shown here fully reverse engineered, with custom firmware (supporting 6 colors) and my wireless protocol! Write-up and details soon!
Tweet media one
2
3
29
@dmitrygr
Dmitry Grinberg
7 months
@shuttle_dev First of all, system programming is in C and not C++ (excepting iokit). Second of all, C has outlived plenty of “X will replace C”. It’ll outlive this one too. Most people’s masochism itch is scratched enough by bad datasheets - they don’t need a naggy compiler too.
4
2
28
@dmitrygr
Dmitry Grinberg
3 years
Segment eInk driven by an entirely undocumented (and now reverse-engineered) samsung #sem9110
Tweet media one
1
1
27
@dmitrygr
Dmitry Grinberg
3 years
The write up about using e-Ink price tags as picture frames is complete!
1
4
25
@dmitrygr
Dmitry Grinberg
10 months
@mattjay Why would such photos need to exist? When I was getting surgery done on my nose, they attempted to take some photos. I said no. They said they always do. I said “that is a fascinating story, and you should consider an adaptation for the stage.”
0
1
26
@dmitrygr
Dmitry Grinberg
2 years
@jmtame You don’t stick this into a computer. You stick the end into a USB c cable. It then acts like a serial port and you can log into Linux running on it
1
2
25
@dmitrygr
Dmitry Grinberg
1 year
This takes two minutes of realtime to generate and draw on the #rp2040 . Timelapsed to save you the time. It is a different image each time - algorithmically generated.
0
4
25
@dmitrygr
Dmitry Grinberg
20 days
The most common question I get that is not directly related to one of my projects is why my site does not have an RSS feed. Well, now it does.
1
0
25
@dmitrygr
Dmitry Grinberg
1 month
@agent_duckman @medus4_cdc @defcon They never approved anything, never asked to, I don’t believe they ever tested anything. The last change I made for them was broken. I made it at a time when I couldn’t do testing and I asked them to. That change was responsible for saves not working until I pushed a fix today.
2
0
25
@dmitrygr
Dmitry Grinberg
2 years
No optimizations yet, but we have first boot!
Tweet media one
3
1
25
@dmitrygr
Dmitry Grinberg
2 years
And this is ULTRIX 4.5 booting on my actual business card, as promised. Article update coming soon.
Tweet media one
3
1
21
@dmitrygr
Dmitry Grinberg
1 month
Hey everyone, the new dumb AI hardware eWaste just dropped.
introducing friend. not imaginary. order now at
4K
1K
13K
2
1
24
@dmitrygr
Dmitry Grinberg
8 months
@ENiKS_CZ @SergioRocks “Limited distractions” Tell me you have never stepped foot in an office without saying those words 🤣🤣🤣
0
0
24
@dmitrygr
Dmitry Grinberg
1 year
I don’t want to live on this planet anymore. While some of us work hard to give you faster OSs and libraries, optimizing every corner of your kernel, others of us do…this…
@wesbos
Wes Bos
1 year
Node 20 allows you to compile your app into a single executable along with the entire Node.js core so you can run your apps on systems where node isn't installed, or your don't trust the system version.
Tweet media one
170
796
6K
2
7
24
@dmitrygr
Dmitry Grinberg
1 year
An early build of a fully flashable PalmOS 5.2.8 upgrade for the dell AximX3. rePalm supports old devices too :)
3
1
24
@dmitrygr
Dmitry Grinberg
11 months
@dieworkwear If only there was some way a majority of people could work from some other location. If only a way existed to do video calls and remotely access machines. We could save hours of commutes and a lot of CO2. We could call it “work from home”. What a world that would be…
1
1
24
@dmitrygr
Dmitry Grinberg
7 months
@genomerambler For those who saw this, thought it was cool, wanted to read more, and were annoyed by the lack of a link or a name:
2
0
22
@dmitrygr
Dmitry Grinberg
2 years
The sixth time you write a Flash Translation Layer, it really isn’t very hard :)
Tweet media one
1
3
22
@dmitrygr
Dmitry Grinberg
21 days
@ravibrewster @cali_peachz @farzyness America had roads before 1913, it did not have income tax.
0
0
23
@dmitrygr
Dmitry Grinberg
7 months
Dimensions on this thing!
Tweet media one
1
1
23
@dmitrygr
Dmitry Grinberg
1 year
First ever source code release for the rePalm project:
0
7
22
@dmitrygr
Dmitry Grinberg
10 months
Built a device using the $0.08 PY32F002A chip. Pretty awesome - a 48MHz Cortex-M0+ for under ten cents. 32K flash, 4K ram. All the peripherals of an STM32F1
1
0
22
@dmitrygr
Dmitry Grinberg
28 days
I am under no NDAs. Here is one of the early emails. Project is clearly described as risky and very time-constrained, with many possible things that can go wrong and cost more money. (I am on this email chain, so no NDAs are broken here) <defcon-email-1.png>
Tweet media one
3
0
23
@dmitrygr
Dmitry Grinberg
3 years
My eInk price tags article has been updated with more devices described and supported. More coming soon.
1
3
21
@dmitrygr
Dmitry Grinberg
2 years
Line of code of the day: ((void (*)(void))(((void*(*)(void*,uint16_t))(uintptr_t)*(uint16_t*)0x18)((void*)(uintptr_t)*(uint16_t*)0x14, 'C' * 256 + 'F')))(); This will flush the icache on the RP2040 chip ;)
2
1
21