Hackaday Prize Entry: ESP32 Monster And Getting Started Quickly

Prolific hacker [kodera2t] is working on his own “ESP32 monster board” dev board for the still-newish ESP32 WiFi module. His board has everything: Ethernet, OLED, LiPo, and even CAN-bus. But all that peripheral connectivity is worth nothing if you can’t program the microcontroller to use it.

The Arduino environment for the ESP32 is coming along quite nicely, but it’s not yet fully featured enough to run all of [kodera2t]’s hardware. To take advantage of all that, he needs to use Espressif’s SDK — called the “IoT Development Framework” or IDF for short. In his latest project log, [kodera2t] goes through everything necessary to get the IDF up and compiling on OSX. (It’s strangely similar to the Linux procedure.) Read through the official instructions here, if you want more, but we think [kodera2t] hits all the high points.

While we’re tooting [kodera2t]’s horn, check out his old project — an Arduino shoehorned into an SD card — or watch his alter-ego [Toshiro Kodera] give a serious talk about his day job, engineering radio-frequency meta-materials.

19 thoughts on “Hackaday Prize Entry: ESP32 Monster And Getting Started Quickly

        1. One important role of a prototype is to validate layout performance. Your prototype should implement best practices for the circuitry you are evaluating, otherwise you’re just kicking design bugs down the road. I don’t want to put down [kodera2t]’s effort, but here are some best practices I would like to have seen:

          * Traces short and to the point. It’s not clear which autorouter design rules were in play, but the routing is unneccessarily circuitous (ha ha) and doesn’t take proper advantage of the multiple layers for trace optimization. This is particularly critical for the ethernet signals, which are differential pairs and should be treated as such.

          * Short, wide, star or bus topology power traces. The power rails should be very low impedance, particularly around RF signals. Ground pour would be preferable for this 2-layer board, although it may need restriction near the RF antenna.

          * Clock traces should be as short as possible. Sorry, @le yawn, that’s not the case here. The placement of the oscillator out on the corner of the board, with the signal traces apparently winding around and through the ethernet signals, is a disturbing spectacle.

      1. Even if it’s an auto-routed experiment (even a double layer board may be overkill when components are placed better) why place the oscillator all the way in the corner? is it for the display?

    1. Yeah, at least learn how to set minimum trace-width for certain nets…
      But hey, I guess it will work since most of the technology used is very forgiving and there is not a lot of power involved.
      Looks terrible tho lol.

    2. I’ve seen something worse than this back in the 2000s: the original Ybox. It was a Propeller-based set top box that could display anything from the internet, and it had a lot of design flaws. Apart from the shitty autorouting, it had a $50 part (coincidentally an Ethernet port) that wasn’t properly grounded and could break quite easily…

      http://www.deepdarc.com/2007/10/20/building-a-better-ybox/ (from the second generation Ybox’s designer, has some details about the issues)

  1. @ the autorouter Nazis: check yourselves before you wreck yourselves. Dr. Kodera knows more about the high-frequency properties of trace geometry than you do. Watch the linked video (last link in the article) before assuming he’s a noob.

    My guess is that there’s a part where the design matters (Ethernet) and a part where it doesn’t (probably most of the rest of the circuit). But this is a man who’s other work borders on the aesthetically beautiful. Go check out his .IO projects.

    Of all the hackers to be complaining about…. sheesh!

    1. This appeal to authority doesn’t refute any of the above criticism. The design speaks for itself. If [kodera2t] is knowledgeable enough to recognize the issues with this design, then he doesn’t require a defense.

  2. we all seem to judge about the board layout but maybe he made the PCB in 20min. We don’t know. Maybe he does not care about hardware and just want to write software so he autoroute to get it done and start new project.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.