Replies: 4 comments 9 replies
-
Sorry to be slow to respond. Busy times. Agreed. It is time to cut over. We have ECMA-419 IO (and beyond) working well on all supported platforms. It is a clear improvement. There are quite a few steps, several of which you note.
We've got several big features for the next couple of months SDK releases, so time is going to be limited for a bit. Maybe we should aim for year's end. In the near term we could take care of some of the easier items, like manifest and doc updates, along with migrating from |
Beta Was this translation helpful? Give feedback.
-
Volunteering my time if you need testers |
Beta Was this translation helpful? Give feedback.
-
Something else for the to-do list here: a C interface to low-level portions of io, especially io.Digital Use-case: I'm writing an HX711 driver, which is a weight scale force sensor ADC chip. It has a clk pin and a data pin. To read the current value one has to produce 25 to 27 clock pulses and read a bit on the data line each time. I'd like to write this loop in C and I now need to refresh my memory on how to pass the io.Digital pin instances to C and then call them from there. Some solutions I see:
(Just to be clear: I'm mainly pointing out that there is the need for a canonical solution for writing C code that uses |
Beta Was this translation helpful? Give feedback.
-
Yes, that's the idea. It is a general-purpose way to associate a C dispatch table with any native host object in XS.
I do the same. The good news is that it is rare that there is a need to dive into C.
If you really need to call the platform APIs directly, that's something else -- there's no portable solution there. That said, the C functions exposed by the JavaScript object should be plenty fast for most cases (just as fast as modGPIO, for example). But, there are exceptions. In that case, you could, for example, still accept the ECMA-419 constructor's options object to configure the IO. From a JavaScript perspective, at least, it would look the same. I can look at getting this done for DigitalBank. I don't think it should be too big a project. If I do that, can I count on you to give it a try? It really helps to have someone using enhancements like this sooner than later, to help shake out imperfect design decisions and bugs. |
Beta Was this translation helpful? Give feedback.
-
Is there a roadmap for moving Modddable properly to ecma-419? Specifically, moving stuff from
examples
tomodules
, updating docs to list implementation enhancements to ecma-419, and perhaps starting a deprecation process for the "old" stuff or marking it as "not recommended for new designs"?Beta Was this translation helpful? Give feedback.
All reactions