Hacker News new | past | comments | ask | show | jobs | submit login
TinyPICO – tiny fully-featured ESP32 board (tinypico.com)
306 points by taf2 on July 12, 2021 | hide | past | favorite | 138 comments



Seon Rozenblum is a hard working Australian maker and it's worth supporting him by purchasing his TinyPico.


Folks would be more likely to do so if there were a visible way to do so.

I suspect they'll lose many people that way, since it's not clear the thing is even for sale unless you stumble upon it somehow. Is this an open source make-your-own-board thing where I get a BoM and CAD files? A buyable product? It's not clear at all from the site design.

Disclaimer: The design is responsive. It disappears at lower screen widths. There's a subtle menu in the top-right, and the bottom of the menu hides the "buy" button. It's fine if you're running a full-screen browser window on a desktop.


Thanks for your feedback - I dislike "pushing" the buy button, but you are right that it's hard to find on mobile, so I have added a [Buy a TinyPICO] and [Buy a TinyPICO Nano] button in the main body of each respective page.

Cheers :)


Thank you!

I dislike pushing "buy" too, but I like being able to find it, or at least knowing it's for sale. Most people coming in will have no idea.

Two more proposed changes:

1) "Getting started" presumes I have a device. I don't. That's obnoxious. The first step in getting started is buying a device (or, for other projects, ordering a PCB and a BoM, or otherwise). The first thing I want to know is:

- Is it for sale, or do I build it myself?

- What should I buy? Nano? Normal? Do I want any accessories?

- Where should I buy it?

2) In your github repos, you link to a store. It'd be nice if you said what you were selling in the lik "Or by buying the TinyPCIO or one of our other products on tindie or our own shop." This clearly contrasts with e.g. selling t-shirts and swag, build kits, or otherwise. And yes, many open source projects support themselves in part by selling unrelated swag.


Adafruit sells these, a good source if you're in the US and I think they do ship internationally.


It is a fantastic board. If it was cheaper (and had 16MB variants), I'd use it exlcusively. But regular ESP32 boards are 3-4€ on Aliexpress, so I can't justify it.


Espressif don't make a 16MB variant of the D4, and because the Flash is in the SiP, external flash can't be used. sorry :(


Aren't there 16MB variants of the S3? Plus the built-in USB OTG would be a good fit for the Pico.


The S3 is not out yet, not even close. My FeatherS2 has 16MB of flash and 8MB of PSRAM, and that has native USB. My TinyS2 has 4MB Flash and 2MB PSRAM and native USB and is the TinyPICO form factor. The ESP32-S3 for a "TinyPICO" form factor board will never come with more than 4MB of internal flash and external flash wont fit on a TinyPICO sized board.

I'll have a FeatherS3 and ProS3 out as soon as he ESP32-S3 is released.

https://feathers2.io

https://tinys2.io


his livestreams have taught me more about board design than anything else. also, this is an incredibly well documented board, as he livestreamed much of it and opensourced everything


Awesome project !


[flagged]


What exactly does his religion have to do with this discussion? It is irrelevant!


"Don't feed egregious comments by replying; flag them instead."

a.k.a. please don't feed the trolls

https://news.ycombinator.com/newsguidelines.html


Why is his nationality relevant to the discussion?


It isn't either !


Show HN is for sharing your own work: https://news.ycombinator.com/showhn.html.

It looks like this is someone else's work, so I've taken Show HN out of the title now. If I got that wrong and you're the creator of this project, let us know and we'll be happy to put this back in the Show HN category.


Thanks for adjusting the main topic name. The OP isn't the creator of the project, I am, but it's super cool he posted about it. Cheers :)


Love your work! Spent all of covid learning electronics - always wanted to get into robotics or do something cool so I’ve started with home security and a clock project because I figured they’d be easy starter projects - still working on them 18 months later… but I have managed to get two PCB boards to work so far the most fun has been working with the tinypico - it’s form factor is great- and capability is perfect… anyways saw many posts recently about esp32 and was like tinypico is where it’s at people need to know :)


Besides the size, are there any practical advantages over ESP8266 NodeMCU boards that you can buy on Aliexpress for $2.50? The specs are solid, but the price tag of $25 seems a bit excessive. I'm not big on microcontrollers, must be missing something.


In addition to the regular ESP32 benefits (BT, BTLE, dual core, etc), the TinyPICO is REALLY small and has really good power consumption in deep sleep mode. A lot of the random Aliexpress boards have power consumption on the order of 10-100 milliamps in deep sleep. The TinyPico is more like 20 microamps. Part of that is through higher quality parts (presumably better voltage regulator, battery controller, etc.). Part of that is through a more thoughtful design (instead of having to desolder an annoying always-on LED to reduce power consumption, you can just turn it off in code).


> Part of that is through a more thoughtful design (instead of having to desolder an annoying always-on LED to reduce power consumption, you can just turn it off in code).

I just drilled mine with 1mm drill bit.


> The TinyPico is more like 20 microamps

How does this compare to other ESP boards that are made for low power consumption?


It's the best on the market according to Andreas Spiess's spreadsheet https://www.youtube.com/watch?v=ajt7vtgKNNM


The ESP32 is vastly more powerful than the ESP8266. Dual core, each core is more powerful, it has BLE, more RAM, flash, GPIO - as well as a handful of other useful peripherals (RMT, PWM etc).

Now, the TinyPICO is more expensive than some ESP32 boards but that's because it's been engineered well and is manufactured in Australia by a maker that goes out of his way to support his products.


Look, I have some tinopico boards and like them, but let's be honest. The made-by-espressif esp32 devkit boards are 11 bucks bought from Mauser or Digikey and they are perfectly fine boards from a quality perspective. It is really the $7 (Amazon) to $4 (AliExpress) no name boards that get dodgy.

The benefit of the tinopico is build quality, physical size, more ram (4M instead of 1M if I remember), and battery life, and a three color led on the board instead of 1 color . For a small quantity home project where any of that matters, like a wearable, tinypico is good, if it is a plug in system where a centimeter doesn't matter, I chose espressif, who is the company who builds the chip and does the support (esp32.com) and open sources the dev environment.

In one project where we needed 100 controllers we ended up on esp8266. It was a few years ago ('19) when prices were a little higher. We bought them on AliExpress and had a high failure rate (50 pct?) And still did ok because they were 2 bucks each. After throwing away the doa ones, they were perfectly reliable. Project success, and 25 buck parts would have blown budget.


Three big difference:

* Those cheap ESP32 boards are a massive pain to flash and do dev work on because they use cheap usb serial interfaces or omit them entirely. The CP2104 is much more reliable and the TinyPICO has properly implemented the DTS triggers to put the board into the right mode when you flash it.

* The pico uses a high performance micro antenna rather than a basic strip line so your wifi connection is also more reliable.

* The pico has a much better LDO and power supply - one of the biggest headaches with cheap ESP32 boards is power brownouts during wifi negotiation.


'25mm'. If we are being that picky, my main dev board is the esp32picod4. It measures as 20mm longer than the tinypico and about 2mm wider, not 25mm. I just checked. the picod4 is $11, doesnt have any flash problems, is made by espressif who is worthy of support, has no battery connector or power module. The pico has more pins available. There is a place for the tinypico, and I think it is in wearables, but in most projects those 20mm are dwarfed by level shifters and power supply. Yes, I have tinypicos right here in my desk, they are nice.


Since you are replying to my comment, the $11 espressif made dev boards flash perfectly every time. The 7 buck Amazon ones don't. The 2 dollar esp8266s don't, but that project we only needed one good flash, it was for real live art and we only had one shot.


Are you being paid to write this?

* Those cheap ESP32 boards all implement the exact same transistor based reset for DTR/RTS, they all work with `idf.py monitor`

* There are many options for ESP32 dev boards with an entire external antenna

All that leaves is... the LDO? Brownouts are solved by power caps, or a shorter USB cable. Or providing external power over VIN. Is that really worth double the price?

Like, if you're shipping it in a product you're probably not using a dev board (I hope you're not)

If you're just developing a prototype or tinkering, this is just like Arduino boards. High price, questionable benefit.

If you need extremely low power usage, get a plain module and one of the breakouts that lets you choose the LDO.


Sorry, I don't mean to nitpick, but the Espressif Dev-Kit boards are 2.5 * bigger than the TinyPICO (not 1 cm) and have no onboard battery management - something that most ESP32 users want - and no extra PSRAM. They also have no low current power paths so are terrible at deep sleep. But they are designed as reference boards, not as user facing project boards.

TinyPICO has 4MB Flash and 4MB extra PSRAM on top of the 520k SRAM plus the rest.


I pointed all that out, thanks for pointing out it is 2.5cm instead of 1cm. Battery and size are where tinypico shines, and I mentioned the psram. If you are plugged in and 2.5 cm doesnt matter, I recommend espressif parts.

Esp32 is very common for led controls. Leds are usually plugged in. For those uses, tinypico buys me less than I hoped.


[flagged]


You're posting interesting information but you keep doing these needless accusations. Of course there are people with financial interests defending the project here. You're literally responding to the creator of the board.

They made a board, they're selling it, they're talking about it's virtues, it's not a bad thing. You suggesting alternatives is also not a bad thing, but you make it sound as if there's something nefarious going on.


How on earth is it not misleading to not lead with the fact you're the creator! I'd have zero issue with talking about their product if they lead with that in the comment!

HN is probably 50% people talking about what they do, yet this is the first time I've ever called someone out for this. Like how hard is it to say "Hey, guy who created the board ... <insert exactly the same comment>".

You shouldn't have to play sleuth checking people's comment histories to get such a simple (but important) disclaimer.

-

More weird replies... like where did I say seon posted the actual link? Or remotely imply that?


It doesn't really matter if they're the creator, or someone else financially benefitting from the project. They can just defend the project, and people can form their own opinions. This board is not censored, so everyone can read all comments and make up their own opinions.

I hate that your comments are downvoted so much, when there's good information that would normally be a great contribution, or at least basis for good conversation. If you'd take a slightly less accusatory stance they would've been perfect comments.


I love that they're downvoted so much, the information is easy to find, I have no problem calling out the outright dishonesty of not leading with "I made the thing I'm about to recommend"

And I have no issue being accusatory, in fact let me get more accusatory, how strange is it the other comment that I felt was weird came from a 4 karma account that made it's first comment in 7 years on this post!

-

It's funny because there are literally 6 ESP32 variants in my order history from the last month. There's one sitting next to me running the project I'm debugging.

TinyPICO just went from "It's expensive but if I want to have a USB C port, that's the one" to "I will never buy one".

I'm not saying that as some giant "gotcha!" I'm sure there's no shortage of people who will buy them, but I won't be one of them. Not going to support these kinds of games.


I posted - not seon sorry for confusing you. Just really found tinypico with esp32 amazing and wanted to share with HN… sorry again if I caused you stress


I'm the only owner, designer, manufacturer and financially involved person with any of my boards. If it's not my name on the post, it's not someone tied to the product beyond being a customer.


[flagged]


I posted the article not seon. I just wanted to share with HN a project that I have really enjoyed over the last year that I thought other people on HN would really enjoy - sorry I have caused you any confusion or stress


I wasn't recommending it, I was replying to someone else's comment that inaccurately compared my TinyPICO to an Espressif DevKit.

I don't have to lead EVERY comment with "I'm the developer and..." - That's asinine.


It's not that complicated, if you're evangelizing (which "clearing up misconceptions" on subjective matters like the normal boards being small enough is) you lead with a disclaimer

This isn't some new thing, there are literally tens of thousands instances of "creator here/dev here/CEO here/etc." in comments on HN, this is not a new thing, it's not a huge burden, it's bare minimums to not come across as extremely shady.

-

But then again, 7 year old account leaving its first comment in 7 years doing something similar is what really sets of alarm bells...


Again I posted the original story - I have zero connection to seon, I just really like his work and wanted to share since there has been so much discussion recently about esp32 boards. I only recently got into learning electronics and really found tinypico to be one of the easiest boards to work with. That said I’m super sorry I upset you.


Again, I have no idea why you keep replying to me with these same words. Is this a bot I'm speaking to?

I mean where is my comment mentioning you? I'm literally talking about a comment you didn't make... right?

If anything your strange obsession with repeatedly replying to my comments that have literally nothing to do with you with the same exact text over and over is starting to add another layer to the strangeness here.


nope not a bot - hope you have a better day


Dual core is nice for example when you need a little bit more processing power say for something like https://github.com/atomic14/esp32_audio


The second core is not trivial to use, and espressif 's freertos port has real peculiarities in scheduler issues. Spoken as someone who resolved an issue with led buffering interacting with the network system on the esp32.


A base ESP32 chip has dual-core at $8 each on Amazon though. This is still quite expensive in comparison.


> Besides the size

It doesn’t look that much smaller I don’t think?

Edit: The ones I’m using are about 28x58mm. This one is 18x32mm. My standard one is about 2.8x larger.


While I love all these "how small can we make an IoT board," they're all outside my skillset to actually do something with. Is there a recommended more fully featured board to tinker/learn on?


You could go with something like the Adafruit FunHouse: https://www.adafruit.com/product/4985

WiFi, lots of built in hardware (temp + humidity, light, microphone, buzzer, buttons, LEDs, etc), and CircuitPython means you can program it with a USB cable and a plain old text editor.

More bucks than the "smallest ESP-whatever" dev board, but handy for learning.


And it's shaped like a house? Fantastic!

It may be more bucks, but it's still cheap for the amount of documentation you get. Plus, you only need one, and then you can graduate to the cheap ESP32 boards.


Thanks @adbachman, I’ve been looking at similar items like this for a home automation project that doesn’t rely on Google or Amazin


Have a look at Tasmota. I already run a boad with a BME280 sensor. The ESP32 port is even more featureful, it includes a Python like programing language called Berry.


Can you help me understand this comment a bit better?

Here is what I see, a board that one solders header pins into that can then be plugged into a solderless breadboard where jumper wires are used to attach it to other interesting peripherals.

To me, this seems like the new preferred way of doing "Arduino" which no longer refers to a hardware standard so much as it is an integrated development environment connected to the device of through USB and programmed in a somewhat C++'ish dialect of a computer language.

Typical curriculum for learning is to use pre-existing "sketches" (programs) with pre-existing board or processor specific "libraries" to implement behaviors from the simple (blink an LED) to the complex.

An alternative curriculum/universe are the mBed boards which are supported by ARM (and are pretty much all ARM based boards rather than a variety of architectures like Arduino currently supports).

So my questions would be what are you trying to learn, and what constitutes "fully featured" in your mind?

In my experience some people use these kinds of setups to learn programming and some use them to learn embedded systems. The the programming aspect typically links together one or more assembled "break out" boards with a perihperal of interest and the programming learning is how to code something that combines that breakout boards library with some behavioral code to achieve some goal. Leaning embedded systems often involves actually building one's own "break out" board and writing the libraries that provide a programming API that can drive that board.

EDIT: As it turns out, the third method that these things are used is with a variant of Python which is nominally "Micropython" (official project), "CircuitPython", the Adafruit variant, or "Ardupy", the Seeed Studio variant.

That makes programming things even simpler. You don't even need any software on your computer (just a terminal program to talk to the board).

So getting this from CrowdSupply with the 'triple shield' and you're good to go.

So knowing what you want to learn, and what your level of investment is, helps give a better answer to the question.


One of the best things about ESP32 is that the ARduino layer is just a compatibility layer. I ported Zork to FreeRTOS and booted it natively as a FreeRTOS app on the ESP32, that was massively educational.

AFAICT basically nobody is using python to program these things, just C. Building my own breakout board is crazy. But my friend did build an Arduino from scratch on a breadboard from AVR, etc. Don't see the point- that's all work that doesn't bring me closer to driving my 3D printer.


I run a MicroPython meetup and many of the members use the ESP32. Due to it's rich feature set and low price it's basically the gateway drug to MicroPython...


Definitely not just C. Also most certainly people are using Javascript to program these boards. Espruino is a NodeJS like environment which is extremely featureful and supports alot of peripherals.

https://espruino.com/


I'm interested in low level programming, not electrical engineering. While I understand the logical stacks, registers, pins in and out, I'm not great at soldering. I can stick components on a breadboard, I don't have the knowledge of what resistors I need with an LED, etc. Basically I want to test sensors and motors without needing to lay out the physical circuit correctly or adding to troubleshooting. So either a development board of some kind, or a modular plug-in system.


Cool! That is a great way to start.

If you look at the Crowdsupply page, for $32 + shipping you can get the Pico and a set of 'shields'. The interesting one for you would be the "Grove" shield.

"Grove" is a connector / pinout standard that was created and supported by Seeed Studio (see: https://www.mouser.com/new/seeed-studio/seeed-studio-grove/ for a video on the infrastructure and ideas behind Grove (also see the Seeed wiki here: https://www.mouser.com/new/seeed-studio/seeed-studio-grove/)

There are a LOT of different boards you can get with sensors and what not on Grove and programming them in Micropython is supported because that is what Seeed uses (calling it Ardupy).

You will have to solder the pins on the Pico and the Grove shield, but after that you can just plug them together with cables.

Grove typically uses either a GPIO (on/off), and analog I/O, or an I^2C per board. You will need to know enough about those to match up the boards with the right connector on the shield. And then its just programming.

One of the things I've used when I've helped people learn about this stuff is to use the Grove temperature and humidty sensor and the NodeD1 (this is an early ESP8266 design that also runs micro python). A Python program that reads the sensor and then does an http GET on a web server with a CGI that records temperature and humidity. Control flow looks like this:

   while true:
     temp = read_temp()
     humid = read_humid()
     http.get("http://192.168.1.5/environment.cgi?t=" . temp . "?h=" . humid)
     sleep(10)
The same web server has a page that uses D3 to plot temperature and humidity over time. Very simple and easy to do.

(and yes you learn to read the temperature and humidity over i2c, and set the chip up to connect to the wifi hotspot)


Thanks so much for the detailed reply, I'll spend a while digesting it!


Is something like this [1] the kind of thing you are looking for?

[1] https://www.smart-prototyping.com/Qwiic.html

Disclaimer: I have never used these and don't know how good they are.


Most people will use some combination of breadboarding/GPIO-wizardry to achieve what you're describing. I don't think there's an "elegant" solution to something like that.


This is my current favorite dev/project board. It has so much stuff. WiFi, Bluetooth, LoRa, and LTE! It also has pins for analog/digital I/O. This thing is incredible.

https://pycom.io/product/fipy/

Pycom also has various extension boards that plug right in with things like NFC/RFID, GPS, light/pressure/humidity sensors, etc.

Oh, and how could I forget to mention that it can run python directly on the microcontroller (micropython) so you don't need to know C to mess with it. And it does that thing where it mounts as a filesystem and you can just drag python files over to it and it'll automatically reboot into running them.

Highly recommend this little device.


Just be aware that PyCom chose to fork the MIT-licensed MicroPython and re-licensed it with GPL.

As a MicroPython contributor I can't/won't use PyCom's fork because any code I develop for it cannot be accepted upstream.

I do like their hardware, it's a shame they chose to make their software licensing incompatible.


Interesting. I did not know this. I'll look more into it. Thank you. I agree their hardware is awesome so I will look into alternative firmware if possible.


I'd like to work on tailoring a mainline MicroPython build to their boards - to support their peripherals - but it has, so far, been low on my priority list.


At $60+ per, that is a very expensive board unless you really need LTE built in.


they have variants with different feature sets, that is one has all the toys.


See a sibling comment from @yoursunny about "hats." Microcontroller boards tend towards being general purpose, meaning you have to add sensors and actuators to realize any kind of useful application. For some of the more mature boards, there are aftermarket "hats," which are pin compatible boards that contain functionality to suit your interests, such as controlling relays, small to large numbers of LEDs, various physical and environmental sensors, etc. Many of these "hats" are accompanied by code libraries, so you don't have to delve too deep into the guts right away.

It wouldn't hurt to look for a completed project where someone has posted a tutorial on how they did it, and duplicate it. Then you can take small steps towards adapting it in a creative way, e.g., by writing new code for it, or adding more hardware goodies.

Like programming itself, you have to let hardware hacking grow on you. Maybe it will and maybe it won't. If it does, then it can be a fascinating rabbit hole to go down.


> It wouldn't hurt to look for a completed project where someone has posted a tutorial on how they did it, and duplicate it. Then you can take small steps towards adapting it in a creative way

Funny reading this advice after all the Copilot drama.


Admittedly, I come from more of a hardware background, and it has been a tradition going back at least a century, of people publishing DIY construction plans that they expected others to duplicate. Likewise in science, a published paper was supposed to provide enough information for a skilled person to reproduce the work. Also copyrights didn't readily apply to hardware, and things like electronic circuits were actually quite hard to patent.

Maybe life was a little bit simpler in some ways back then. Things that are now being hashed out regarding usage rights in the software world, were taken for granted in the early hobby and scientific communities.

My understanding of the Copilot issue is that it's hard to know the legality of using the code provided by the tool.


You might like a board that has a qwiic or other similar style of connectors (https://www.sparkfun.com/qwiic). The idea is to standardize microcontroller peripherals like sensors, actuators, lights, etc. onto simple buses with shared connectors so you don't have to learn or worry about routing and wiring things up yourself. There are tradeoffs or course but it's a great way to get going and prototype stuff.


The ones that come up from searching "esp32 dev board" on amazon are the most common ones for about $10, lots of guides will reference it as well.


The ESP32 platform is pretty damn powerful and is something of a "kitchen sink" approach to embedded IoT. You won't find too much more capability without going to an SoC.

Here's what I'd recommend - pick up a cheap dev board! Shouldn't cost you more than $10 and a USB cable, and you can get to hacking straight away. It's easier than you think, I promise!


You can use it for sure. With Arduino, ESPHome or probably others. They are surprisingly accessible - I have very few skills and have a few basic automations and sensors going nicely.

I’m only using a fraction of their power though.


You can get just a regular Arduino variant, but really this is not that much different. Feature rich, for sure - but still at its core something you can just use like a basic little Arduino for basic stuff.


There is plenty of software for the esp32, knowing a bit of C has never hurt


I had to write C for the first time to get arbitrary text scrolling across a random 4x7 seg display I had left over from another project. It was tougher than I thought it would be, but getting the tooling set up with VSCode was tougher. There was a big sense of accomplishment that came from getting code running on something that doesn't look like a computer though, very rewarding.


I find the M5StickC is good for this


Raspberry Pi Zeros are cheap, easy to find, featureful, and user friendly :)


Eh, if you're running Linux it's a computer with GPIOs, not an embedded device, though.


Yes - the new Pi Pico and its RP2040 family are more comparable to the ESP32, though it's a bit of a shame the Pico boards currently out don't have any wireless connectivity options.


I love the TinyPICO and use them in lots of my projects, and Seon is always helpful if there’s any issues. He’s put a lot of effort into this board and it shows.


Seconded. Also check out the FeatherS2, designed by the same dude: https://feathers2.io/

I actually like the FeatherS2 for one reason, which is that it presents itself as a USB storage device and you can just drop Python files into it. Easier than the `ampy` stuff you have to do with the TinyPICO, and it comes with a "Stemma" port that you can wire up most Adafruit/Sparkfun sensors to. And it has mounting holes, which are a godsend if you want to make a proper 3D printed case for your project.

The only downside is FeatherS2 is CircuitPython and TinyPICO is MicroPython, and you don't get threading on CircuitPython.


You can use MicroPython on the FeatherS2 :) Obviously no USB mass storage mounting, but code compatibility with the TinyPICO .


Thank you for posting this, you tipped me over the edge to buy a FeatherS2


... also check out the TinyS2, which has the form factor of the TinyPico, but it has the ESP32-S2 SOC

- https://unexpectedmaker.com/tinys2


> presents itself as a USB storage device and you can just drop Python files into it.

Now that's really convenient. I'm creating a smartwatch with custom laser micro-projector, and would like to add such feature.


I've always wanted to try getting into iot and see if I can set up a small network of sensors each attached to one of these tiny low power boards and see if I could operate them using some sort of energy harvesting so they'd be mostly maintenance free.

If anyone more knowledgeable would like to share their insights or favourite ressources on the matter I'd be really interested.


MQTT is very good for this. I had a hairball of a raspberry pi setup driving a distillation process. I bought a ten pack of NodeMCUs (esp8266 but same basically) and moved all of the hardware off of the pi and distributed it across 4-5 of the little dudes. All comms were MQTT over WiFi and it worked great. (NodeRED was fantastic driving all of that, and i used Tasmota on the NodeMCUs, theres an ESP32 build for that.)

For low power you can obv turn off radio when youre not using it. Probably some simple way to sleep/shut it off completely as well.


BLE should draw less power. Wifi is too power hungry to run on batteries. I first bought two Shelly wifi sensors but then switched to Sonoff Zigbee enabled sensors because the wifi devices only send a couple of samples a day. BLE a better choice but unfortunately most consumer IoT BLE enabled sensors come with proprietary junk and encrypted protocols (Xiaomi, looking at you) most of them are not worth the hassle.


Most efficient & easy would probably be a nrf52840 (you can get the nrf52840dongle for $9, it has a wide voltage range and low power sleep modes and USB).

You can communicate over the 802.15.4 radio which is very low power compared to WiFi.

I'd use RIOT-OS, Zephyr has official support from Nordic, but that's what I'm familiar with: You can create a 6loWPAN network where each node gets an IPv6 address, they can communicate to the IPv6 world through a border router which would be another nRF52 Dongle where the USB serves as an USB-Ethernet Uplink that you plug into your router.

You could then use CoAP to send the data to a server somewhere (or just plain UDP) and sleep most of the time.


Do you know if similar modules working on sub-GHz bands exists ?


Dresden Elektronik and Embit have some sub Ghz modules, but Embit only supports Zigbee and different Atmel protocols, TIMAC and Wireless M-bus.

https://en.wikipedia.org/wiki/Comparison_of_802.15.4_radio_m...


There are single chip solutions like the SAM R30 but `samr30-xpro` is a bit more on the pricy side and I'm not aware of any cheap boards with the MCU.

You can use SPI Radios though (if you don't want to design a board yourself). CC1101 isn't IEEE 802.15.4 but if you don't want to talk to third party modules that shouldn't matter.

AT86RF215 is a dual-band chip with pretty good range, but besides the official (expensive) eval board, there is no ready-to-buy board. You could manufacture them yourself though. [0]

Of course there is also LoRa which would likely be enough for your use case. It just has a much lower frame size.

[0] https://github.com/maribu/at86rf215-breakout


I followed a project named parasite https://github.com/rbaron/w-parasite

I made a small MPPT solar harvester with a 0.47F supercap. This system reports soil moisture without using battery. It works even when weather is cloudy.

Hope this gives you some insight.


Would you mind sharing information about your MPPT system ?


The easiest way to go would probably be getting an ESP8266/ESP32 board and using ESPhome with it.


For low power communications I'd consider a 433 MHz module. Many places sell them. Here's one from Sparkfun [1].

To receive, you can buy corresponding modules but I wouldn't bother with that. Get an RTL-SDR dongle for whatever computer you want to process the data on (an RPi is great for this if you don't want to keep your desktop on all the time to do it), and use the program rtl_433.

The 433 MHz transmitter module simply sends a 433ish MHz continuous signal when its data input pin is high and does not send when the input pin is low. You encode your message into a series of pulses of the transmitter.

For example, for a project I'm doing using one of these transmitter modules I've currently got it on an Arduino for testing. Here's the Arduino code to send a message.

    #define CYCLE       1000
    #define W_0         600
    #define W_1         400

    #define INTRO_1     1500
    #define INTRO_0     1500

    void send_message(char * bp, int n)
    {
        digitalWrite(RADIO, HIGH);
        delayMicroseconds(INTRO_1);
        digitalWrite(RADIO, LOW);
        delayMicroseconds(INTRO_0);

        while (n-- > 0) {
            int b = *bp++ & 0xff;
            int m = 0x80;
            while (m != 0) {
                int w = (b & m) ? W_1 : W_0;
                digitalWrite(RADIO, HIGH);
                delayMicroseconds(w);
                digitalWrite(RADIO, LOW);
                delayMicroseconds(CYCLE-w);
                m >>= 1;
            }
        }
    }
That sends a message starting with a 1.5 ms pulse and a 1.5 ms gap, and then n bytes of data where a 1 is a 400 usec pulse followed by a 600 usec gap, and a 0 is a 600 usec pulse followed by a 400 usec gap, so 1000 bits per second after the 3 ms prefix. (The actual timing is a little longer, because of overhead).

My current test messages all start with "TZS", are 12 bytes long, and the last 2 bytes are a counter that simply increments every time I press a button. Adding this to an rtl_433 config file makes rtl_433 recognize those messages and print the count:

  decoder {
    name        = TEST,
    modulation  = OOK_PWM,
    short       = 424,
    long        = 624,
    reset       = 1500,
    sync        = 1528,
    bits        = 96,
    match       = {24}0x849083,
    get         = count:@80:{16},
  }
 
rtl_433 can then do a variety of things with the message, including saving to a file, sending to an MQTT server, sending to syslog, and sending to an Influx DB.

[1] https://www.sparkfun.com/products/10534


This looks like a suitable ESP32 version of the Teensy microcontroller dev boards. And even better, they're open hardware. Excellent!


The Teensy is quite different, I don't think some of its famous audio/DSP applications could be ported to the ESP32. Hoping to be wrong though.

This synth for example is entirely built around a Teensy.

https://electrotechnique.cc/

Don't miss the demos!


It's not (nearly!) the same but if you're interested in audio applications it's worth noting that I2S support was added to MicroPython recently - and will work on the TinyPICO.

https://github.com/micropython/micropython/pull/7183


The next page over has an even smaller version:

https://unexpectedmaker.com/shop/tinypico-nano


Wait so 'nano' is the smaller version of the 'tiny' 'pico'?!


PICO in TinyPICO stands for PICO-D4, the ESP32 variant used on the board.


Sure, but it's not like that's a coincidence, they're surely using that to mean 'very small, D4'. And even if not, it just seems like an odd choice of name to me to have it consist of three words all meaning varying degrees of smallness.


The ESP32 modules with FCC certification appear to all have RF shields over sections of the board with the antenna outside.

It's possible the space saved by omitting an RF shield will foreclose any certification.

Okay for prototyping if you are don't mind polluting your local luminous ether, but check before planning commercial use.


Following his Charmhigh PnP saga was a bit painful so I'm glad that his Neoden has so far not let him down too much. The issues he's had with JLCPCB are interesting cautionary tales I never would know about otherwise (changed gerbers etc.)


Can anybody update the EspUSB design with the ESP32 chip?

https://github.com/cnlohr/espusb

It's an even smaller board that fits inside a USB port. It's good for making a Raspberry Pi pocket-sized. I use it as a WiFi keyboard for typing Chinese. It's much easier to use handwriting recognition on my phone for characters that I don't know.

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

To get the EspUSB built, I had to download the KiCAD designs, generate Gerber files, guess the BOM, email back and forth with PCBWay, pay 70 EUR for 3 units, and have a stable address for them to ship to. And I still had to solder on serial wires, boot into Ubuntu, build and flash the firmware myself. The whole process took a couple of years. I'm starting that process (guessing the BOM) for the HDMI-PI now, but discovered that I also need to design an adaptor from MIPI-iPhone LCD connector so it will probably be another year or two before I finally get it built.

After the long process of having custom hardware built, I thought I'd write about it and maybe get some more built and sell them online. But I was scared away by FCC regulations: I could be sued for $100,000 or more if I sell a WiFi device that isn't certified, and it costs $10,000 to get the certification. So I gave up on trying to make it easier. Hardware is hard.


Get a pre certified board! Wroom32 are pre certified.


Pre-certified boards don't fit inside a USB socket.


Ohh yah it’s too big :(


it's 9 dollars more expensive than an equivalent Amazon/Alibaba-sold ESP32 dev board with a display , and the size only drops 15mm in length and 7mm in width.

i'm going to buy one because I know how rough it is to compete as an individual in that sector, but admittedly I don't see much point in the design.

If a designer is in such dire-straits to get an ESP32 to fit somewhere and they're dead-set on a dev-ish off-the-shelf board, they'd probably chop the USB interface -- especially on a WiFi/BT-capable board -- much like the designers did on the 'LILYGO T-Micro32'; it makes development a tiny bit more cumbersome, but the wireless interfaces make it doable even without a custom pogo-pin style interface or equivalent.


Thanks for your thoughts, but just to clarify - the 'LILYGO T-Micro32' is not a dev board with USB chopped off. It's just a PICO-D4 chip and antenna. It's got no Serial2UART, no USB, no LDO or any power management, no battery management - it's got nothing. It's just a D4 SiP on a PCB with an antenna and an RF shield. No different to a WROOM-32 module.

You can't do anything with it unless you put it on a carrier PCB and add all of the other stuff yourself.

Seems to be a lot of confusion about what the Micro32 is and what it's not.

This is a dev board with USB taken off: https://www.tinypico.com/tinypico-nano


There are downsides with the cheaper boards, in addition to size, such as idle power consumption which is typically hideous. Virtually all of the inexpensive boards are just warmed over (or exact copies of) reference designs. He actually is sweating the details to try to make his board the best version it can be for those wanting a better dev board but not wanting to go as far as designing their own. But sure, if cost dominates everything else, his stuff is more expensive.


Here's my favorite thing I saw with a cheaper board: Lilygo/TTGo makes a number of boards with built in Eink displays. Eink is awesome for many reasons, one of which is that the display only uses power when you're actively changing what it shows.

Should be great for low power applications, right? NOPE! First off, their official docs were totally wrong about what battery connector the board had. Then it turns out that the board has horrible power consumption during sleep, which is only partially mitigated by melting off the always-on power LED.

Adding insult to injury, the voltage regulator on the board is actually one that was intended for portable battery packs. When current draw goes below a certain level for 5 minutes, the voltage regulator just turns off. Any attempt to deep sleep for more than 5 minutes causes the board to commit suicide.


They're not all bad. My current favorite is the Firebeetle from DF Robot. At $6.90 a piece, comes with a JST 2.0 connector for a 3.7v lipo battery and, more importantly, runs using 10 μa in deep sleep easily. (Measured on multiple boards). Finally, is well documented and has great support from the supplier.


Forgot to mention to buy direct as they charge extra when bought through Amazon. https://www.dfrobot.com/product-1590.html


Does anyone have any experience with high reliability applications with these types of boards? I'm thinking closer to consumer or industrial products, but not person-rated vehicles or medical applications. It seems that these are quite capable boards and designed for accessible and more rapid development, which could be great for getting some projects/products off the ground with lower development risk (as long as we aren't just substituting in hardware risk).


Another development board I’ve been looking at communicates with your old Android phone to use the phones built in sensors called SensoDuino.

Has anyone on HN have experience with the SensoDuino?

https://www.instructables.com/SensoDuino-Turn-Your-Android-P...


Here's a link to the Crowd Supply page:

https://www.crowdsupply.com/unexpected-maker/tinypico

Either I overlooked it or he doesn't have it on that page.


The buy page is linked at the top [1]

It's worth click through to -- depending on where you live another vendor might be considerably cheaper for you.

I'm in the US and Adafruit worked out to be ~$10 cheaper than CrowdSupply for me with shipping and tax.

[1]: https://www.tinypico.com/buy


This looks great. It's the smallest ESP32 board I've ever seen.

There needs to be an ecosystem of "hats" such as OLED screens and environment sensors and buttons, so that it's easier to build simple projects.



The Lilygo TTGO Micro32 module with the ESP32-PICO-D4 chip:

https://www.amazon.com/dp/B07RLLY5WZ

https://www.aliexpress.com/item/32869180373.html

is smaller - just 19x13mm! Though it doesn't include USB connector, power supply, USB-serial IC, etc.

It's used in the Open Smartwatch project (https://open-smartwatch.github.io/).


This is a better comparison - full dev board, just add your own USB connector of choice . https://www.tinypico.com/tinypico-nano


That's a module - it cant be used for anything unless you mount it to a bigger carrier PCB and add all of the extra components.


Still looking for a microcontroller that can fit on my wrist [watch-like form factor] with built in microphone, deep sleep, quick wake, and quick push audio to wifi or BLE...


You want the lilygo t-wristband


Ah finally found one! Looks great!


How well does the wifi work? I can't at first glance see any sign of the antenna, many ESP32 boards have a trace antenna carved onto the PCB itself.


The white block at the end of the PCB is a 3D Antenna - much better performance over a PCB antenna or 2d chip antenna.


I have a dual core 64 bit RISCV Pico style board siting on my desktop until I can figure out how to build a bare metal operating system for it.


> ultra low current use, dropping as low as 20uA

In the low power world where I live (NB-IoT on battery for 10 years) 20uA is way too much. Standard is 5uA.


That's absolutely nuts :) I love it.

I wonder if we're going to see more and more edge computing in IOT sensor networks.


The name is hilarious in Chilean Spanish


Bought one. No time for it, but how can you not support this Aussie maker.


It's a waste of space and components to include USB-UART and USB connector on a board that is supposed to be tiny.

Same board without those two components would have been much more versatile and even smaller.


While I fully understand and support the underlying idea, I can't stop thinking that the biggest advantage to the Uno and the RPI aren't their hardware efficiency. It's more their ecosystem efficiency. So the form factor is very very important. Maybe even more as everything else. The usual way is to make something better yet compatible, then leverage your own ecosystem to try a different form factor, which can fail without taking down your whole product line.

In the very same way as the infamous xkcd https://xkcd.com/927/




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

Search: