5 ms·
Why do you have to “migrate to higher level platforms and languages”? Assembly is perfectly valid for this application.
by SnowHill9902 4y ago
Why do you have to “migrate to higher level platforms and languages”? Assembly is perfectly valid for this application.
- tomhoward 4y agoIf we could find developers willing/able to do it, I'd happily stick with it. Such people are hard to find, but anyone reading this who is interested, feel free to get in touch (email address in profile).
- GartzenDeHaes 4y agoI imagine it's a lot easier to find someone to hire with python (picopython) or c# (nano .net framework) skills.
- tomhoward 4y agoThat's what other players in the space do. I'd happily settle for C, in which case we wouldn't need to change the hardware much.
- the_only_law 4y agoSerious question, do these run on stuff outside of “toy MCU’s” almost everytime I hear them mentioned it’s in the realm of education, hobbyist stuff, etc.
- dmonitor 4y agoThe Arduino portenta boards are pretty powerful. I just don't see where you would want to use one instead of a full OS
- ddingus 4y agoThe full OS is what blows the power budget.
- GartzenDeHaes 4y agoThat's not my area of expertise, I was commenting on the hiring side. Maybe OP could use those "toy MCU's" as bait to attract some college interns? They might get lucky.
- alfor 4y agoC is much better for this now, you are not tied to the processor architecture and thus can switch to a better/cheaper cpu easily. The cell modem he is using already has a 32 arm cpu maybe even multi-core. 32bit it the new 8bit. C is the new assembly for 99% of code. You can drop to assembly for the 1% where it matter.
- tomhoward 4y agoYep, that's exactly what we've been talking about.
- StillBored 4y agonot tied to the processor architecture and thus can switch to a better/cheaper cpu easily. The core processor arch yes, but for many (most?) of these small embedded systems, a large part of the code is basically device drivers used to communicate with GPIO, a plethera of serial buses, and any number of other devices which vary from microcontroller to microcontroller. So unless you offload all that to a RTOS of some kind (which your then limited to devices the RTOS supports) switching devices isn't easy. And for many things, the RTOS overhead will be the largest consumer of CPU+RAM. That is sorta the beauty of the ardunio ecosystem were much of this has been abstracted into common libraries across a number of device families.
- alfor 4y agoState machines in C work great when you don’t want a preemptive RTOS. I did a embedded project on 8051 like that, we had the legacy code 100% in asm and we moved to C. In the end I think we had about 10-20 lines of asm and everything else in C. You are right switching cpu and thus all the peripheral is major headache, not something to take lightly.
- deleted 4y ago[deleted]
- Johnythree 4y agoIs relatively trivial. Have done it countless times since the early '80's. In fact I find that learning new high level packages much harder.
- blibble 4y agohis company eventually did mobile ports of some of his games I'd be interested in knowing how they did that as it was all x86..!