I'm starting to get the impression that this may be "relatively" new ground
There are 4 different ways to connect Espruino to the internet right now, and they all use the same basic API. I don't see there's any reason why the 5th way of connecting Espruino should magically have a different one.
Sure there are some extra functions you'll want to expose, but it should be possible to do those in a similar way to the existing ones - and maybe we could tweak some of the existing ones such that they match up better (for instance making the functions appear async on CC3000/WIZnet, and making getIP on the ESP8266 return an object).
It's useful to try and make each single function as extensible as possible. For instance on WIZnet/CC3000, the setIP function lets you set the IP, but also the Mac address (on WIZnet where it's possible), dns, subnet and gateway.
you mention getting a console through telnet. That's a really cool functionality, and it'd be great if that was exposed
... but that should be something that was available for all network adaptor types. As there is already an abstraction layer for the socket API it seems completely nuts to implement the telnet functionality at a lower level so it only works on one device.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
There are 4 different ways to connect Espruino to the internet right now, and they all use the same basic API. I don't see there's any reason why the 5th way of connecting Espruino should magically have a different one.
Sure there are some extra functions you'll want to expose, but it should be possible to do those in a similar way to the existing ones - and maybe we could tweak some of the existing ones such that they match up better (for instance making the functions appear async on CC3000/WIZnet, and making
getIP
on the ESP8266 return an object).It's useful to try and make each single function as extensible as possible. For instance on WIZnet/CC3000, the
setIP
function lets you set the IP, but also the Mac address (on WIZnet where it's possible), dns, subnet and gateway.... but that should be something that was available for all network adaptor types. As there is already an abstraction layer for the socket API it seems completely nuts to implement the telnet functionality at a lower level so it only works on one device.