Simple projects with the Yellow Dev board

A few months back I wrote an article on the “Yellow Development Board” from Ai-Thinker.  At the time it was, I admit, an attempt to add a little balance to the blog after my lambasting of their “Black Board T5”.  However, after a few months of using these little beasties, I suddenly realized that it had become my go-to board for new, ESP8266-based projects.   My experience with electronics dates back way beyond transistors, let alone integrated circuits or microcontrollers, so one of the tools I still have in my kit is a wire-wrap pen, which turned out to be quite handy with the “Yellow Development Board” (and that is way too much of a mouthful, so from here onwards I’ll refer to it simply as “Yellow”).

Wire-wrapping is just what it sounds like… it was a technique used extensively in the early days of computer manufacturing to provide interconnects between components.  Typically, individual chips would be plugged into ic-sockets with long, chunky pins with a square profile.  Wire-wrap wire is single core, so the “pen” enabled you to strip the insulation off the end of your wire and then wrap it tightly around the pin (the square profile ensuring that the electrical connection was good, as the corners bit into the wire).

I mention this not because of a sudden burst of nostalgia, but because the header pins on the Yellow board reminded me of wire-wrap as soon as I saw them and one of the really good things about wire wrap (and there were plenty of bad things, as anyone who had to troubleshoot a wire-wrapped system will tell you) is that it was, and still is, one of the fastest ways to prototype a new circuit.  You don’t have to wait for a soldering iron to heat up and you don’t lose half of your connections if you accidentally knock your breadboard onto the floor.  Yellow dev board with i2c RTC attachedSo wire-wrapping seemed like a natural step for quickly connecting up the Yellow board to some peripherals when building a project.  The header pins are not ideal (they’re a little too skinny and definitely not long enough), but they’re more than good enough for prototyping.  It was only a few minutes work to connect up a DS3231 i2c RTC board (+ve, gnd, clock and data) and only another couple of minutes to add yet another board (this time a custom i2c slave built from a PIC16F1825) for more fun and experimentation (I should add that the RTC was something which I already knew was working and was just a test connection to ensure that i2c still worked with the red LEDs on the Yellow board with i2c RTC and custom PIC boardYellow board’s i2c lines still in place; the PIC board was/is the intended target for that particular project).

The point here is that it proved to be incredibly easy to integrate an ESP8266 into a project using the Yellow board.  It even had the added advantages of having LEDs on virtually all of the available pins, so there was some visual debug capability thrown in for free.

Shortly after this initial foray into i2c, I came across Cicero’s Ethernet-for-the-ESP8266 project and wrote up an entry here on the process of connecting the Yellow board to an ENC28J60 ethernet module to enable hard-wired ethernet to the ESP (on a side note, keep an eye open for an update from Cicero for a Linux-specific version of this project, coming soon).

So, over the months the awkwardly named “Yellow Development Board” has earned a place in my ESP8266 arsenal as a versatile and well-equipped prototyping tool and in the next post, I’ll look in a little more detail at a doorbell/dash type button project and how it interfaces with MQTT.

[Where to get these boards …I don’t generally give links to specific merchants, but the “Yellow” doesn’t seem to be quite so universally available as it once was.  When I was searching for a new supplier earlier I came across this eBay store selling them at a very good price.  The store has a feedback rating of 99.8% on over 20,000 sales, so they must be doing something right, but I should emphasize that, although I have ordered from them today, I haven’t ever used them before, so this is a “find”, but in no way an endorsement.]

 

8 thoughts on “Simple projects with the Yellow Dev board

  1. […] In the previous post, I outlined how the “Yellow Development Board” from AI-Thinker had become my new, go-to ESP8266 board for projects, partly because the headers make it easy for interconnects and partly because it’s got lots of LEDs already on board.  Not to mention that it’s reasonably priced and comes equipped with a battery box and a low quiescent current voltage regulator (important when you’re running from batteries). […]

    Like

    • Hi,

      I have a few AI-Thinker ESP8266 “Yellow Dev Boards” that came with attached AA battery packs, and I’m trying to program them with the Arduino IDE running on a Win 7 machine, using a (known good), FTDI 232 module.

      When I apply power to the board using the battery pack, it appears to boot up normally, and the correct LEDs come on. If I insert the programming jumper on the board, it seems to react properly, as reflected by the LED lights (the red LED comes on.)

      I just can’t seem to communicate with the board, either through the serial monitor function of the Arduino IDE, or by uploading a simple sketch, like blink.ino.

      I have also tried your trick of reversing the RX and TX lines from the FTDI, to no avail.

      When attempting to upload code from the Arduino IDE, I see not only the TX LED flashing on the FTDI board, but one of the red LED on the Yellow Board flicker, synchronously with the little blue LED on the ESP8266 module itself, but the upload always fails after several seconds of LED flashing, with a “warning: espcomm_sync failed” error message.

      I was wondering exactly what type of FTDI board are you using to communicate with your Yellow Boards? And at what baud rate?

      I should note that I use the same Win 7 machine and Arduino IDE to program numerous other ESP8266 and ESP32 modules with no difficulty whatsoever.

      Any thoughts would be much appreciated.

      Thanks,
      Seth

      Like

      • Seth,

        I’ve been using a few (they keep breaking!) of these generic, cheapo Chinese USB plugs with a cable terminating in flying leads:-

        https://www.ebay.com/itm/5PCS-PL2303HX-USB-to-RS232-TTL-USB-to-COM-Serial-Adapter-Cable-Converter-Module/222986657981?hash=item33eb0a60bd:g:~vYAAOSwgstbaQpc:rk:31:pf:0

        I don’t recommend them, as the cables at the USB end are very fragile and frequently break if you use them more than once in a blue moon. I would guess that the bare-board USB version, which has exposed pins on the outer end (no cable) and needs female-to-female external flying leads is probably much more reliable (or at least less trouble, as you don’t have to get the soldering iron out each time a wire breaks).

        I’ve had two problems, other than the leads. The first is kinda’ obvious and I would guess you’ve already eliminated it… low batteries. The programming starts okay but bombs out after a while. I’ve seen a set of batteries where two were sitting at around 1.2v and the third was measuring -0.3v (yup, that’s a minus sign!). The main trouble is crappy, el-cheapo batteries, with all of those LEDs on the Yellow board not helping much.

        The second issue that I’ve had (more than once with some recent batches of these boards) is solder bridges. Some of the hand soldering on the bottom of the boards is abysmal. I know we can’t expect too much in the way of Q/A at the prices we pay, but it doesn’t seem like they’re tested at all. 😦

        Anyway, with good batteries and no solder bridges I don’t usually have any trouble programming at 115200. I use Linux, so I’m using the “screen” program to connect to the serial port when actually monitoring or configuring a running application. If you put on the programming jumper, connect up to your PC and run your terminal program and then push the middle battery back in (the yellow-board on/off switch 🙂 ), you should definitely see a line of gibberish on the terminal (the usual ESP start-up messages at some strange baud rate that no-one else in the world uses). If you’re not seeing that, then there must be a pretty basic issue (as you mention the LEDs are flashing). I’d double check the ground connection between the yellow-board and your USB adapter.

        Finally, I have to say that I have one board where the board checks out okay with an ohmmeter, but while the ESP transmits data, it refuses to receive, so effectively that board is useless. One of these days I might get round to replacing the ESP on it.

        Let us know how it goes. Good luck!

        -John-

        Like

  2. […] Update – In an effort to introduce some semblance of balance into this post (and especially to note that I’m not, generally “anti” AI-Thinker), I’d like to point you at a couple of articles on one of their other boards, which actually is something of a bargain!  Just about the only thing it has in common with the “T5” is a long and overly complicated name, but you should definitely keep an eye open for the ESP12-based “Yellow Development Board”.  Apart from anything else, it has lots of nice flashing LEDs and you don’t need to resolder anything to get them working. […]

    Like

  3. Please forgive the late comment, found this post while googling something else. I have to second the comment about wire-wrapping for quick development. I too come from the pre-transistor age, and in the 70’s was involved in projects built with 7400 series TTL on Augat wire-wrap boards. When that job closed down, I stashed away a large quantity of unwanted pre-stripped wrapping wires. Since I retired, that wrapping wire and associated tools have built lots of things. A properly made wrap gives 4 cold welds on the pin corners for every turn, is VERY reliable and is easy to change! Keep up the good work…..

    Like

    • Thanks Derek! I’m currently in a state of panic because I can’t remember where I stashed the wrap wire. Memory and eyesight failing and hands too shaky to solder all of these tiny new thingies! Where did I leave the damn Tardis?!? ;-(

      Like

  4. Hi John,

    Thanks so much for the come-back. For some reason this board didn’t notify me that anyone had responded, and I just found your reply back accident!

    The good news is that I was able to fix the problem, and all seems to be working now. I am using a Win 7 machine for development, and it turned out that I was having FTDI serial driver communication trouble, due apparently to the FTDI’s destructive driver code, if it detects a knock-off FTDI chip.

    Turns out there is an extensive literature (and debate), about this issue, I hate to think how many man-hours have been wasted by people like me who know just enough to be dangerous, but were unaware of the debacle FTDI created when they issued a new windows driver that intentionally sabotages devices using knock-off FTDI chips. (I’m not taking a position on the issue itself, just commenting on what a terrible waste of man-hours they engendered by doing this.)

    The (sort of), simple fix is to use an older FTDI driver (I’m using 2.08.24, circa 2012), which works perfectly! The trouble with this solution is that Windows Update will replace this driver whenever it notices that it is out of date 😦 One must be vigilant in re-installing the old driver whenever it is updated.

    Another painful side effect of the ‘new’ FTDI driver is that it intentionally changes the device address permanently(!), or at least until you re-program it. See below for more information.

    On a happier note, I now have six or so usable Yellow Boards, and I am ready to try to use them to deploy some BME280-based temperature reporting nodes for a project. Trouble is, I can’t tell how to use I2C on the Yellow Boards. You mentioned in a earlier post having succeeded in doing this (with an LCD screen?), but I can’t find that post. I’d love any notes you might be willing to share, as I can’t find much about these board’s pinouts elsewhere.

    Many thanks,
    Seth

    p.s. Hopefully I am now receiving updates from this site, but in the event that I’m not, I am
    Mundificant@gmail.com

    Ref:

    FTDI abuses Windows Update, pushing driver that breaks counterfeit chips – TechRepublic
    https://www.techrepublic.com/article/ftdi-abuses-windows-update-pushing-driver-that-breaks-counterfeit-chips/

    Fixing a bricked FTDI chip from Linux | Mayhem Lab
    http://www.mayhemlab.net/index.php/2016/01/01/fixing-a-bricked-ftdi-chip-from-linux/

    Like

    • Seth,

      Glad to hear you found the cause… I would never have guessed it was the FTDI bricker.

      The BME280 is fairly easy to interface; use pins 4 and 5 on the Yellow board and grab yourself Mike Causer’s I2C device sniffer to play with (once you see your expected address showing up you’re 90% of the way done):- https://github.com/mcauser/i2cdetect

      Make sure you have pull-up’s on the i2c pins (2k2 is a good value) and make sure you have an i2c version of the BME280, too (there are lots of different versions of this board floating around). Look for Tyler Glenn’s BME280 library (which has both i2c and SPI drivers included); it’s library #901, if you’re using PlatformIO.

      Have fun!

      -John-

      Like

Leave a comment