Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
We made an open source ESP8266 dev board for makers (github.com/maloufsleep)
233 points by pcbmaker20 on Sept 17, 2020 | hide | past | favorite | 139 comments


I built something like this but more special-purpose. It just switches a USB-A power source on/off. I wanted it to control my 5-volt fish-tank lights. I didn't want to use a 120VAC smart switch for each light because I prefer to use a single USB hub to power them all, and a bonus feature was being able to PWM the lights so the fish aren't freaked out when the lights suddenly turn on 100% in the morning.

I ordered PCBs from JLCPCB and components from LCSC. I think each one cost around $5 in parts, and I hand-assemble them as I need more around the house.

https://github.com/sowbug/smart-usb-switch

Picture: https://raw.githubusercontent.com/sowbug/smart-usb-switch/ma...


I made lights using ws2812b leds and simulated sunrise, sunset, and a dim blue throughout the night.

I used ws2812b leds, wemos d1, and a level translator since the d1 has 3.3v gpios but ws2812b technically requires a 5v signal.


I’ve been looking at something like this myself, did you use RGB, RGBW, RGBWW, RGBCCT or what to dynamically set the warmth of the light? I got really confused when I started looking into all these different types


I used rgb but would like to try RGBW in the future because to get bright white on the current strip it consumes about 60 mA (@5v) per led. That's 20 mA for R, G, and B.

I have two rows of 32 lights, so a beefy supply was needed along with a few places where VIN was fed to the strip.


That sounds awesome, can you do a write-up about it please?


For the software part, WLED [0] really does just about anything you’d want to do with those led strips.

I drive the wemos d1 and led’s from a 12V battery with a 12-5V stepdown converter. I attach the 5V to the esp and the led’s. The 3.3V logic level works on the first led and is repeated at 5V to all subsequent led’s.

[0] https://github.com/Aircoookie/WLED


Apparently 3.3v doesn't always work with the strips, and newer ones are less likely to work, especially if you're working with a lot of lights.


My assumption was the each individual led chip will re-transmit the signal to the next led, which in effect will turn the 3.3v signal into a 5v signal between the 1st and subsequent leds.

The power lines do sustain voltage drop over longer sections, so you'll want to add extra power every few meters.


Right, that is exactly how it works. If your signal to the first IC isn't perfect, and it isn't with a 3.3v signal, you can end up with incorrect colors or shifted patterns.

As you add more LEDs you have a greater chance of one at the end not lighting up or having incorrect colors throughout the string.

0.7 * 5v == 3.5v, and 3.3 < 3.5. You're out of spec for the part and can't expect it to work reliably.


I'll see what I can do.


>PWM the lights so the fish aren't freaked out

How certain are you the fish can't see the PWM?


Haha, good point. I believe the ESP8266 default PWM frequency (via the Arduino library) is 1KHz, which is well above the ranges cited in the Wikipedia article for flicker fusion threshold across animal species. In my very limited testing, my fish didn't flee under plants as readily when the lights turned on more gently.

https://en.wikipedia.org/wiki/Flicker_fusion_threshold


I am sure this is something will be able to answer:

I need to build a custom board for an ESP32 which should support low-power deep sleep and which should contain some additional circuitry (is that what you call it?) to drive an Eink display.

Basically this[1] board, but a different shape and better low-power sleep properties.

If I wanted to design this board myself, how long would it take to learn this? Are there good resources?

If I were to pay somebody to do design this, what order of magnitude would the cost be in?

> https://eckstein-shop.de/Waveshare-Universal-e-Paper-Raw-Pan...


Have you already made the circuit on a breadboard? If so, learning KiCAD and building the board from scratch would take around a week of afternoons.

I really recommend it, designing PCBs is very enjoyable (at least to me).


If you are comfortable prototyping on a breadboard it shouldn't take long to produce the layout in KiCAD or a similar EDA tool.

Then you can order your PCB at a local shop, manufacture it yourself (with toner transfer, a CNC at a hackerspace, etc) provided the traces aren't too thin and there are not too many layers (1 is easy, 2 is standard and cheap, more layers are expensive), or order it from china at a relatively low price (jlpcb or seedstudio will average something like $1/apiece).


Thank you for mentioning KiCAD, these are the kind of keywords that will help me get started :D

PS: And yes, while I really suck at soldering, working with physical products feels like a nice counter weight to the software world.


KiCAD is amazing, and it's all you'll need (apart from the prototype on the breadboard).

The trick to soldering is really to get a good iron, I underestimated it at the start but you really need something that keeps heat. Get a TS100 and set it to 320, soldering is going to be a breeze afterwards.

Remember, solder should flow easily and stick to the pads/wires, if it doesn't, it means you need to heat the thing up a bit more.


I my iron shoes 400 degrees in the display but somehow the pads/wires don’t heat enough to melt the solder.

It’s really weird. Maybe I messed up the tip somehow? But I just got it a few days ago!


Which iron is it? Maybe it's miscalibrated? Does the solder melt if you touch it to the tip?


It melts. But only at high temperatures above 300. Even though the soldier is supposed to melt at 219.

The iron is a LONOVE 925 m.


Maybe I need to try tinning the tip again.


Yeah, sounds like it. Make sure the tip is tinned when touching the pads so heat transfer can occur more effectively.


I’ll need to watch some videos. I tried running but the solder always drips off the tip and doesn’t stick ️


Hmm, sounds like you need more heat, hot solder likes to run up metal surfaces and stick well.


How would I work with SMD components on a breadboard?


Either breakout boards or you use the through-hole versions.


If you're confident in your design, you can send it off for assembly at a manufacturer that does PCBA. They'll handle the SMD soldering for you.


Breakout boards, I assume.


>If I wanted to design this board myself, how long would it take to learn this? Are there good resources?

To learn it yourself, assuming no prior experience or knowledge, would take years of full-time study.


We’re talking low speed data lines and run of the mill digital circuits, not 10GHz range RF amplifier design. A month is probably enough.


Okay, so now I know it’ll take between 5 years and one month :D

On the one hand, I have a bit of prior knowledge. On the other hand, I want a circuit with minimal power draw in ESP32 sleep mode and i’m afraid that does require some experience.


Does it have to be an ESP?

There are other microcontrollers capable of driving an eink display that consume a lot less power out-of-the-box. Eg: atmega328 (~5 μA deep sleep, ~10mA running)

If you want wifi, then ESP is probably a good and cheap fit. A wemos d1 in deep sleep doesn't consume _that_ much power (~80 μA), unfortunately it does draw a lot when booting (~200mA).


Yes, I need wifi. And there are esp32 boards that draw 20uA in deep sleep.


Just a heads up, there's been a fair number of bugs and issues around sleep mode. Most of the problem seems to be in software and the situation has improved, but you might want to look into the exact state of things.

I'm working on an ESP32-based product that doesn't use sleep mode, but I've noticed people reporting issues about sleep mode on GitHub and in forums.


I assumed zero prior knowledge. I'm a pretty smart guy but I don't think I could go from zero to "designing an esp8266-compatible board that includes an e-ink display" in a month.


A good place to start would be reference schematics from Espressif for their dev boards, and schematics from open ESP32-based boards from other vendors. Check out esp32.com for a list of boards.

With those schematics and KiCAD, you should be pretty much set. Take an hour or so watching KiCAD tutorials, it'll be worth it.

Also, spring for an ESP32-WROVER-KIT and use it to prototype with a dev board. That kit also supports JTAG debugging, which can be quite handy.


Thank you, this is really helpful.


Sure thing. By the way, I should have said esp32.net, not esp32.com. The latter is the official discussion board, but the former is an unofficial reference site that's incredibly useful.


I have used TTGO ESP32 2.9" e-Paper. For my projects it contains all what I need.

I recommend you to check that out.


Paying someone to do it is probably 200$ to 300$ on Fiverr.


I just got an Inkplate 6 and it seems pretty cool: inkplate.io.


Cool - it looks like a well-designed board, although the timing is a bit unfortunate with the ESP32-S2 emerging as an ESP8266 replacement with USB.

A few questions:

* Should the relay have some sort of isolation, like an optocoupler?

* Is it FCC-certified?

* Like other people asked, any information on how the antenna was designed?

I like the old-school dome LEDs. And it's cool to see another project with a CH340 USB/USART bridge, even if they wouldn't need it with an ESP32-S2.


Regarding your first point, the relay has 2,000V of coil-to-contact isolation:

https://omronfs.omron.com/en_US/ecb/products/pdf/en-g5le.pdf

Though it does look like the clearance/creepage distances on the PCB to the low-voltage ground plane are not any wider than 2mm or so, which is acceptable for 120VAC, but not acceptable for 240VAC per IPC9592.

I wouldn't worry about sticking this in an enclosure and using it to turn a light on and off, but I wouldn't want to be handling it while it was live, either!

Regarding FCC/UL certification, a product is exempt from FCC certification requirements if it's "A digital device used exclusively as industrial, commercial, or medical test equipment", which most development boards are. I've got some dev boards from Microchip on my bench right now which aren't FCC or UL listed, either.


A digital device is defined as:

> (k) Digital device. (Previously defined as a computing device). An unintentional radiator (device or system) that generates and uses timing signals or pulses at a rate in excess of 9,000 pulses (cycles) per second and uses digital techniques; ...

https://www.govinfo.gov/content/pkg/CFR-2009-title47-vol1/pd...

This has Wi-Fi, so it's an intentional radiator, so it's not a digital device. I believe this product would be technically noncompliant if not certified, though lots of stuff like this gets sold and I've never heard of any enforcement action.

Their best counterargument would be that it's a component and not a self-contained product. That seems true for many dev boards but not particularly true for this one. Since the practical risk of interference is extremely low, I'd guess the FCC is happy to leave this grey for now.


Test and measurement supersedes intentional emission. If it were the other way no development boards would get sold, especially necessary things like low volume engineering samples. Should a one-off need certification before it can be transferred to the company that contracted the work to build it? No.

If you have never sought certification know that it is quite expensive.

What seems to matter the most is if anyone actually notices interference, and if they do how widely the device ended up being sold. If a test and measure product starts making it into everybody's house eyebrows will be raised.

If you misuse a test and measurement device and generate interference it is typically on you.


> Test and measurement supersedes intentional emission.

On what authority are you claiming this? The language LeifCarrotson quoted refers only to digital devices, and the language I quoted above says plainly that a digital device must be an unintentional radiator.

To be clear, I believe selling their dev board is fine, but it's fine in the same way that driving 60 mph in a 55 zone is fine. Anyone selling an intentional radiator dev board that could reasonably be considered to be a complete device in itself is taking a small risk of FCC action, especially if (as here) they're pushing the limits of "dev board". Note that the Raspberry Pi developers do seem to get certs.

https://www.raspberrypi.org/documentation/hardware/raspberry...


On what authority are you claiming otherwise?

My opinion comes from experience and getting things certified but also common sense and observing enforcement patterns (the latter of which is most important until they overstep and get challenged).

Go back to my example: Does a one-off product need to be certified to be transferred to the people that paid for it? Keep in mind, best case, this will add a roughly >$10k fixed cost to the sticker price.

It's a general principle in common law that the law makes sense. The popular, sophomoric, and extremely conservative interpretation of the FCC rules makes no sense by way of being extremely costly for no discernible benefit, either to the seller, the buyer, or the economy at large.


I am claiming this on the authority of the text of the regulations. The USA is a nation of laws, and those regulations have the power of law. If it came to that, a judge isn't going to disregard them just because you think they're too expensive. If you think otherwise, can you provide case law to support your view?

By law, that one-off intentional radiator absolutely does need to be certified. The FCC's enforcement priorities will be different depending whether that product is a little 2.4 GHz radio or a television transmitter, but their enforcement discretion doesn't change the law. Anyone who wants to be compliant needs to pay for the testing (or use a certified module, which is often easy and cheap; I've done that several times myself).

Lots of people disregard lots of laws because they're too expensive to comply with. Most of them get away with it, and a few of them get nasty surprises. I believe that I've given both the correct legal advice and a correct description of typical (not fully legal) practice. It's not helpful to conflate the two.


The text of the law matters not as much as what the law was intended to do. In any case, by saying the one off needs certified you've gone off into la-la land; any reasonable person classifies it as a test/measurement device and gets on with their life.


You are failing to distinguish between the law as it's written and the law as it's currently enforced, and inventing a quasi-legal framework with no relationship to actual American law to justify your conflation. It's true that judges will sometimes consider legislative intent when the text is unclear; but in this case, the text is perfectly clear, so that's not relevant.

Large companies, small companies that want to get bought by large companies, and other conservative entities generally aim to comply with the law as written, even though there's lots beyond that you can probably get away with. Everyone should judge for themselves how far they want to push from clearly legal actions to grey to clearly illegal but unenforced; but they should know which one they're doing, and your advice isn't helping.

If we submitted a KDB inquiry asking the FCC whether the board in question required certification, what do you think they'd say? (It's free, and you typically get a quite competent response within a few days. If anyone wants to try, please use a generic description, and not a link to the particular product. I doubt the FCC would waste their time enforcing, but the chance isn't zero and the developers don't need that attention.) Or why do you think the Pi developers got certs?


The words on paper are only a lens which you view what was originally intended. I'm not doing anything abnormal, and judges always consider legislative intent. We are not ruled by the particulars of language.

I generally aim to comply with the law as much as possible as well, but the people in this post (including yourself) seem to have no idea of the true cost of complying with the interpretation of the FCC rules you are putting forth.

Yes, if you ask the FCC whether it requires certification they would probably say yes, mainly because they do not want to undermine their authority. This is something I've dealt with quite a bit with pretty much any regulatory body; they pick the most restrictive and burdensome interpretation regardless of what common sense or existing or future court cases eventually say.


I currently work for a large company with a strict compliance team, so I'm well aware of the cost. We pay it, and it's both (a) quite a lot of money, and (b) an utterly insignificant fraction of our overall development budgets. I believe most major tech companies or well-funded startups do the same.

In the past, I've done other stuff less strictly (though again, certified modules--which you didn't seem to be aware of--are the quick, easy and compliant answer for many low-volume products). I was under no illusions that anything but the FCC's enforcement discretion was protecting me, though. Your concept of the law is simply wrong, wishful thinking. It seems there's nothing I can write that would convince you of this; but please discuss with a lawyer or other qualified person that you trust, before you or someone you're advising gets in to serious trouble.

Your viewpoint is particularly dangerous because if you look through the FCC's formal enforcement history, you'll see occasional massive fines, but only after the noncompliant entity ignored multiple attempts to resolve the matter informally. Anyone who acknowledges and corrects their noncompliance after the first threatening letter probably gets a slap on the wrist at worst; but someone who persists under the belief that a judge would let them disregard the text of the law to save $10k will (a) incur much greater legal costs regardless of whether they win or lose, and then (b) near-certainly lose.

You could say this system gives too much weight to the regulator's own interpretation of its rules. I wouldn't disagree; but it's how most regulation works, and the regulated ignore it at their peril.


>I believe most major tech companies or well-funded startups do the same.

That's nice. Are those the only types of businesses who can enter the market? I'm also aware of modules, but using them is not free.

Your concept of the law is more wrong, and this I offer as proof: Language is imprecise and limited. It is more likely that the text of the law fails to track the intent of the law than otherwise.

Throughout this I have never said I would disregard a notice that a product I had made was emitting or otherwise faulty, and indeed I believe that is the first check on most low volume products that are sold "without certification."

To behave otherwise, and allow the prior limiting of otherwise benign and nondisruptive behavior, is to give in to petty tyranny and against the founding ethos of the United States.


My concept of the law is based on the advice of many expensive lawyers, who are paid based on their ability to predict (a) what might cause the regulator to take action against us, because that would probably cost hundreds of thousands of dollars win or lose; and, to a lesser but still significant extent, (b) what the judge would rule in that case. Yours appears to be based entirely on your own wishful thinking, and you haven't once cited any authority beyond yourself. If judges routinely disregard the unambiguous and constitutional (and not otherwise preempted by other written law) text of the law, then you should be able to produce case law where that happened. Why haven't you?

Seriously, this is like arguing with a sovereign citizen. The law isn't just some abstract philosophical ideal. The law is the set of rules that determine how the government exercises its hard power, including the power to block import of your product, seize money from your bank account, or, ultimately, send police to arrest you, with any necessary violence if you resist. EMC regulations tend to stay pretty far on the polite side of that spectrum; but the result when people with a delusional concept of law meet actual government power still typically isn't good.

Can you give an example of evidence that would convince you that your concept of the law is wrong? As I said above, you could show me case law where the text of the law was unambiguous and not preempted by other written law, but the judge disregarded it anyways. What could I show you?

ETA: And you moved the goalposts when you said you wouldn't disregard "a notice [from the FCC] that a product I had made was emitting or otherwise faulty". An uncertified intentional radiator is noncompliant, regardless of whether it conforms to the technical limits. The FCC is under no obligation to confirm anything beyond the lack of certification before ordering the product off the market. We're talking about the requirement for certification, not the requirement to meet the technical limits (which the certification confirms; but meeting the technical limits absolutely is not a defense to lacking certification).

So if the FCC just said "your product is uncertified, stop selling it", would you comply? If no, then I think you know bad things would follow. But if yes, then why? You seem to believe (contrary to the guidance you expect from the FCC, and contrary to the text of the law) that no certification is required, right?


Many lawyers are extremely conservative in their judgement. Sometimes this is appropriate, but for the type of lawyer most people can access this stems more from their clients being unable to pay for their litigation services if they do something spicy and need a lawyer to defend them. So a very bad but usually unlikely outcome ends up with enough expected value to consider for most people, because most people are risk averse by default.

See this in yourself as your second paragraph details all the ways the government is scary. Yes, I already know.

I can't think of an example because I know my concept of the law is not wrong. Do not mistake my philosophical groundings of what and why the law is for what I believe the law to actually be. I offered that explanation to you in an attempt to explain why I think what I do and why it is reasonable while also referencing particulars.

What we are discussing is particulars, and if you want to show me that selling low volumes of a product without certification is dangerous then probably I'd need a few examples of that happening, and multiple justices saying "every business, regardless of how big, small, or their product, must spend tens of thousands in red tape."

I did not move the goalposts by saying I wouldn't disregard reasonable notice. You assumed I would not without asking my input and I corrected you.

It depends on what my product is. If it was a low volume prototype I was selling to evaluators before certifying in detail I'd probably say "no, it is certified, it is test and measurement equipment" and then let the company fold in bankruptcy if taken to court. Eventually it may be found the actions of the FCC were unlawful and I might be compensated. If I was intent on immediately continuing to sell it I would move production outside the US and put it on a web store.

Keep in mind you've unfairly characterized what I believe by assuming things in multiple places. I am not a sovereign citizen, and I mostly agree the FCC certification process is appropriate and on the edge of being accessible, but how most people interpret it at the lower edge is not correct.


In business, the law is how the judge will rule, or how the regulator will regulate, or any of the other actions with practical effect on your ability to develop and sell your product. It's fine to have your own philosophy for how the world should be organized, and to advocate for it where you can; but unless and until you convince a regulator, judge, or lawmaker with that advocacy, your philosophy has no bearing on the actual practice of law.

So when you write:

> If it was a low volume prototype I was selling to evaluators before certifying in detail I'd probably say "no, it is certified, it is test and measurement equipment" and then let the company fold in bankruptcy if taken to court. Eventually it may be found the actions of the FCC were unlawful and I might be compensated.

you have broken from reality. Any lawyer you engaged to defend you would explain that you have a losing argument, and that it would be far cheaper to comply than to pay their fees and then lose. Without a lawyer defending you, your odds would be yet worse. If you won, then you'd be lucky to get even a fraction of your legal fees awarded, let alone the lost profits. In every practical sense, you'd be worse off than if you recognized that while the requirement for certification isn't typically enforced, that's nonetheless the law, and that your best action would therefore be to apologize (with a lawyer's help, to avoid admitting any unnecessary guilt) and become compliant.

I'm not saying any of this is good! Enforcement discretion is basically bad, a transfer of power from legislators to enforcers. I'd prefer a system where something like the § 15.23 exemption applied to low-volume commercial products too, since that's what we de facto have and it works fine. But that's not the law now, and wishing doesn't make it so.

You're quite correct that lawyers give conservative advice because they know the cost of conservative compliance is generally lower than the cost of litigation even if you win. The lawyers that I work with sometimes find my tendency to read the regulations to be charmingly naive, because they prefer to simply ask the regulators--in part they're just a bit lazy, but they're also quite aware of the cost (both in legal fees and in friendliness of relationship) to take any conflicting position. I'm again not saying this is good, but it's the system we have.

Finally, if you did want to argue this, I believe you'd be better off saying it's an "evaluation kit" under 47 CFR § 2.803, not "test equipment":

https://www.law.cornell.edu/cfr/text/47/2.803

Per my original comment, I'm not convinced that's a winning argument for this board; but I believe it would be for typical dev boards (that really are used primarily by people evaluating a part for use in a different system, and not as general-purpose single-board computers), and it's at least not a frivolous argument. Note that compliance with the "evaluation kit" rules requires some magic language in the user manual--if you're selling anything that could plausibly fall under those rules, probably a good idea to include that. Note also that you can let customers evaluate unauthorized prototypes as long as you mark them accordingly and don't collect money for the evaluation, and that you can sign a sales contract (but not complete the sale) pre-authorization as long as it's contingent on authorization.


If it’s sold as a kit(eg. Devboard) or battery powered it doesn’t need to be certified. You also can get pre-certified boards, the wroom-02 being the pre-certified esp8266.


I've seen certified development boards also, but what most don't realize is you can't combine certified parts to make a certified product. So depending on your product there is literally no benefit to getting it certified.

There are things that are battery powered that need to be certified and things that are not kits that don't need to be, though, so I'm not sure I can agree with that wording.


I think battery-powered unintentional radiators can sometimes avoid testing, but battery-powered intentional radiators definitely don't. The statement about kits is also wrong, per pdabbadabba's comment below.

An intentional radiator module can get a module certification. In that case the final system still needs verification (the same kind of testing that an unintentional radiator gets), but doesn't need certification. When you see a label on the outer device that says "Contains FCC ID XXX-XXXX", that's the module's ID.

https://apps.fcc.gov/oetcf/kdb/forms/FTSSearchResultPage.cfm...


Verification is Declaration of Conformity (DOC)? You can either get a Declaration of Conformity from the lab or just sign it yourself. But in the chance you get audited and it doesn't function how you said it would then you'd get in trouble


Verification and DoC are different (and apply to different types of unintentional radiators), but you're correct that neither involves filing anything with the FCC (or any private body accredited by the FCC; for real most certifications go through a TCB, not directly to the FCC). You just make the file (including any test results required) and keep it in a drawer. The FCC can come and ask for it, and if you don't have it then you're in trouble.

ETA: And here's the section about battery-operated digital devices (i.e., unintentional radiators, with no radio transmitter):

> § 15.103 Exempted devices.

> [...]

> (h) Digital devices in which both the highest frequency generated and the highest frequency used are less than 1.705 MHz and which do not operate from the AC power lines or contain provisions for operation while connected to the AC power lines. Digital devices that include, or make provision for the use of, battery eliminators, AC adaptors or battery chargers which permit operation while charging or that connect to the AC power lines indirectly, obtaining their power through another device which is connected to the AC power lines, do not fall under this exemption.

And here's the section that makes it fine to build your own stuff in limited quantity, as long as you don't do anything obviously stupid:

> § 15.23 Home-built devices.

> (a) Equipment authorization is not required for devices that are not marketed, are not constructed from a kit, and are built in quantities of five or less for personal use.

> (b) It is recognized that the individual builder of home-built equipment may not possess the means to perform the measurements for determining compliance with the regulations. In this case, the builder is expected to employ good engineering practices to meet the specified technical standards to the greatest extent practicable. The provisions of §15.5 apply to this equipment.


And I'm responding again to note that I think I interpreted "kit" wrong. I was thinking "kit" as in § 15.23, which gives an exemption for stuff you build yourself but not stuff you build from kits.

But 47 CFR § 2.803 gives an exemption for "evaluation kits". I don't think that clearly covers boards used primarily as single-board computers (and not genuinely for evaluation), and I'd guess that's why the Pi developers got certs for their boards. I believe it's the best argument that this board wouldn't need certification (or verification), though.


I don't see any benefit in using an optocoupler. Using a transistor with flyback diode for protection is acceptable. Both the relay and ESP8266 are powered from the same 5V source, adding an optocoupler is not really isolating anything.


Sometimes it’s easier to deal with a combined part than two parts. It can reduce assembly costs for small volumes, or if the person doing the design is just familiar with the opto.


> * Is it FCC-certified?

It would certainly appear to lack the FCC ID label/marking it is required to have if it is FCC certified. So probably not. Thus, it also appears doubtful whether it can legally be marketed or sold in the U.S.


IANAL, But I think device as-is can likely be sold and marketed perfectly fine. Test-kit and dev-kit stuff is regulated a bit differently under the assumption that it's not going to be in mass use, and also that it's likely going to be used to develop another product that will get the fcc certification.

https://emcfastpass.com/fcc-rules-kits-subassemblies/


The link you provided appears to say the opposite about kits:

"Based on the definition above, it looks clear that non-authorized kits that are intended to form a complete product when fully constructed are technically not legally permitted to be sold in the US. That is because if you are marketing and selling a kit to an end user, which the user will then build into a full product, there is no reason to suspect that the normal rules would not apply."

The subassembly rules could work, if they apply, but I don't see how this product fits the definition of a sub-assembly:

"No authorization is required for a peripheral device or a subassembly that is sold to an equipment manufacturer for further fabrication."

In fact, I think it's a stretch to say that any of these test-kit, dev equipment, or subassembly rules apply. This basically strikes me as being marketed as a consumer product -- albeit a product for very tech savvy consumers.


I don’t believe that dev board is a complete kit by the meaning of that rule.

Certainly there is ample precedent for other dev boards (intentional and unintentional radiators) being sold without certification.


Like everything on this site:

https://www.tindie.com


A search for "Malouf" on the FCC registration website provided no matches. Most likely this product is not registered.

In addition, this product lacks a CE mark and has no UL/FM/CSA listing. I'm curious what creepage/clearance requirements were factor into the design. This product is potentially dangerous if the relay is switching line voltage.


This is the exact reason why I didn't see through my plan to build and sell the EspUSB (a very small ESP board that fits inside a USB-A port).

I got 3 units built for myself by PCBWay at a cost of $77. I got quotes of ~$500 for 100 units from Elecrow and Makerfabs, but didn't know what to do with the other 90.

Although I really want this great little gadget to be easily available, I can't afford $10,000 for FCC certification, and therefore I have no solution.

If anybody wants more details, email espusb@gmail.com and we can chat about it on there.


> I can't afford $10,000 for FCC certification, and therefore I have no solution.

That's not how it work. You start by selling them, prove the concept, and when you have the money, you sort out certifications & whatsnot.

You won't become a unicorn if you think about doing everything _by_the_book_ from day one.


I have enough legal trouble just trying to get a work visa. I'd rather not risk criminal charges, deportation, or worse for a hobby project.


I wonder how the folks that sell on Tindie get around this... https://www.tindie.com/


There are various exemptions for subassemblies and other non-end-user products. Those may not always apply. However, in practice, a product that's sold in small quantities and does not in fact emit egregious electromagnetic interference is unlikely to attract enforcement attention. So a fair bit of skirting of the rules does go on.


Based on the PAL project and WiFi capability, I think the ESP8266 does emit electromagnetic radiation. Whether it's interference or a feature depends on your perspective.


What about using a pre-certified module (eg. Wroom-02 or wroom32)


Because it won't fit inside a USB port any more.


One way to deal with high voltage is to use an external hockey puck solid state relay. Keeps the high voltage off the PCB and you don't have the kick from the relay coil finding it's way into the digital logic.


A decent heuristic for whether or not a wireless module has been FCC certified is whether or not the RF components are under a metal shield:

If it doesn't have a shield, it's almost certainly not FCC certified.

If it does, it's more likely to be certified.


Who has used RS232 voltage for serial in the last 10 years? I'd rather a few MOSFETs to cut the power to everything for lower power. I guess there is a specific market for this and it is not me. I have at least 20 of Esp8266 and esp32 boards around the house. A bit of fun to design and produce though. I would not bother with the ESP8266 anymore considering the marginal cost of the esp32 and it is a much better device, learnt from their mistakes. The new one with on chip USB looks great too.


Haha, we built this internally to use with Axiom scanners in our fulfillment centers which use RS232 interface, those scanners are 20 years old.

I convinced my boss to let me sell these as open source since we found many cool IOT uses for them around the office as well, that's why you are getting the RS232 on there but most people probably will not need that feature, but hey... it is there if you need it :)


It's a reflection on a great workplace culture to share like this. It's not the board for me, but nice you released it anyway. When those MAX232 chips came out many years ago they blew our minds having the charge pump for the negative voltage. Too bad we could never buy them at the time a the lead time was so long.


Yeah, I'm regretting getting the esp8266 not knowing of the esp32. Besides being a better device for basically the same price, it has better tooling from espressif.


Esp-idf is amazing .

Esp8266 doesnt have flash encryption and secure boot. Esp32-s2 does though.


> Esp-idf is amazing .

I have the opposite experience. Sure, if you just need to adapt their examples a bit, it's quite smooth. But the documentation is horrendous! If you need to do anything non-trivial that isn't covered by examples, I found it very very hard to work with. The documentation barely exists and is written in poor English. Compare this to the documentation for ARM SDKs, for example! Night and day.


I was comparing the Esp-idf to the Arduino libraries! The documentation isn't too bad, it's quite lengthy. The examples, tutorials online, and github issues in the idf repo help a lot too since the documentation doesn't dive into code examples too well.


It took me two days of fighting with esp8266_rtos_sdk and hacking together their broken github repo before I finally got anything to work.

esp-idf worked on the first try.


Don't the things costs like $2. Just get the new one as well.


If the cable is longer than a few centimeters, the voltage makes sense.

rs232 can run quite long distances.


I have. Roboteq motor controllers use RS232 voltage levels :-/


Isn't the esp8266 much lower power than the esp32?


No the ESP32 uses less power. In deep sleep it uses about a quarter of the current. It also has an extra low power processor (ULP) core than can run in a sleep state and do IO without even waking up the Tensalica cores. The ESP32-S2 actually has a Risk-V core that runs as a ULP. As I said, it's better in every way.


This is quite a good write up of the difference. https://blog.voneicken.com/2018/lp-wifi-esp-comparison/


Nice. There's also a project called FEMU, which is an ESP32 Wi-Fi/Bluetooth board that fits in a USB port: https://hackaday.io/project/167005-femu-an-esp32-wi-fiblueto...


I recently created a board for the nrf8001 Bluetooth low energy chip. I see your antenna section isn't fully open since that LED is in the way, have you considered rearranging things so that PCB antenna has an unobstructed path on the left and right sides?


Pretty rad! I could see lots of applications. Available on amazon you say? 19.99 you say?

https://www.amazon.com/dp/B08GY2GTW5?ref=myi_title_dp

I'm curious about availability. Are they ready to ship? Awaiting preorders?

EDIT: Oh I see 18 in stock. Probably remains of a small run to gauge interest. I hope it takes off. I'm going to make it 17. :-)


we have more stock, just waiting to transfer to Amazon


Any plans to make it available in Canada?


Interesting. Seems fairly comparable to the Sonoff Basic (also ESP8266, retails around $5), but more DIY friendly.

Are you planning to sell a case to go with it?


Yes we probably design a case that you can 3D print and will add it to GitHub soon ish


Charles Lohr has done some neat projects with this board. Recently he made this post and I've never thought about this level of hand-holding interaction with the silicon itself.

https://twitter.com/cnlohr/status/1307890077041909760


Is the antenna open source? Is it characterized (bandwidth, efficiency, radiation pattern)?

Almost like one from here: https://www.ti.com/lit/an/swra351a/swra351a.pdf


Yeah the antenna footprint is actually that one provided by ti. I had created a footprint from that pdf but then I found a kicad footprint somewhere that looked a little nicer than my rudimentary skills. This was my first design with an antenna and I am certainly not a good rf engineer. I'd appreciate any tips and feed back.


I believe it's called a 'Meandered Inverted-F Antenna (MIFA) ' I used the footprint from https://github.com/prasad-dot-ws/ESP32_MIFA_PCB_ANTENNA recently, which is based on Espressif's gerbers for a sample pcb.


Looks interesting. How would I program it, do I need a FTDI board?

Also I wish it was available in Canada.


It says it can be programmed over the microUSB (just like an Arduino).


It has a CH340 USB-UART chip onboard, so it looks like no need for an FTDI board.


Just curious not really familiar with electronics but what can i build using this


Lots of things. The original design for this chip was to have a serial to WiFi bridge. I use one of these as exactly that: a WiFi connected serial console for one of my home servers so I can get into it even if for some reason it isn’t on the network.

But you can also do so much more: these chips have lots of GPIO pins so you could control anything that an Arduino or another microcontroller can control such as relays, displays, temperature/humidity/proximity/etc. sensors, LED strips, motors, heaters, and so on. But the kicker is that with built in WiFi so you can natively get it online. A lot of smart lights now have these chips in them for example and you could make your own. Or your own internet connected green house with vents you can open/close and sensor readings for temperature and humidity in the air and the soil. Or an RC car you control from your phone. Or shades that open and close based on time of day. Or a garage door opener. Basically if you need a gadget you control over a network, these probably should be your first potential solution. They are low power and physically small compared to something like Raspberry Pi’s or other single board computers and more powerful than Arduinos.


Given all the air quality issues in CA right now, I've been planning to put together an air quality + temp + humidity sensor that I can run off a battery and connect to my wifi. I already bought the sensors which I have connected to a Raspberry Pi just to play around with them, but of course a RPi won't last long on a battery. I really want something I can just toss in the corner of a room and easily move around.

I've mostly been looking at the ESP32, though (newer, also has bluetooth and 2 cores, and is lower power), and some of the ARM Cortex-M-based microcontrollers.


I combined an ESP8266 with a 4x20 LCD display.

As the device has onboard WiFi I can poll a remote site to get data and display it, updating every few minutes. I use that to show the next departure-times at the tram-stop round the corner from my house.

Sure I could use an app, or even walk there and wait, but it's nice to know when to leave - especially in winter-time!


Here is a few ideas:

Alexa enabled switch to turn on / off a TV using the IR blaster

my boss used 3 of these this to build a smart sprinkler system for his house.


Oh that’s so cool Thank for the suggestion. I’m really trying to learn more about hardware.


Get an Arduino starter kit and start hacking on some little project around the house. With a bit of persistence, C/C++ is not so difficult to become productive coming from almost any other language. And with the help of platformio's [1] CLI tooling it makes uploading and debugging your code on chips like the ESP8266 (or ESP32 or Arduino) pretty straight forward. Then of course there are the actual physical pieces of hardware, wires, circuits, components, etc. It's a whole new world in which to learn and break stuff. Good luck!

[1] https://docs.platformio.org/en/latest/what-is-platformio.htm...


So much this. You can tie in to Home Assistant quite easily. You can then make all sorts of things. Buttons to turn things on, screens to show data from Home Assistant, measure things (distance, door open/closed state, humidity, light/dark, weight etc). The sensors are nearly all really inexpensive and seem to be pretty accurate. From knowing nothing to having something functional working takes a few hours. It’s great fun and anything with lights and sound gets kids involved very easily.


Mouse and keyboard: https://www.youtube.com/watch?v=FPBzOaLbWhM

Ethernet: https://github.com/cnlohr/espthernet

PAL TV: https://hackaday.com/2016/03/01/color-tv-broadcasts-are-esp8...

I haven't yet seen an FM transmitter though, but it's been done on the Raspberry Pi GPIO so I guess it could be done on the ESP also.


Fun looking little board. Great to see people sharing these things!

It makes me wonder if there’s interest in more of these type ofESP* dev kit boards. One I haven’t seen is one with just Ethernet PHY but no Ethernet jack/magnetics. It’s been useful in my designs to have a ETH+/- that can be brought out to various Ethernet / PoE setups. Something like the wESP32 is handy for kits but not for integration.


Cnohlr did just this, although he strongly suggests using proper interfacing, but having the bare signal wires at hand can be useful for chip to chip communications on the same board. One could build a board with N ESP chips then connect them directly by daisy chaining their TX and RX pins, that is, passing packets in circle, or behind an Ethernet switch chip, de facto creating a board level local network. Might be interesting for some applications.

https://github.com/cnlohr/espthernet


Using the I2S is a clever hack. I didn’t know I2S could drive at 40 Hz!


Ah, 40 MHz, autocorrect fail.


Maybe I'm missing it but I wish there was an ESP8266 board with a proper JTAG connector.

I have hacked something on a protoboard for nodemcus before, but it ended up being pretty messy.


I too want to have this FCC certified.

$19.99 seems a bit expensive to me though.


the wifi stack onthe esp8266 is a mess. it also does not support the latest espressif sdk. so you should buy an esp32 module and dont bother with this. ( the price is 3 bucks instead of 20)


The biggest/best reason I know for using ESP8266 is the integrated WiFi module, but it seems that this doesn’t expose that or at least capitalize on it, which gives little incentive to use this over something like the Teensy.

Is there any intention to add WiFi support to the dev kit?


Yes ESP8266 has WiFi Built-in but thanks for the pointer, I will update the description to reflect that fact.


It appears that there is an antenna on the PCB so I believe WiFi is supported here. Outside of that, the ESP8266 is a pretty nifty CPU itself. Depending on what you want to do, a Teensy might be what you want. The ESP chips do not have an FPU for example.


From board picture it looks like a wifi antenna is on the board, maybe WifiClient.h would work?


Interesting project. By why no USB? Why does it have a Relay?


What do you mean by no USB? There is a CH340C uart to USB chip onboard and a micro usb port. Is there something specific you're looking for?

The relay would just be used as a switch to turn on/off an external device using higher voltages, AC or DC.


Cool board! The only thing I think would be a nice-to-have is an integrated wifi module.


doesn't esp8266 have wifi built in?


ESP8266 does, source, have several and:

https://en.wikipedia.org/wiki/ESP8266


I have an interest in electronics and would call myself a "maker" (well, I have a growing box filled with various arduinos and microcontrollers)... but after scouring the repo and the website, I can't figure out what this is, or what I could do with it!

What is an "ESP8266 board"? Is that something that is so common it doesn't need explaining? Of course I will google it [and probably buy one], but just pointing out that it's not very clear from the website!

[EDIT: ok, after 10 minutes of googlin', it seems no one will explain what it is - it's just "an esp8266 system on a chip". It must be the first rule of ESP8266 club...]


Esp8266 is a microcontroller which is incredibly popular in the maker/hacker movement for it's low cost and wifi integration. You can add a relay to this microcontroller and put it on your wifi network and use it to switch appliances on/off from the internet quite easily. If you read hackaday, you'll run into esp8266 projects regularly.

It's a bit harder to get started with than your average arduino project. If you want, you can use the Arduino IDE which hides a lot of the complexities. But the docs from espressif are aimed more at the firmware engineer crowd, so if you want to get serious there's more of a learning curve (IE nvflash partitions, understanding what a bootloader is, etc). Also, you'll probably end up getting into freertos at some point, which further complicates things. But it's a super great module for home projects.

The esp-32 is a newer chip which is similar but adds bluetooth. In general you're better off going with esp-32 nowadays -- it's got a second core as well.

Until recently the only thing missing was USB (though there were bit-banged USB implementations!). But now there's an esp-32 with USB too, so really for the cost, the features are unparalleled.

If you're okay with things not being as polished as the Arduino experience (you might have to learn "real" firmware programming), it's really the best starting choice for your side projects.


that's a helpful info for newbies. thanks for sharing


My info is 5+ years old at this point, but when I last looked into the ESP8266 they were the de-facto easiest/best way to add Wifi to your microcontroller. I have an older ESP8266 board that i used to create a tiny server and tweet stuff for me.

The older board didn't have integrated USB, which made the dev process annoying.


The second result on Google for "ESP8266" is the Wikipedia page, which clearly elaborates what it is.

It's a basic 32bit RISC microcontroller, generally running at 80MHz, with built-in WiFi support. They're often available as modules with either a pin header or castelated edges for surface mounting.

They are supported on the Arduino platform and Platformio.org, as well as some other platforms. They've become quite popular due to their low cost (often available for under $10 at individual quantities) and the fact that they include wifi.


I mean, it's another ESP8266 based board with a bunch of GPIO and a relay that looks like it's meant to switch line voltage. It's handy but absolutely not revolutionary.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: