Slashdot Mirror


ESP8266 Basic Interpreter Lowers IoT Entry Bar For Amateur Programmers (esp8266basic.com)

New submitter mmiscool writes: ESP8266 Basic is a project less than 6 moths old. It is open source and designed specifically for the internet of things. The ESP8266 microcontroller costs less than $3, and once the basic firmware is loaded to the device a user can connect to it using Wi-Fi and start programming right inside their web browser. No wires, no software or plugins to install. Just a simple text editor. There is now a community, primarily older folks who fell in love with Basic on the Commodore, who are using it for controlling a variety of projects. The code is amazingly simple and includes commands for interfacing with neo pixels, OLED displays, Temperature sensors, hobby servo motors and of course the blinky LED. It also provides commands for browser widgets that can be used to construct interfaces for the device like textboxes, buttons, sliders and dropdowns. The bottom line is that Basic is not dead, and has finally made its way into the internet of things. Make last year ran a three-part series on the chip (here's part one), but things have advanced quite a bit since then, when people were first noticing that the ESP8266 is more powerful than the tasks for which it was first marketed.

20 of 112 comments (clear)

  1. Older people who feel in love with basic on c64 by Anonymous Coward · · Score: 2, Insightful

    (Blushes)

    1. Re:Older people who feel in love with basic on c64 by phantomfive · · Score: 3, Informative

      Yeah, me too, but remember that C64 BASIC didn't have an else statement, and even the IF statement was somewhat limited, meaning GOTOs everywhere. BASIC is not my choice for programming, even on the C64 anymore (where assembly is actually cleaner, and the assembler can do a good job re-numbering the lines).

      --
      "First they came for the slanderers and i said nothing."
    2. Re:Older people who feel in love with basic on c64 by Anonymous Coward · · Score: 2, Interesting

      "...primarily older folks who fell in love with Basic on the Commodore, who are using it for controlling a variety of projects...."

      There was a time when the C-64, and even the lowly VIC-20, were used for simple Computer Control. JPL for instance used a VIC-20 for positioning parts in an SEU Test Setup, at various Accelerators. How do I know this? I have it. How did I get it?
      JPL was running at the Cyclotron, and their Positioner failed. I got the call at around midnight, they were scrapping the Run. Their VIC-20 had died. I needed to know these things. Running this Cyclotron was over $700 an hour, we were over-subscribed, so minutes counted. Others were waiting.
      I just happened to have a VIC-20, that I used as a Hot Tub Controller. Very easy to do IO stuff on those things.
      Two hours later, my VIC-20 was merrily positioning parts away.
      A few days later, when the JPL Run was over, they asked for my VIC-20, for helping Diagnose what went wrong with theirs. No problem.
      I got my VIC-20 back a month later, dead. No Hot Tub.
      JPL had simply swapped circuit boards, thinking that we wouldn't notice. The Serial Numbers between the PCB and the Case no longer matched.

      Aerospace Corp. and Boeing never pulled that kind of crap. Boeing was actually a delight. They gave me a Lichtenberg Tree, from their Electron LINAC, because of the assistance that I gave them, and Rocky Koga from Aerospace is just aces with me.

    3. Re:Older people who feel in love with basic on c64 by Desty · · Score: 3, Insightful

      It is true... C64 "V2" Basic was my first taste of programming and I was pretty much hooked straight away, even though it was a fairly unpleasant dialect, with line numbers and no auto-renumbering function, only two significant characters in variable names (so "speed" and "spinning" were the same variable, leading to code with awful variable names) and the lack of any commands for controlling the audio hardware or doing anything with video other than writing characters and symbols. The only way to make sound or create sprites (or even change the screen colours) was to use POKE commands to write to arbitrary memory locations (generally through trial and error, as a kid with no documentation, before the web existed).

      Still, there was enough magic there that once you'd really gotten a taste for it, there was no going back. On the plus side, almost every programming language after that seemed really reasonable if not generous :)

  2. Re:Just what we need... by Aighearach · · Score: 3, Funny

    No, this is for those of us who were already brain-damaged by BASIC in the 1980s.

    This is just retro drugs, move along kids, nothing to see here. No, son, that's a... vase with a smaller vase on the side, don't look at that. No, don't look under there.

    I started with Apple Basic, not Commodore. But I had a Timex/Sinclair at home. 2K RAM!!!

  3. Re: Arduino kids by Anonymous Coward · · Score: 2, Informative

    Or, the Arduino/RPi kiddies have something accessible to them to engage and inspire them to learn something more.

    Much like BASIC did back in the day on a cheap computer, inspiring us to learn more about programming.

  4. $3 by rfengr · · Score: 4, Interesting

    The cost is what amazes me these days. This thing has two radio cores, two processor cores, and a host of other peripherals, and it's dirt cheap.

    1. Re:$3 by thinkwaitfast · · Score: 5, Interesting

      I've built things that sold in the 10's of thousands of dollars range and took people years to develop in the 90's that can now be made (often better) by a kid in high school with lunch money. I wonder what the long term affect this has on the economy.

  5. Comment removed by account_deleted · · Score: 4, Interesting

    Comment removed based on user account deletion

  6. Not less by johnw · · Score: 5, Funny

    ESP8266 Basic is a project less than 6 moths old

    fewer than 6 moths.

    1. Re:Not less by swimboy · · Score: 3, Funny

      I don't know what kind of moths you hang out with, but my moths are *huge* gossips. I'd hardly call them discreet.

      --
      Ask me how the Heisenberg Principle may or may not have saved my life.
  7. Ob by Hognoxious · · Score: 2, Funny

    10 WRITELN "FROSTY PISS"
    20 GOTO 10
    30 REM the lameness filter really is a piece of shit

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  8. Re:Why BASIC by dacut · · Score: 4, Insightful

    Whose idea was to choose an interpreted language for the extremely slow 8-bit home computers?

    Because fitting a compiler into the tight memory constraints was next to impossible. The BASIC ROM on the C64 was 8 kB; per Wikipedia, this is what forced Commodore to revert to v2.0 BASIC, which lacked even disk directory listing commands (remember LOAD "$", 8 and how it would clobber whatever you had in memory?).

    Applesoft BASIC, which had these features, used 10k of ROM by comparison. Apple's earlier Integer BASIC was about the same size, but gave up floating-point support.

    BASIC made it easy for beginners (like myself) to get something working. If Commodore had only included an assembler, for example, this would have been too steep of a learning curve for most folks and they would likely have bought something else that did have an interpreter. That said, anyone writing "real" programs wrote them in assembly; you had to resort to extreme tricks to get decent graphics on these systems. If you haven't seen it, I highly recommend picking up a copy of Racing the Beam , which documents all the trickery that programmers for the Atari 2600 (which had weirder hardware but still was 65xx-based) had to resort to in order to make even halfway decent games.

  9. Trying to google search to buy one of by The+Cisco+Kid · · Score: 2

    these, its unclear what is the device and what is an accessory for the device. Also unclear which are legit sellers and which might be spam.

    The the link to the ESP-01 in the make article leads to a discontinued page.

    Anyone got a link to a known reliable vendor to buy these?

    1. Re:Trying to google search to buy one of by Lurks · · Score: 3, Informative

      There's heaps of them on eBay. Just get a NodeMCU 'dev kit'. There's a couple of vendors, nothing between them really. They cost about $5-8 from China. Then use NodeMCU and not this silly BASIC thing :)

  10. true. Probably be hacked, so what happens? by raymorris · · Score: 3, Interesting

    That's a valid point. Before you connect a "thing" to the internet, it would be wise to think about what happens when it's hacked. Unless the code is written by someone trained in security and then reviewed by someone else well-trained, it is reasonably likely that it will eventually be hacked. Internet-connected TVs have been hacked, wifi cameras are frequently hacked ...

    In some ways it's unfortunate timing that the internet has become so pervasive at the same time that simple programming has become so easy you can write software without any training or experience. It's resulted in a lot of very bad and dangerous software on the internet.

  11. There's already an interpreted language on ESP8266 by Lurks · · Score: 4, Insightful

    Since it hasn't been mentioned here. The ESP8266 is no stranger to interpreted languages. The NodeMCU firmware offers a Lua interpreter. It's been around for longer than this BASIC project and is now fairly robust. I have created a couple of projects with it and been pleasantly surprised, particularly with support for the u8glib library. This is just outstanding.

    There's lots of reasons to like an interpreted language on a device like this. That said, the hardware/libraries integration and maturity is way more important than exactly what interpreted language. I feel a tag nostalgic for BASIC but I don't really see the utility over the excellent NodeMCU firmware. There's even an online firmware builder that allows you to select which features, ostensibly hardware protocols and the like, to bake in so you can maximize how much free heap there is. http://nodemcu-build.com/

  12. I must be old... by anchovy_chekov · · Score: 4, Insightful

    I remember when Basic was spelt BASIC, as in.. you know.. an acronym.

  13. FTFY by QuietLagoon · · Score: 3, Insightful
    ESP8266 Basic Interpreter Lowers IoT Entry Bar For Creating Security Vulnerabilities in IoT Devices.

    .
    Just what we need ... a bunch of people who know little about security programming the IoT.

  14. Massive technology unemployment by rsilvergun · · Score: 4, Informative

    We're seeing it in the form of increased productivity rendering jobs obsolete. With fewer jobs people have to work more hours to make the same pay, resulting in yet more productivity and still fewer jobs. The Atlantic has an article on it. tl;dr: Our productivity gains kept pace with what Keynes predicted but hours worked stopped dropping in the 70s, resulting in massive inequality and stagnant wages for workers.

    --
    Hi! I make Firefox Plug-ins. Check 'em out @ https://addons.mozilla.org/en-US/firefox/addon/youtube-mp3-podcaster/