-
The 2-months ago was my assembly writing experience. I have no idea when Espruino got neopixel module builtin!
TBH I haven't had a chance to work on any Espruino projects lately... I really want to finish up the two big projects for my room... I just came up with the perfect way to deal with the problem of generating patterns for my pingpong lights and deploying them. But I have a million other projects!
-
There's now a neopixel module builtin? Man, kids these days... spoiled rotten I tell you!
With firmware that old, you'd need to do it like we did back in my day (I'm sure there are some examples here) where you use an SPI peripheral and send4bit() or whatever it's called.
That's how I did it back then, and lemme tell you junior, you never heard me complain!
(heh, in terms of "back in my day" type things - a bit ago, I was modifying the hand tuned avr assembly code in adafruits arduino neopixel library to make it run on 20mhz and 10MHz parts for the new megaavr parts. Fun stuff, you feel like those guys in The Matrix who can look at the green symbols and see what the reality they decribe is. But that was only 2 months or so ago)But yeah - just update the f/w and you should be good. The newer firmware has all sorts of other goodies too.
-
I like the idea of quarterly rounds of this too. Some time I will finish a project, I swear.
Though the fact that it has to be an official Espruino board does kind of limit what projects I'd end up writing up, because almost all of my projects are on ESP8266's or my own clone of the original Espruino board, made in my 2"x4" size with a bunch of protoboard in the extra space and the D-spec part instead of the C-spec one, and all the parts on one side and larger so I can hand assemble them with tweezers. Though I 1000% understand why you have that condition :-P
-
Nope, it's not a fancy adjustable temperature one. It works with common wire, does not work on teflon insulation, for example.
That bit is annoying, because said insulation is also a flaming bitch to remove with cutters too (thin little strands stay connected, and have a lot of strength to them), and I have a huge reel of 6-conductor twisted teflon insulated wire, absolutely beautiful wire except that it's so annoying to strip.
-
Yeah, the image was to show the kind I grew up using - my father had a few of the second kind you posted @Robin but he didn't like them and I picked that up from him. His feeling was that once you got some practice, the kind I showed was easier and faster to work with.
-
Hi all
I'm planning to make (and sell) a shield for the ever-popular Wemos D1 Mini ESP8266 board, which will consist on an ATtiny (I'm thinking a 1614 or 3216 if I can fit it), with serial pins connected to those on the ESP8266,
The idea would be that you'd do all the internetty stuff on the ESP8266 (probably running Espruino, because doing that is really easy on Espruino compared to doing it in C). Then it would communicate with the ATtiny over serial, passing commands/data/etc back and forth. In that way, you'd have the easy web interface from the ESP8266 - but also a set of decent peripherals with multiple good PWM channels, input capture, a DAC, decent ADC channels and lots of them, and so on. ATtiny would be programmed in Arduino C.
Judging interest here - would anyone else buy something like this, or should I just build what I want and not plan to sell them?
One use case (the one that I have currently in operation without a custom board which inspired this) has the tiny connected to a 433MHz RF receiver and transmitter, running my in-house AzzyRF protocol, and it sends all packets received via serial, and can accept a serial command to send a packet. Meanwhile, the ESP8266 keeps a history of the most recent 20 commands and when they were recorded and can return that in response to a GET request, and likewise, a different get request will send a packet specified as a URL parameter. In other words, it's a WiFi to RF bridge. I'm already using it (along with my fauxmo script that provides glue between Alexa and other devices) to control an RF relay box I made which in turn switches on and off two lights, and a dab rig, and turns them off if they've been left on for too long. The ESP8266 side, upon notice of a received packet, can also match it against a list of "key" packets and take actions in response to those (for example, I plan to make it update the external webpage that tracks state of sensors in my room).
Whether I'm building for myself only or others actually makes a difference, because if I'm doing it for myself, I would build it specifically for the above-described WiFi-RF bridge - IE, on-board antennae and dedicated spots on the board to mount the transmitter and receiver modules, and decisions on layout optimized for that application, rather than for general purpose.
-
-
-
How much space is there for other devices in the watch?
I just got the crazy idea that I could stuff a 433mhz transmitter in there (smallest looks like 0.4" x 0.2"), and then I'd be wearing a watch that would know when I got home and send out the signal to turn the lights on and heat up the dab rig.
-
I was raised to have an extreme disdain for that kind of stripper (The one robin and gordon showed a picture of). My father spoke ill of them every time they came up, and presented them as a "well, this might be easier while you're new to stripping wires" type thing - I was raised on these things... of course as I said when I started this thread an eon ago, I have now seen the light. Thermal wire stripping is just such a joy compared to the old way (it was often more than a third of the time a project took to wire up!)
-
-
-
use response.writeHead() and write out the CORS header that way.
I do it in this code - https://github.com/SpenceKonde/AzzyProjects/blob/master/Animate/Version9.js
-
-
-
I know I used to know how to do this, but I've been in Arduino land a lot lately, and now this is puzzling me... I am sure there's a right way.
I have serial data coming in. Each message will consist of a number of characters terminated with a newline.
What I do on Arduino is load the characters one at a time into the incoming message buffer, and if the character is a newline, instead of doing that, I send the buffer off for processing.But on Espruino, I might get multiple characters at once - which means I could get the end of one message and the start of the next. What's the smart way to handle this? I'm sure it's a common thing that people have done, and settled on the obvious solution.
Is there really no better way than using one of the substring functions to cut one character at a time off of the incoming data, and then apply the arduino-style logic? This seems uglier than I'd expect for Espruino.
My initial reaction is that handling serial data on Espruino is much harder than in Arduino land, where you can just pick off a character at a time and easily process it - but I suspect I'm thinking about it wrong.
Thanks
-
-
The question is how to pass commands to the Espruino, and receive info from it, over the internet... without exposing the Espruino to incoming connections.
Here's what I've done:
Espruino receives commands by http requests over the LAN - these can either return data or do things.For getting data, there are a number of php scripts (one for each data-getting-request on the Espruino) which, if the request comes from the correct IP address, will take a base64-encoded string (the response from the Espruino), decode it, and store it with apc_store(). And there are an equal number of php scripts that return that data (in the same format as the Espruino returns it, so I can use the same page inside the LAN and outside, by using different URLs depending on window.location.hostname).
For sending commands, there's one php script that stores a command (this would be the url that would be requested from within the LAN to affect the desired result - again to allow the same page to easily work both inside and outside the LAN) via apc, and another which gets and clears this list.
Finally, a raspberry pi within the lan has cronjobs that call python scripts, which get data from the Espruino, base64 encode it, and pass it to the php scripts on the outside webserver, and one that grabs the command list, and if not empty, makes the requests that are specified.
It appears to work, as long as I avoid making two requests to the Espruino simultaneously....
-
I think there may have been a confluence of issues here - it looks like dns wasnt working correctly. I had to switch where it got the time from anyway, so i did that. Also, the wiz550io seems to behave badly when the espruino is reset (losing sockets) and requires power to be removed for an awkward length of time to reset.
If theres a way to reset the wiznet controller from software, i think espruino needs to do that when initializing it. If not, im going to wire up the nRST pin of the wiz550io and reset it that way before i start talking to it
-
-
-
Running my desk lamp code, I'm having a very strange issue....
When powered by the USB port on a computer, it runs flawlessly for days.
When powered by a USB charger, it freezes (setBusyIndicator LED is on continuously) after a short time.
What could cause this behavior?
Code is here: https://github.com/SpenceKonde/AzzyProjects/blob/master/GraphProject/DeskController/DeskController.js
I'm wondering if it's related to the:
USB.setConsole(true);And is getting unhappy because there's nothing connected to the USB. In this case, how can I make it do USB serial if USB is connected, and if not, not send the console to Serial1, which will be connected to something that will be broken by any console output?
-
-
I never made it work back then. Never had much luck with the nrf's