-
I think @DrAzzy makes a good point with the power pins. Could an option be to extend the board's length by, say, two pins and have gnd and 3.3V on both sides? Then there's a bit more room for the usb plug, component selection, and maybe a few pins on the end of the board. It's obviously a trade-off for 5mm of extra length though.
Another thing with space, I've squeezed a few more things onto one of my boards before by having the usb connector, the fuse and the diode on the bottom of the board. The usb 5v needs to go through the fuse and diode before it goes anywhere else, so if it was handy for the routing in my particular case.
-
@Gordon I think running off a separate 5V simultaneously would be a niche case, so there's no need for mosfet or diode. If anyone wants to safely add a battery supply, they'd just need a diode for the battery voltage. I noticed this Adafruit board does it like that and it's a great minimal power supply setup:
https://learn.adafruit.com/system/assets/assets/000/029/703/original/adafruit_products_schem.png?1452721271A bare bones espruino sounds great. Kind of like an arduino pro mini. I think espruino could really do with a cheaper model for once you've done all your prototyping and you just want to put it in something and leave it there.
-
@Gordon have you thought about keeping the same pins as the pico to try and keep some similarities between the boards?
Have you considered going for a slightly bigger board in exchange for cheaper larger components? I imagine shrinking things like crystals would bump the cost of the board up by a few dollars.
-
@Ollie there are plenty of ESP8266 boards that you can buy, I'm not sure that there's much to be gained in having an espruino specific one.
There's also some advantages in having a chip with more functionality, hardware spi/i2c etc, multiple ADCs, more I/O, etc.
Not to mention that if @Gordon is selling a board, I'm sure he's going to be doing something he can be in control of the quality of. He wrote Espruino for STM32s and I imagine it'd take plenty of effort to keep up the stability and quality of the official builds. The ESP8266 firmware is going great (I'm planning on using a couple of ESP8266 boards at home) but it's not feature complete yet and very much depends on the contributions of other people to keep up with bugs and features. I think that Gordon's set a high standard for the official boards and their firmware, it'd be difficult for him to maintain it for a completely different chipset.
-
@Gordon last I checked the Onion needed an old version of node with a bit of effort put into getting it compiled. I haven't paid much attention though, espruino kind of stole its place for me. :P
-
There are a lot of kickstarter boards based on OpenWRT that would probably benefit from Espruino, either because node isn't working on them or because Espruino + IDE are a better fit than node. The one that comes to mind is the Onion Omega, but I know that tiny OpenWRT wifi boards
are all the rage, each with their own communities, so might be an easy way to grab some interest in espruino. -
I had a look at those, looks like the fleafpgauno IS the arduino, it's an fpga emulating an arduino compatible chip. The shield is programmed by an arduino, but as far add I can tell it only interfaces with the flash, you still need to use your computer to create the bitstream for the fpga. I don't think there's any value in replacing the arduino with an espruino, it's just doing some translation and you don't interact with it at all.
I've previously wondered whether it'd be possible to write javascript and have it translated into logic and programmed into an fpga, but due to the bulky toolchains needed for fpgas and the difficulty in mapping javascript to some sort of hdl, it seemed like a lot of effort for very little gain.
-
@Gordon - wow, sounds like some pretty significant challenges to getting funding through third party hardware, and that's not even considering the messy stuff like deliverables and legalities. I suppose you'd need to land a spot in a seriously large quantity or high margin project to make it worth the time and trouble.
-
If not ST, how about other board manufacturers? I'm thinking specifically of kickstarters for wifi capable stm32 boards, like the wifimcu, or the currently running Redbear Duo one. A lot of these kickstarters are trying to launch new hardware, but then market all about their software. I'm sure that some would be up for commissioning official espruino compatibility (especially if already using a compatible chip, but they just need peripheral support and a badge saying it's official).
-
-
Thanks @Gordon! Looks great, nice readme!
Looking through the to-do section, I'm not sure if it's worth adding a file watching feature, since people will have their own that they use (maybe with gulp/grunt and their own development environment).
Something that could be useful would be to write to a file instead of to the espruino board. As in, it grabs all the modules from the espruino website, assembles the "addcached" call, minifies, and then writes all these commands into a js file for someone to be able to upload later, or keep a copy of, or to debug. Basically, to act like browserify. :P
-
I think this is what you want: https://github.com/espruino/espruino-tools
It seems to work well. It handles module loading off the espruino website, but if you have local modules it won't add them for you. If you can get something to bundle your code into one file (like browserify does), then use espruino-tools to send it across, you should be set.
-
-
Thanks! Espruino is really what got me to jump from doing these with a Atmega328. Being able to plug in and start talking to sensors using a console interface (plus javascript!) really made prototyping a blast.
Thanks for the suggestion of the usb dfu bootloader, I gave it a go this time and it worked great.
-
An updated version of my board, using cheaper crystals, usb mini (much sturdier), no more 1.27mm headers and hopefully better trace routing for decoupling (although I have no idea how to check or if I'll ever care). Unfortunately all the silkscreen labels didn't make it onto the board, not sure if they were too small or overlapping parts. Soldering the mcu is getting much easier with practice, it's actually a bit easier than doing all the capacitors! Now I'm just waiting for some daughter boards to be fabricated: a neopixel backpack, a 2x mosfet output, an adjustable boost regulator and one that has a temperature sensor, voltage divider, led and button.
-
Personally, a paypal button would appeal most to me. For most things you pay for online, they'll have a nice easy paypal button that's almost automatic to click before even thinking about the other payment options.
A couple of things that might help, based on the conversations above... People will usually prefer to use something official and simple, especially if they're not as savvy with compiling or dealing with binaries. If you focus on getting your boards set with the best features, especially exclusive things like the bootloader, tv, IDE support, and market these advantages, then a large subset of buyers would rather buy the board that it all comes built into, not the one that they'll have to work on a bunch to get some features working, or use a third party binary. Not all of us are comfortable jumping intoa world of github and makefiles!
Also, I've got a Nucleo board at home (a pico too!), but I shouldn't expect you to tiptoe around breaking anything on it while you're releasing new builds. As long as I've got a build that works on it that I can revert to, I don't see any reason why you shouldn't be aggressive with stripping out features or breaking things for my third party board while you're improving the espruino boards. And even if someone does put the effort into doing their own builds, I'd still prefer to use official ones and that'd be a good incentive to by an official board.
Also, if people are frequently using espruino in bulk for classes our products, it might help to market your bulk discounts more. Maybe even offer a specific pack of 20 or something, with a reminder of the advantages of using an official board.
-
-
-
-
-
-
Maybe using the sandbox should be the preferred method of keeping stable code for people needing it - local backups or downloads of specific github commits.
@Gordon - Can EspruinoTools use local files?
-
-
@the1laz how does node.js handle requesting certain versions? Is it
all done via npm - or can you require("foo@1.2")?The issue for me at the moment is that there is no versioning on the
modules. I'm not 100% sure there should be either as Git commits maybe
make more sense... Someone could easily come up with a historic
modules plugin for the Web IDE that let you choose from a list of
modules, and then let you choose the git commit from a list (which
could also show date and commit message) or maybe even add your own
URL if you wanted to do some development work.Npm handles it all, node just uses whatever is supplied.
Can the web IDE use local files without a http server? If it (optionally?) preferentially looked in a node_modules folder when loading modules, then people could just keep local copies of the modules they use if they want them to stay unchanged. Then they can use whatever method they wanted to manage versions (git, npm, etc.).
@Gordon - I was wondering about why the ESP8266 was the only thing on the bottom. There are so many considerations for designing boards!
Maybe some pads could be added on the bottom for extra power and/or any extra signals that there just isn't space for? If there's space between traces, it's a no-loss solution.
The prototype board looks really good already, I don't mean any of my questions as real issues, just questioning if there's a couple of opportunities to suit more people. The size you're aiming for with this board seems to be a bit of a sweet spot for boards at the moment. Everyone's trying to make things significantly smaller than Arduino Unos (teensy,oak,nodemcu,photon) but not digistump small, and none of the competition are doing anything nearly as cool as javascript-on-board.