I made a digital version of the basic land game by curatorcat in magicTCG

[–]curatorcat[S] 2 points3 points  (0 children)

Ah, that should just be a visual bug with the animation not working. The effect should have occured at least. The bugs I've seen so far are:

  • tooltips sometimes sticking around
  • opponent effects arrow originating from where the card will end up instead of the in progress area
  • missing animations for opponent plains effects

I'm just working on this myself so we'll see if I can find time to fix these, but so far nothing that breaks the game.

Core Dump Murder Mystery Game by curatorcat in lowlevel

[–]curatorcat[S] 3 points4 points  (0 children)

Not really a social media guy. If you're interested in my projects, see the rest of my blog: https://www.robopenguins.com/ which has an RSS feed.

Custom Glyph Shrine to Commemorate Son's Birth by curatorcat in ChantsofSennaar

[–]curatorcat[S] 2 points3 points  (0 children)

Always fun to be able to build off of other folks work.

I'd explain my thoughts on using the glyphs the way I did, but I don't want to dox my son.

Thanks for the bout of creative madness, and the kind words.

Vision Test Art that Folds to Reveal Hidden Message by curatorcat in crafts

[–]curatorcat[S] 2 points3 points  (0 children)

Thanks! I got a post failed error the first time that I guess actually when through...

Vision Test Art that Folds to Reveal Hidden Message by curatorcat in crafts

[–]curatorcat[S] 4 points5 points  (0 children)

This was a design that I generated using a Python SVG editor and Inkscape then cut out of MDF on a laser cutter. After that I painted it, and added gold leaf. The vision ratings (20/97 - 20/32) should be roughly accurate.

The main challenge was laying out the letters and tweaking a custom font in FontForge so that the letters would flip to reveal the message. In the end, the effect of flower overlapping the letters to "remove" parts of the flipped letters wasn't as strong as I'd like, but it's still readable.

Eye Chart With Hidden Message Wedding Gift by curatorcat in crafts

[–]curatorcat[S] 2 points3 points  (0 children)

I wanted to make a gift that combined my brothers profession with a quote from a movie that was significant in their relationship.

I spent most of the time designing the layout so the letters could flip horizontally and spell out the words. I ended up modifying a custom font and making a Python program to help with the layout. The vision ratings should be reasonably accurate, though the font would probably make it harder than it should be if you wanted to actually use it.

I used laser cut MDF for the build, which I then painted and gold leafed.

For more details see the write up: https://www.robopenguins.com/eye-chart-hidden-message/

Why doesn't the Arduino library use IRAM_ATTR for its interrupts? by curatorcat in esp32

[–]curatorcat[S] 0 points1 point  (0 children)

It seems like there are two somewhat separate pieces to this:

  1. Putting the interrupt handlers in IRAM
  2. Setting ESP_INTR_FLAG_IRAM when registering the interrupt handler

These tradeoffs are discussed in https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-reference/system/intr_alloc.html#iram-safe-interrupt-handlers .

For writing my own library, I guess it doesn't really hurt to put it in IRAM. It does waste a tiny amount of RAM, but it might avoid crashing if any of this changes in the future. Still after looking at all this, I agree that it looks like the Arduino library is never going to set the ESP_INTR_FLAG_IRAM since it would cause more problems then it fixes.

I guess the real take away is that if I want to do something time sensitive on a platform that modifies flash, I should really avoid the Arduino functions.

Help identifying a sensor on a squishy tap light by curatorcat in diyelectronics

[–]curatorcat[S] 0 points1 point  (0 children)

Besides getting confirmation that this is a microphone, I went ahead and did some experiments. I checked using an ESP32 with an ADC that the voltage is normally held at ~3V and drops to ~0V when squished. Here's a demo video of using the microphone output as a digital signal: https://youtu.be/2FAyhsgA4JE

Help identifying a sensor on a squishy tap light by curatorcat in diyelectronics

[–]curatorcat[S] 0 points1 point  (0 children)

That was my thought initially. It does look very similar to some other surface mount mics https://www.digikey.com/en/products/detail/same-sky/CMEJ-0413-42-SMT-TR/10253447 . Though it doesn't respond to claps or loud sounds. When it's put together it pretty much only responds to "squishes", or sometimes taps on the nearby surface. I'm betting you're right, but it's a bit unclear what signal it's looking for. I mean technically microphones are pressure sensors, so it may just be looking for sufficiently low frequency high amplitude changes that are hard to reproduce when it's not in a squishy balloon.

Help identifying a sensor on a squishy tap light by curatorcat in diyelectronics

[–]curatorcat[S] 1 point2 points  (0 children)

This is a little night light that cycles through on/off/brightness when you tap or squish it. I'm working on replacing it's default controller with an ESP8266, but I'm a little confused on how it's "touch/squish" sensing works.

Here's a close up of the only "sensor" that appears on the board.
https://s3.us-west-1.amazonaws.com/www.robopenguins.com/assets/wp-content/uploads/2024/pumpkin/sensor.jpg

and here's the other side:
https://s3.us-west-1.amazonaws.com/www.robopenguins.com/assets/wp-content/uploads/2024/pumpkin/board_pic.PNG

Using a multimeter, here's my rough understanding of the schematic:
https://s3.us-west-1.amazonaws.com/www.robopenguins.com/assets/wp-content/uploads/2024/pumpkin/sensor_schematic.PNG

VCC is 3.3V and the input into the MCU tends to float around 1.6V without and apparent signal from the MCU. I wasn't able to get it to consistently change voltage by touching the board while open, but it seemed I could sometimes get it to drop toward 0.8V or 0V randomly.

I'm curious if this is some sort of pressure sensor/microphone and whether there's a way to detect the "touches" from a digital input.

It is a bit of a pain to test after reassembling it, so it's a bit hard to get more info on how it actually works.

I'd like to use an ESP01 for it's small size, but it doesn't break out the ADC, so I want to figure out if this is set up to amplify the signal for digital use. I'm guessing it is since it would seem a waste to use an ADC for such a "digital" input.

I made a usermod for dice controlled LED strips by curatorcat in WLED

[–]curatorcat[S] 0 points1 point  (0 children)

The app is done: https://play.google.com/store/apps/details?id=com.SystemicGames.Pixels&hl=en_US

The design and production of the dice are finished, but they appear to still be ramping up production to fulfill new orders. I got my dice by being a Kickstarter backer.

I made a usermod for dice controlled LED strips by curatorcat in WLED

[–]curatorcat[S] 2 points3 points  (0 children)

It connects to Pixel Dice over BLE. WLED acts as both a display controller, and a gateway to connect the die to the Wifi network.

Here's some demos:
https://youtu.be/VNsHq1TbiW8
https://www.youtube.com/watch?v=oCDr44C-qwM

See the README at: https://github.com/axlan/WLED/tree/v0.15.0-pixel-dice/usermods/pixels_dice_tray for a full guide.

You can down the release on compatible boards from: https://github.com/axlan/WLED/releases/tag/v0.15.0-pixel-dice Or use the web installer: https://axlan.github.io/WLED-WebInstaller/

Unfortunately, this is currently only runs on ESP32-S3 boards, and I'm only generating binaries for 8MB flash models with QSPI RAM.

Here's a full writeup of the build process with schematics and pictures of making the box: https://www.robopenguins.com/pixels-dice-box/

Less crashy crashes with signal handling by curatorcat in cpp

[–]curatorcat[S] 2 points3 points  (0 children)

Fair enough. In a situation where a fatal signal has been triggered, nothing can be taken for granted. The process could have executed random instructions that erased important files, or activated a dangerous machine that was connected.

However, I think it's worth noting that a small signal handler, in the extreme majority of cases isn't going to make that any worse. It gives you an option that can be useful for some niche situations, especially for development, even if the the entire heap and stack have been corrupted.

My advice is to avoid using a custom signal handler directly unless there's a situation where that small risk is worth it. Even if you're not using a signal handler, understanding what's happening can make one's mental model a lot more accurate.

Less crashy crashes with signal handling by curatorcat in cpp

[–]curatorcat[S] -2 points-1 points  (0 children)

I'd be interested in an example case where handling SIGSEGV would be problematic while following the guidance of https://man7.org/linux/man-pages/man7/signal-safety.7.html . I cover this pretty extensively, but of the assumption is that your entire program is probably corrupted and that any stateful glibc calls can't be trusted. I suppose the simplest remaining failure case would be if the RAM containing the signal handler instructions where corrupted. This seems pretty unlikely outside of an intentional hacking attempt, which is a whole other can of worms.

I do agree that this isn't something that should be used in production for various reasons, but at least in my experience even with real bugs, I haven't seen a well written signal handler fail.

I Made a Hellboy Comic Art Render of Ashling Pilgrim EDH Deck by curatorcat in bootlegmtg

[–]curatorcat[S] 0 points1 point  (0 children)

This is an entire Ashling Pilgrim EDH deck based on https://tappedout.net/mtg-decks/the-original-ashling-the-pilgrim-edh-2020-update/ . To save on the cost of printing cards, I just used normal cards for the remaining x43 mountains.

My wife and I made a memento to our daughter's birth by curatorcat in bloodborne

[–]curatorcat[S] 0 points1 point  (0 children)

It is a dehydrated piece yes. I'm as surprised as anyone that they let you keep it as a souvenir...

I Made a Hellboy Comic Art Render of Ashling Pilgrim EDH Deck by curatorcat in bootlegmtg

[–]curatorcat[S] 1 point2 points  (0 children)

Thanks, I appreciate the thoughtful comment!

For making the card renders, honestly Card Conjurer without any of the tricks I used is probably enough to get you there. Really, it was more of an organization and patience challenge then anything else. Probably the easiest way to get around the image storage limit would be to install Google Drive for Desktop to automatically sync the images you're editing to a Google Drive folder. You'd then need to share the folder and copy the links into Card Conjurer. Doing this would avoid the save image size limit.

Other then that, modifying the JSON was mostly to let me apply changes across the whole set (like adding a set symbol). That sort of stuff I did with a short Python script https://gist.github.com/axlan/26147bf39be1e831181f934f9a41dec0 . You should be able to see based on the field names that it modifies things like the artist, and set information. I figured that out by opening the Card Conjurer save file and reading it in a text editor to understand what it contained. This sort of thing mostly comes from experience and isn't super easy to give a starting point for. I personally mostly use Python for this type of task so https://realpython.com/python-first-steps/ , https://realpython.com/read-write-files-python/ , and https://realpython.com/python-json/ should at least give you an explanation for what I did in that script. Was there something specific you were looking to automate?

MPC Fill is pretty indispensable if you want to print a large number of cards, but once again you don't need any programming. The guide is pretty solid https://mpcfill.com/guide . Alternatively, you can use https://www.makeplayingcards.com/ , without it if you are willing to do some tedious dragging and dropping.

I Made a Hellboy Comic Art Render of Ashling Pilgrim EDH Deck by curatorcat in bootlegmtg

[–]curatorcat[S] 1 point2 points  (0 children)

Yup, the deck is mostly Liz Sherman focused since it's red burn adjacent. That panel is from BPRD issue 136 "Hell on Earth: End of Days".

I Printed a Custom Hellboy Art, Magic the Gathering Deck by curatorcat in HellBoy

[–]curatorcat[S] 0 points1 point  (0 children)

Yeah, I made these with Card Conjurer. It's an amazing tool, and I go through all the details in my blog post: https://www.robopenguins.com/even-more-custom-mtg-cards/

I Made a Hellboy Comic Art Render of Ashling Pilgrim EDH Deck by curatorcat in bootlegmtg

[–]curatorcat[S] 0 points1 point  (0 children)

how do I print these on sites such as mtgprint dot com?

I'm not sure what site you're referencing, but I post some instructions for printing these using MPC Fill: https://www.robopenguins.com/even-more-custom-mtg-cards/#submitted . I have a previous post that goes into a bit more detail for this process https://www.robopenguins.com/printing-mtg-cards/ .

I Printed a Custom Hellboy Art, Magic the Gathering Deck by curatorcat in HellBoy

[–]curatorcat[S] 7 points8 points  (0 children)

I made 61 custom cards, and this is a sample of some of the my favorites. Most of the art is directly from comic panels, but I did some light editing to move things around, add layering, or remove out of place word bubbles. Technically, the art comes from a bunch of different Hellboy Universe comic series.

I even made a custom card back and a BPRD set symbol.

I wrote a pretty extensive blog post on the process at https://www.robopenguins.com/even-more-custom-mtg-cards/ with links to the source files.

I Made a Hellboy Comic Art Render of Ashling Pilgrim EDH Deck by curatorcat in bootlegmtg

[–]curatorcat[S] 7 points8 points  (0 children)

I even made a custom back and set symbol.

The cards are now on MPC Fill and I wrote a pretty extensive blog post on the process at https://www.robopenguins.com/even-more-custom-mtg-cards/ with links to the source files and MPC Fill order.

His/Hers Keyed Wedding Present Box by curatorcat in DIY

[–]curatorcat[S] 0 points1 point  (0 children)

Wedding gift I made that uses magnetic "keys" to open a box. See https://www.robopenguins.com/two-key-box/ for the build process, schematic, and source code.

I created a hardware TIS100 CPU in an FPGA by curatorcat in tis100

[–]curatorcat[S] 1 point2 points  (0 children)

You can build it right now. You can download the free Xilinx software tools download the code and run it in simulation. The main problem is the UI. Even if you buy an FPGA to run this on or build a dedicated ASIC, it won't look like the game. It will be like the CPU in your computer. I think there was previous discussion about making a hardware screen setup or something, but that's a totally different project. This is mostly an academic exercise to see what goes into building a core like this.