Pixl.js with Wifi (ESP8266 ESP01s) - SOLVED

Posted on
of 3
/ 3
Last Next
  • Hey @Gordon

    EDIT: My problem was fixed by Gordon on the post below:

    I just followed your AMAZING instruction to add wifi to the amazing Pixl.js (in badge from from your store)
    Store link: https://shop.espruino.com/pixljs-multico­lour?search=badge
    Video here: https://www.youtube.com/watch?v=txZr2Ghu­oaI

    (see soldering below) and I followed the wifi section in the badge page:
    Checking sure my Wifi name and password is correctly but I"m getting an error of:

    Uncaught no 'ready' after AT+RST

    The device works perfectly just like before (as far as the screen and all lights) but I have no wifi.
    Could I have killed the ESP8266 or is there something else I'm missing?

  • Sun 2019.12.01

    Hi @DamianMontero, quite an interesting upgrade.

    Has the code block at https://nodeconfeubadge.org/ been attempted, and what is the WebIDE output? (which console.log() statements are viewable?) Please post.

    What version of Espruino is flashed? process.env

    Never mind process.env. I now spot 2v04 in the lower image

    While soldering may take a bit of a knack to get the hang of, I do notice that there are three pins where solder doesn't appear to flow on to the circuit board pads. Round blobs usually indicate that the pin did not get sufficient heat in order for the solder to flow. Is the solder rosin core? What dia solder? What wattage is the iron. A narrow enough tip? It appears to me that the solder doesn't have internal rosin/flux to properly allow the solder to flow, or sufficient (max one second contact though) heat. (not shiny)

    The first fifteen seconds of this video (not mine) does show proper technique and how solder should flow.


    Embarrassing as it may seem, pics of the tools, iron tip and solder may provide some clues. Don't fuss, we've all had to start somewhere, and I still remember my first attempts fifty years ago working on my Electronics merit badge. ;-)
    ( remember Heathkit's @allObjects? Using my dad's hand-me-down VOM Heathkit circa ~1970 )

    While we aren't at the re-solder point just yet, it is an area to consider. I'd run some code first to validate if comm has been established with the 8266 first/easiest.

  • @DamianMontero,

    documentation mentions something about a mirroring error when making the PCB... from the changed soldering on the bottom of ESP8266 ESP-01 it looks like that you took care of that mirroring mistake - did you?

    No offense, but the soldering points look a bit messed... It is difficult to take headers of because heating all the pins at the same time is quite a challenge. Therefore, I usually pray the plastic of the header off of the pins and then take off pin by pin. Risking a damaged PCB header isn't worth saving the header.

  • 'it looks like that you took care of that mirroring mistake - did you?'

    As I read that pp., the mirroring was taken care of as the 8266 isn't covering the front of the display as explained by G in the video. (otherwise the 8266 header pins would be pointing downward)

    I believe Damian is in EST, so probably wont get a response until tomorrow.

  • Hi @DamianMontero,

    Sorry, but it looks like you may have fallen foul of out of date documentation on the net that I don't have control of :(



    On Nodeconf.eu badges, due to a slight mirroring accident, a normal ESP8266 module has to be attached to the FRONT of the badge, slightly covering the display .... This is fixed on badges produced after Nodeconf 2018

    Basically it was a mistake on the original board design, which I then fixed. I'll update the video and put a big note on the store page.

    What I'd suggest is that you sacrifice the ESP8266 module and cut the pins in half, which should then make it easier to get them out of the badge without damaging it - and then it should be way easier to insert a new ESP8266 as you can just poke it straight into the holes without messing with the pins.

  • Hey @Gordon as @robin the mirroring was taken care of.

    Robin you're right: the soldering is a botch job. But It looks alright to me. I can go over it again so they look more like the connections to the Pixl.js (which I hope you agree are fine) but could this really be the issue.

    QUESTION: I put my multi meter and connect to what should be the ESP8266 Ground and Vcc and when the Pixl.js is on I measure 0.5 volts. AM I USING MY MULTIMETER RIGHT? Is the pixl.js maybe not sending the right voltage?

    @Gordon THAT was kind of the question I had for you. Should it be working. Not the mirror thing. I ordered a ESP8266 and Badge specifically because of that video because I saw a million possibility in this beauty of a board.

    I'm trying to figure out. Did I kill the Pixl.js (it seems to be working perfectly.
    Did I kill the ESP8266 (1 hour of struggling to move the pins, maybe I removed all the connections from the pads to the board)

    Those are the questions I'm looking to answer.

    also of course the "What did I do wrong?" one

  • Should it be working

    No - the ESP8266 is the wrong way around (as described above).

    I don't believe you would have killed the Pixl but you may have damaged the ESP8266, so for the $3 or so one costs, I'd recommend removing it and adding a new one (the correct way around - so no need to move the pins) and then it'll look nicer too.

  • Please excuse me @gordon. But you can see the back of the esp8266 if it was the "wrong way around" you'd see the chips (see image below)

    I'll be glad to order 10 of these Until I get it right. But I wanted to have it ready for the big convention down here in south USA cause this is the best badge in the world!

  • But you can see the back of the esp8266 if it was the "wrong way around" you'd see the chips (see image below)

    Yes, the issue is that on the Nodeconf EU 2018 badge I made a mistake, and you had to do that nasty hack with the ESP8266 that you saw in the video - pulling the pins out and turning it around.

    In later badges that I made I fixed that mistake so you could just push the ESP8266 in without messing with the pins (as in the image below). It's documented in http://www.espruino.com/Pixl.js+Multicol­our#esp8266-wiring but obviously the video was already made so I can't change that, nor can I change the Nodeconf documentation

    1 Attachment

    • IMG_20191202_161738.jpg

    I guess my problem is fixed and my Pixl.js badge hopefully will survive the new surgery

  • Mon 2019.12.02


    We'll I'll be . . . never did it occur to me, that a board revision had taken place! (re #5 #9)

    @DamianMontero we should all learn from this. Undertaking projects from other sites may have a bit of risk of success, and as Gordon points out, we then have no control over the documentation written by others. It's unfortunate that the revisions hadn't changed on the Espruino web site yet, but with the current Bangle.js Kickstater in full motion probably delayed the updates timely.

    'when the Pixl.js is on I measure 0.5 volts. AM I USING MY MULTIMETER RIGHT?'

    Does this now need more explanation? As the chip wasn't wired to VCC correctly (not your direct doing/intention) unpredictable results, the 0.5V was likely residual voltage over several internal parallel transistor/diode junctions and close to the 0.7V we might expect. (can add more if needed)

    'and my Pixl.js badge hopefully will survive the new surgery'

    Are you in need of tips/suggestions for part extraction in order to alleviate the least amount of possible damage to the traces on the Pixl? (not sure of level of de-soldering expertise)

    With regard to the future Pixl, had it been considered to solder in a female socket, or female header strips, such that the 8266 could be just pressed in?

    Taking a quick glance, attempting to take into account the previous layout pins configuration along with being upside down, It is quite possible that both chips/boards survived. Just depends on how much time/effort as an offset to cost to make them 'behave into functionality' again. Concentrate on not applying too much heat to the copper traces on the Pixl, as Gordon points out is the most precious board to protect at this point. Pins and time to de-solder are inexpensive at this point and are part of the (?fun? of learning) experience on the road to expertise. If done delicately, you may find the 8266 survived. Wouldn't that be a hoot!

    Be patient. Take your time. Should you desire tips, I could compile a list. . . .

  • I'm not worried about the 8266 but because the LCD ribbon is so close and it's two rows I'm going to have a hard time desodering.
    amazon delivers a ESP01S for $4 (including shipping so what...3 euros) so that's on it's way. but I hope I don't kill the sockets and yes. Putting in a header would have been what I should have done but I didn't have a header or even thought about it. And I love the low profile that this kit made. Just wished I had not made this kind of mistake.

  • Tue 2019.12.03

    'because the LCD ribbon is so close and it's two rows I'm going to have a hard time desodering'

    I've not played with the Nodeconf badge, but I do notice in the image above, the ribbon cable is close indeed. Is there enough room to place a thin letter opener, a steel rule or maybe some folded tin foil or cereal box top to act as a heat barrier?

    'Just wished I had not made this kind of mistake.'

    You are not the fault here, so you didn't make a mistake. As I see it, you followed the instructions to the letter, as defined for that author's project at that time. Commend yourself. Who would have thought a conference badge with limited production run, would have had a revision change. I read that article and would have performed the same ritual and be typing out the same forum entry here. My openning #11 comment shows my surprise also. Doubt that I would have even checked the artwork for the trace layout, if that even exists.

    While it is an unfortunate circumstance, no words can substitute for the frustration I'm sure you are facing.

    Would it be more appropriate to state that 'Just wished this sequence of events hadn't happened to me?' or 'Just wished I wasn't in this unfortunate learning experience?'

  • The patient survived the surgery. Of course I cut the ESP8266 out with a cutter and then did a lot of desoldering work to remove the pins.

    Luckily the NodeConference badge survived and thanks to amazon a new ESP01S is attached to the back. and it worked on the first try.

    @Gordon I'm using the "ESP8266WiFi_0v25" module as the documentation suggets. I don't think the Wifi module worked (but I don't remember if I tried or if it was with last very which had it plugged in wrong anyways)
    BUT my question is. should I just be able to use the Wifi?

    the "ESP8266WiFi_0v25" module doesn't seem to be happy hitting an HTTPS endpoint which I believe the EspruinoWifi can just fine. Is it the Module I'm using?

    I'll publish my code here and on github the second we sold the HTTPS part because to get HTTP I simply go through a personal host that I'm not confortable sharing with the world and having 30,000 of you hit it all at once.

    Here's the patient after.

    So of course I built a Bitcoin Price tracker:

  • Nice! Looks like it survived pretty well!

    I'm afraid HTTPS isn't going to work though. On Espruino WiFi it's done on the microcontroller itself (not the ESP8266), but that has 128kB of RAM. The Pixl just doesn't have enough RAM free for the requires buffers for TLS :(

  • I was just asking to make sure I wasn't missing anything.
    I'm ok with http only cause I have a server that I'm using to combine all the calls anyways. but all the free calls now a day require HTTPS.

    The NodeBadge is a Espruino you should keep in your line up.

    It is by far my favorite Espruino board. It's VERY "new developer" friendly and easy to carry around without looking like you have a bomb strapped to your body.

  • Also THANK YOU @Gordon and @Robin for your help. This was solved fairly quickly and I now have my favorite toy.

    Yes Robin the flex cable is SUPER close and Yes I used an old pair of tweezers to semi protect it and the flex cable survided without a scratch surprisingly even though (especially when desoldering) I'm sure I got very close

    and gordon, yes, the Pixl.js nodebadge survived perfectly. the ESP8266 of course is a new one, but it connects and seems to work perfectly.

    thank you again!

  • @Gordon question:

    If I wanted to do this with the regular Pixl.js what pins would I connect from the pixl.js and the ESP8266 and I have about 40 of the regular ESP8266 not these "ESP01S" modules. but I'm thinking I wouldn't be able to use them right?
    I had a request from someone that saw it that's going to be at the same convention to have one for her. and I do have another Pixl.js so I'm just wondering.

  • Great! By the way the flex cable is (I think?) kapton - so you don't really have to worry about heat affecting it.

    If I wanted to do this with the regular Pixl.js what pins would I connect

    It's basically the same:

    • GND, VCC, RX, TX
    • The CH_PD and BOOT pins to ensure it starts up outside of bootloader mode

    However the big issue is the voltage regulator. Pixl.js's default one won't handle the power needed for the ESP8266, so you'll need to add another 3.3v regulator to it.

    IMO it'd be far easier buying a cheap ESP8266 Arduino shield: http://www.espruino.com/arduino-esp8266

  • OMG! I HAVE ONE! Sheesh it's a REALLY old one. but that might work and make a less spider web of cables.

    It's not a ESP8266 one (it's probably at least 10 years old one) I'll try that. Thank you.

  • It looks like the Pixl.js did get damaged.
    I threw the badge and left for my conference and here I am and the system boots up. the ESP8266 flashes once quickly blue (so it has power) and then a second later blinks a couple of times (as if it's connecting and retrieving information) and then just stops and never flashes again

    and I get "Uncaught no 'ready' after AT+RST"

    so it means the board doesn't reply. or it's not communicating the information back to the pixl.js

    I measure the power on the Vcc and ground and I get 3.2 while it's booting up and then zero. (like the pixl.js has turned it off or grounded it.

    any advice?

  • You measured the power on the 3.3V wire between PixleJs and ES8266? ...and PixlJs works fine standalone?

    If so, the ESP8266 - known as resource hog at some points in live events - just crashed the power supply... even though it is said that PixlJs voltage regulator can handle the extra load of the ESP8266 on 3.3 rail when powered by USB. Make sure you have a ample power and filter capacitance as close as possible to the ESP8266. You may get away with a capacitor soldered onto the ESP8266. What Is the power source you are using? What else runs on the 3.3V rail driven by PixlJs' (voltage regulator)?

    Take look at this post #16 in conversation about Breadboard friendly PICO - which also features breadboard friendly ESP8266 ESP-01 module and how to power latter.

  • the Pixl.js works perfectly. I can use it all lights work, backlight LED1 and LED2

    I've tried with the with USB plugged with the same result.

    I have even tried unplugging the battery and just powering by USB. Same results.

  • SO you're suggesting I try this capacitor like there is in this picture?

    cause it does seem like power is simply shut off all of a sudden.

  • Fri 2019.12.05

    ref #22 'Make sure you have a ample power and filter capacitance'

    Hi Damian, it sounds like you are at a conference and need info quickly? Forgive me @allObjects as I'm not intentionally stepping on your toes butting in to your conversation, Damian, the image of the 47uFd cap appears to be what is implied. Not seeing a 0.1 or 0.01 ceramic for filtering though.

    To confirm, we are now working with a new Pixl and not the Badge? The Arduino shield?

    If so, was a new regulator used to power the 8266. See post #19 heading 'However'

    I've not played with the ESP01 but isn't there a hardware watchdog that needs feeding? Could that be resetting? More likely the Pixl regulator shutting down. It's likely the Nodeconf badge had a beefier regulator, while the Pixl is 150ma.


  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview

Pixl.js with Wifi (ESP8266 ESP01s) - SOLVED

Posted by Avatar for DamianMontero @DamianMontero