However for those that don't have a background other than simple programming experience, I strongly recommend paying g more for a platform with good infrastructure. For example , I'm really impressed with particle.io.
Board costs are <$20 but come with cloud infrastructure and lots of examples and documentation. For those that value time over money I recommend them.
But I started getting interested in "hardware" about this time last year. Soldering was a bit fiddly since I'd only rarely done it in the past, but the programming side was pretty simple to handle. I found tutorials which were very beginner, even non-programmer, friendly.
Of course it helps that I've programmed in C for 20+ years, and I can still do assembly-stuff if I must, but I don't think it is unreasonable for a complete beginner to do useful/fun things given enough willpower.
The only downside for me is ordering kit from AliExpress which takes ~1 month to arrive to me. I'm currently waiting on some E-Paper, which I was recently surprised to discover is very affordable..
But I have limited knowledge on embedded programming. Hope someone can shed some material programming esp8266 from scratch. Thank you!
The 800x600 module is perhaps the better size, for €46, but this is just for me to experiment with. I have no particular use for the paper, I'm just impressed that it is suddenly "cheap".
It doesn't get any easier than an ESP8266 and Micropython. https://docs.micropython.org/en/latest/esp8266/esp8266/tutor...
https://learn.sparkfun.com/tutorials/esp8266-thing-hookup-gu...
Those days are over. The new chips come with a high level language like python, pip. You can program it like you would with a digital ocean box but with a lot more constraints in hardware.
I haven't done any soldering but I don't see why that should turn people off. I mean I am worried about the toxic fumes but I'm sure theres way to mitigate that.
The whole point of having my own chip and programming it is the experience itself. Particle.io does not make sense to me as it seems to be another commercialization via platforming of this space which might make sense in enterprise but for the hobbyist, I doubt it.
as others have said, those days are over. micropython with esp8266 is insanely easy[2].
1. https://www.thingiverse.com/thing:1128026 2. https://docs.micropython.org/en/latest/esp8266
I'm super excited about 3dhubs! I didn't know such service existed. Wonder what the pricing is like.
http://www.militaryaerospace.com/articles/print/volume-16/is...
https://www.amazon.ca/Aoyue-Benchtop-Solder-Smoke-Absorber/d...
and stick with lead when I get the chance....I'll be sure to do it in well ventilated area.
Me: I use leaded solder, I have a fan, I don't lick my fingers (while soldering).
Any programming language available for MS-DOS back in the PCW 1512 is doable in a ESP32.
Programming can be low-level like we used to do in Assembly, or high level Turbo Basic, Turbo Pascal, Modula-2, C, C++ style.
So far I've got an Alexa controlled IR transmitter that controls my TV, an LED board showing the current bitcoin price, the temperature outside and the status of the local highway and I've got some led strips controlled by Alexa.
I haven't coded for years and it was a lot of fun.
One can, of course, build their own boards which requires soldering.
From there on I transitioned to more DIY things like the ESP over time, buying cheap stuff from AliExpress.
A bit better at scaling than particle in my opinion, not that that really matters for little diy one off projects though.
If you are into home automation, look into Sonoff stuff. It uses these chips but comes nicely packaged into several different form factors. You can run open source firmware on them.
Plain Arduino (AVR) boards don’t have a ton of advantage over the ESP8266 and ESP32 chips. So I’d honestly mostly skip them except if you want a ton of GPIO pins or if you want to use the Uno form factor with the shields. Having Wi-Fi is such a huge thing that I think it outweighs the other considerations. Good luck!
What do you mean?
> the amount of lead is harmless for DIY solderers.
To date, the FDA, CDC, and the WHO state that "no amount of lead is harmless". It's just that we can't get a sensitive enough handle on the neurological effects to determine a good metric for it.
On another note, does anyone know if the Respro masks are suitable for protection against lead (+ the stuff with lead) inhalation while soldering? The "techno" mask has a HEP-A filter and a charcoal mesh, which I would have thought would be enough for most of the lead particulate?
You have to breath it or ingest it for it be dangerous. In soldering it does not get anywhere near hot enough to vaporize, so really all you have to worry about is ingestion.
As long as you either don't touch the solder, or are careful after touching it to not touch anything that may find its way into you until you can thoroughly wash whatever parts of you touched the lead (or were touched by parts of you that touched the lead), you should be OK.
The biggest health risk during soldering is going to come from the flux. It's the flux burning that produces the smoke you see and smell during soldering.
Here's a document from LBNL on safe soldering practices that goes into the components of solder (leaded and lead-free) and their dangers: http://www2.lbl.gov/ehs/ih/pdf/safeSolderingFinal.pdf
Although that degree of caution is more or less warranted when dealing with lead solder in paste form, I have to admit. That crap gets everywhere.
Exactly.
Fumbling around with a soldering iron and some leaded solder a little bit, few times a decade, won't give you cancer or any poisoning. Safety considerations are aimed at people doing lots of soldering, because at this point the amount of flux fumes they might breathe in (or risk of ingesting lead) becomes a possible risk.
(And to be honest, I believe most of this safety advice is aimed not at DIY people, and not even at people who occasionally have to solder something at work, but to have a stick that will prevent employers in soldering shops from creating very unhealthy conditions for their workers.)
I would say that the Arduino advantage is that it's truly out of the box. ESP8266 is close, but it's not that easy.
If you want an easy IoT dev board, I will always recommend the Particle Photon (no affiliation). It's $20 and has really great documentation. It will do OTA updates out of the box once you've set it up on your network using a smartphone. It's a separate IDE (cloud based, or you can get an offline one), but you still use Wiring and they've retained the setup() / loop() constructs. I have had some issues with devices not connecting to networks using the chip antenna, so you probably need the external one.
Other minor issues - most ESP boards are not FCC/CE compliant. They're just fake stamps on the EM shield. Some of the boards are, but you need to be careful if you're trying to build a product or worry about interference. The Photon, on the other hand, is certified (and they also certified it with a suitable external antenna).
It used to be the case that people were unsure if the logic pins were 5V tolerant or not due to ambiguity in the datasheet and the consensus was to be cautious, but it has since been officially confirmed that they are tolerant. Some other devices (e.g. relays, some MOSFET gates) might require a 5V output level to trigger, in which case you will need a level shifter/transistor, but 5V inputs to the pins are fine (and most digital devices that work at 5V logic levels will be fine with 3.3V logical high due to the way TTL levels are defined).
See discussion here: https://hackaday.com/2016/07/28/ask-hackaday-is-the-esp8266-... and official reply on Facebook (of all places): https://www.facebook.com/groups/1499045113679103/permalink/1...
> Teo Swee Ann i can reply officially here: it is 5V tolerant at the IO. while the supply voltage is at 3.3V.
Yes there are loads of other breakout boards that suck but I found Wemos ones to be great.
Adafruit Huzzah https://www.adafruit.com/product/2471
NodeMCU is good, there's a ton on ebay.
https://www.aliexpress.com/store/group/WeMos/1331105_2571030...
https://m.aliexpress.com/s/item/32765214054.html?spm=a2g0n.s...
https://m.aliexpress.com/s/item/32454217006.html?spm=a2g0n.s...
The soldering iron is the only thing I got state-side. I went with one that has temperature control so I can do lead-free solder.
I believe that the other two sleep modes (modem sleep and light sleep) support waking on GPIO activity, but they don't save as much power.
Modem sleep just disables WiFi between DTIM beacon intervals. In this sleep it draws between about 15 mA and 16 mA current average, depending on the DTIM beacon interval.
Light sleep is like modem sleep, but also turns off the system clock. That gets you down to an average of between 0.5 mA and 2 mA, depending ton the DTIM beacon interval.
In deep sleep, everything is off except the real time clock. That cuts current down to around 0.02 mA.
Two of the sensors I have don't fit in well with that kind of deep sleep.
One is a cup anemometer. It briefly closes a switch once per revolution. Wind speed = rotation rate times a constant. If I just wanted to check the average wind speed every so often, it would be fine--the ESP8266 could wake up and stay awake for a few resolutions to get the speed, send it, and go back to sleep.
It could be hooked up to reset the ESP8266 each time the switch closes, but in high wind that could generate resets so fast that the ESP8266 would not have time to connect to WiFi and send data.
Also, I'd like to get more information on wind gusts, and so really want to record the time of each switch closure.
The other is a tipping rain gauge. It briefly closes a switch for every 0.01" of rain. That one probably could be used directly with the ESP8266 by making it generate a reset on each switch closure. I don't think my area ever gets rain intense enough to make those resets happen fast enough to cause problems.
What I'm thinking of do is relegating the ESP8266 to just dealing with WiFi, and using something like an ATiny84 to handle the sensors.
The ATiny84 and ESP8266 can be connected via I2C or SPI or similar. The ESP8266 can then spend most of its time in deep sleep, being woken every so often by the RTC. When it wakes it can get the accumulated data from the ATiny84 and upload it.
https://taoofmac.com/space/blog/2017/11/05/2130
There are hacks to trigger wake with auxiliary circuitry, but it would be nicer (if more demanding in terms of current) to monitor a GPIO pin.
Your idea to offline sensor handling to an ATTiny is perfect. I'd use
https://www.microchip.com/wwwproducts/en/ATtiny85
as it has timer/counter.
https://www.aliexpress.com/wholesale?SearchText=wemos+d1+min...
Thought I could compete against all the nodeemcu boards.
Once I looked into amazon fullfillment, the margins went way out and I wouldn't make anything... And lose money if didn't sell quickly.
All my gifts were bought from Amazon, mostly for the speed of shipping and arrival. But I may just look closer at aliexpress or banggood to see what they have.
Thank you for sharing the link!
I bought 30 latest revision d1 mini plus a few other shields, payed AliExpress premium express shipping.
The express shipping came out to 20$ (you can play with quantities to maximize items for bulk shipping price from same seller... Like remove one d1 mini to add 4 components to keep shipping price the same or add a few d1 mini till price changes and go back down 1 quantity, it's tiered.).
Item arrived to Canada within 10 days (came DHL).
This was back in November.
https://hackaday.io/project/28527-solved-esp8266-powered-by-...
[0] https://www.aliexpress.com/item/10pcs-3-7V-260mAh-Lipo-Batte...
[1] https://www.aliexpress.com/item/5pcs-Ultra-mini-DC-3-7V-4-5V...
I've used them for kids lights, a chicken coop door controller, remote temperature monitor, and garage door controller. It's nice as a software person to be able to control and monitor real world things exactly how I'd like too.
I did my prototyping on the much nicer (more features added out of the box) esp8266 Huzzah from adafruit. Once I got the code and everything working, I bought a bunch of the cheap ones + the sensors and then went to town. You can manage a fleet of them with the mongoose os stack https://mongoose-os.com/ (note that the fleet management of 40+ sensors is a paid service, but all of the libs otherwise are free and oss).
It's worked very well in my experience, even just as a fun experiment to say that I could.
[0] Javascript is in quotes because it's not a fully compliant javascript engine.
There are also lua implementations that run on a variety of microcontrollers.
Maybe give ~anything else~ one of those a try instead.
But I did try out lua and quite enjoyed it (lua being another of my preferred languages), and never really felt the need to tryout micropython. How is performance with micropython? and how does it differ from "regular" python?
See this ongoing issue on github: https://github.com/espressif/arduino-esp32/issues/653
Unless you need Bluetooth, most people are going with the cheaper board
I had a project in mind of making a smart poster that was open buttons on a flat piece of paper that you shorted with your finger with an id. You'd bind this button to a server event and it would be powered by ambient rf signals.
Gotta read up on this.
Works great with mqtt, and one of biggest IoT home automation communities.
I use about 20 wemos d1 mini boards off AliExpress (esp8266 board) with various sensors
What I have to figure out forexample how to power this thing with semi-prolonged burst say through a cap. I was looking at the specs briefly it's like below 300mA but 3. Something volts for "load draw"
One thing to keep in mind. Your fire insurance might not cover that.
For instance, I have one rigged up across a zone valve on my mom's "dumb" furnace and it's now smart furnace that heats the house up before she wakes up and controls the temperature to whatever tolerance she wants. I have another one running the stepper motor that turns the screw of my $30 DIY star-tracking camera mount. Another is hooked up to a thermocouple that transmits readings from wherever through a MQTT server to processing equipment to characterize oven temperatures, water heaters, or anything else you want to measure. I have other ones hooked to reed sensors that tell my security system when things get opened or closed.
The possibilities with this kind of cheap SoC are nearly endless. I love how many fun ideas become really practical (as in, "Ooh, I could set this up right now using my drawer of ESPs! Here I go...") with this kind of thing.