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.

112 comments

  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 hughbar · · Score: 1, Funny

      Do not be ashamed! Spent a lot of time in the late 1970's/early '80s with a Teletype 33 copying out 'Hunt the Wumpus' into a Honeywell-Bull Level 64 mainframe.

      It made me the person I am today, living alone in a basement, no friends, paint-stripper breath, three days beard and a very annoying pedantic way of talking. What, exactly, is not to like? We need to form a club, except that I don't get out very much.

      --
      On y va, qui mal y pense!
    3. 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.

    4. Re:Older people who feel in love with basic on c64 by Anonymous Coward · · Score: 0

      I was like that. Eventually, I grew so loathsome that my _Parents_ moved out, leaving it all to me.
      And that is when I went to work on the rest of the house. Computer Room, Laboratory, Machine Shop, Dungeon, (Nobody has ever seen the Dungeon... sob...)
      I didn't have a Teletype though, I had a Texas Instruments Silent 700. I had 1337 Skills. (This as when "LEET" meant Low Energy Electron Trap.)

      (The above is entirely true, except for the Dungeon bit. What is untrue about it I'm leaving to Speculation.)

    5. Re:Older people who feel in love with basic on c64 by Anonymous Coward · · Score: 0

      When Adma went to work on a dinasur and I learnt basic as part of structured programming in basic we learnt anything that required more than 1 line in the if body then code it as

      if condition then gosub

      and we werent allowed to use goto either.

    6. Re:Older people who feel in love with basic on c64 by TheRealHocusLocus · · Score: 1

      Texas Instruments Silent 700

      You experience a unique feeling of helplessness when you've run through your last roll of thermal paper. Soon into the game you realize that those people on TV who print a little then tear off the printout to show to others are frivolous and wasteful, consigning themselves to this sad fate. So you stop tearing it off, carefully rolling up the output so you can feed it back into the printer upside down and print on what was the (mostly blank) right margin, visually decoding the meshed characters at the center.

      Which is why when I managed to turn my original model I TRS-80 with a direct connect Bell 103 Lynx modem into a dumb terminal by talking to the UART with custom written Z80 assembler code and watched those green characters crawl across the screen, it was a great day, like inheriting a warehouse full of thermal paper. The scrolling was so "blindingly fast" that I could even tell the time sharing service to turn off the 2-3 leading NUL characters at the beginning of each line!

      --
      <blink>down the rabbit hole</blink>
    7. Re:Older people who feel in love with basic on c64 by obsess5 · · Score: 1

      In the mid-1980s, I worked with a lady who had previously programmed a VIC-20 to replace a Telex machine. In the late 1990s, we were building a ground system for a communications satellite; the company building the satellite supplied us with test telemetry from the yet-to-be-launched satellite on a tape cassette along with a Commodore cassette storage device. (Not the earlier device I had for my VIC-20 that looked like a Kleenex box, but the later one that was about the size of a book and had rounded corners and edges.)

    8. Re:Older people who feel in love with basic on c64 by bugs2squash · · Score: 1

      It turned out to be a recording of a marching band though. I almost dropped the cat.

      --
      Nullius in verba
    9. Re:Older people who feel in love with basic on c64 by CaptQuark · · Score: 1

      Ha Ha. So few people will get the reference to that.

      --

    10. 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 :)

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

      Nice post.

      --
      "First they came for the slanderers and i said nothing."
  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. Go shopping at their "store" by Anonymous Coward · · Score: 0

    All those empty listings makes you feel like you're in one of those old Soviet supermarkets.

    I would like a temp sensor please.

    We don't have sensors

    Then I need a spool of white and red wire

    We don't have wire

    Robot kits?

    Nyet

    Silly stuff...

    All our stuff is very serious

  4. Not Dead by Anonymous Coward · · Score: 0

    Basic is not dead, it just smells that way.

  5. Basic is dead by Anonymous Coward · · Score: 0

    Sure, there are outliers, but they'll be dead soon.

    1. Re:Basic is dead by fyngyrz · · Score: 1

      I'm not quite dead.

      I think I'll go for a walk.

      --
      I've fallen off your lawn, and I can't get up.
  6. Re:Just what we need... by Anonymous Coward · · Score: 0

    wasn't it 3k?

  7. 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.

  8. $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.

    2. Re:$3 by Gaygirlie · · Score: 1

      The ESP8266 has only one core, not two. You may be thinking of the ESP32 that has not yet been officially released that will have two CPU-cores.

    3. Re:$3 by yes-but-no · · Score: 1

      it's zero or one... one for utopia

    4. Re:$3 by JanneM · · Score: 1

      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.

      Well, if it really takes off, the school cafeteria sector revenues are going to be hurting.

      --
      Trust the Computer. The Computer is your friend.
  9. Comes around by Anonymous Coward · · Score: 0

    Basic was how you used computers back in the day. The market moved on to boards connected to the computer but basic couldn't access them. Every board came with a one-off expensive development kit, more trouble than it was worth. So now computers are only good for gossiping on facebook, Time to get back to control of the technology.

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

    Comment removed based on user account deletion

  11. Re:Perfect Storm by Anonymous Coward · · Score: 0

    Didn't you know Skynet is written in BASIC?

  12. 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 Anonymous Coward · · Score: 0

      fewer than 6 moths.

      It's a quantity of time so "less than" is correct, although I don't know how long a moth lives. See the OED's guides on when to use less and fewer.

    2. Re:Not less by SeriousTube · · Score: 1

      When talking about moths, fewer than is correct. They are discreet objects.

    3. 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.
    4. Re:Not less by thegarbz · · Score: 1

      Moths are a quantity of time? I couldn't find that in the Oxford dictionary.

    5. Re:Not less by fyngyrz · · Score: 1

      Always ready to raise a flap, eh? I heard they just wing it.

      --
      I've fallen off your lawn, and I can't get up.
    6. Re:Not less by Anonymous Coward · · Score: 0

      No, the distinction is countable and uncountable, but "less than" is used with time. "Less than 6 months old" is correct and, since we're measuring time in moth lives, "less than 6 moths old" is also correct.

    7. Re:Not less by TeknoHog · · Score: 1

      In other words: less than a float, fewer than an int.

      --
      Escher was the first MC and Giger invented the HR department.
  13. 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."
    1. Re:Ob by Catbeller · · Score: 1

      "WRITELN"?

    2. Re:Ob by williamyf · · Score: 1

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

      WRITELN is Pascal, IIRC

      --
      *** Suerte a todos y Feliz dia!
    3. Re:Ob by Anonymous Coward · · Score: 0

      It was in BASIC almost from the beginning, long, long before Little Billy Gates started distributing massively cut down versions of the language.

    4. Re:Ob by Anonymous Coward · · Score: 0

      Yeah, sure.

      It's not in Dartmouth BASIC or ANSI BASIC. I'm not saying it's impossible, but it's definitely not part of any BASIC I ever used.

  14. Re: Arduino kids by hughbar · · Score: 1

    Thank you, you are so right. Programming is fun, not just for some notional neckbearded priesthood. Yes, if one needs to do something 'serious' (avionics, billing SCADA) the approach must be more rigorous (looking at recent electric grid exploits, apparently that's not true of SCADA, in fact), but kids don't normally do that. It's a 'way in'.

    --
    On y va, qui mal y pense!
  15. Re: Older people who feel in love with basic on c6 by Bing+Tsher+E · · Score: 1

    So weaknesses and constraints on BASIC on the C64 impact it's usefulness today?

    I have a BASIC compiler for the PIC microcontroller that produces tight little binaries. It has a nice useful library of I/o functions.

  16. Re:Just what we need... by TheGratefulNet · · Score: 1

    wake me up when they ported the trs80 version of hunt the wumpus.

    "oops, bumped a reset button. the ip address has moved."

    --

    --
    "It is now safe to switch off your computer."
  17. Re: Arduino kids by thinkwaitfast · · Score: 1

    With ~$400, ebay, a laptop and two weekends, you can build every possibly rpi/arduino projects/hardware configration. There are a finite number of environmental parameters that can be measured (temperature, pressure, gasses, voltage, position, etc) and external effectors (voltage, current) are an even smaller set.

  18. Re: Older people who feel in love with basic on c6 by phantomfive · · Score: 1
    Man, if you like it, then use it. Ignore what the world thinks, you'll be happier.

    It has a nice useful library of I/o functions.

    Libraries are usually more important than the language, anyway.

    --
    "First they came for the slanderers and i said nothing."
  19. Re:Arduino kids by Anonymous Coward · · Score: 1

    believing that electronics is something anyone can do

    Electronics is something that nearly anyone can do. That is not the same as saying everyone can do everything in the field (heck, many EEs will never be able to do certain things outside their specialization even if they dedicated their life to it). But that is irrelevant to the situation many people have where they don't need to do something difficult or complicated, just something simple but niche. Might as well complain such hobbyists are not learning Swahili either... because that is also unnecessary for most small projects.

    all those companies charging thousands of dollars for their products are just ripping us off.

    Some rip people off, but a lot of the time it just comes down to targeting a different audience. When you need to do something less commonly done, you often either end up spending a lot more to get something more customizable or something with a larger feature set, which is a waste if you didn't need any of those other extra (or even basic) features.

    This isn't specific to even hobbyists, although in a business setting sometimes it is cheaper to blow thousands on a overkill off the shelf part than make a custom solution. But that isn't always the case. On a project I previously worked on, a sensor had an unusual communication protocol and was usually used with a hand held readout, but one day we needed it to be logged and in a compact spot without external wiring. The company only offered two options: a $2k usb adapter or a higher priced quote to make something custom for us. The hour it took an EE to make an Arduino communicate with the sensor and log what we needed cost us far less time and money. You could argue about there being faster and/or cheaper boards out there or that it would be better to make a custom board, but that would take more time, and hence cost the company more than just using what he had sitting around in a desk drawer. Saving $0.50 on the hardware or a faster clockspeed wouldn't have produced a better result, and would just be penny wise and pound foolish.

  20. Why BASIC by jones_supa · · Score: 1

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

    1. Re:Why BASIC by Anonymous Coward · · Score: 0

      Interpreted language actually made a lot of sense for machines like the C-64, Atari 800, early Apple, etc. I had a C-64 and it booted to BASIC in less than a second. You got immediate response to typing a command. If you really wanted speed after hitting enter, you wrote assembly. At some point, I acquired an actual assembler (as opposed to POKEing in instructions) and it took a while to assemble programs. I also had a Pascal compiler--also painfully slow. In that environment, the immediate response and small footprint of the BASIC interpreter made sense.

      I agree it's a stupid choice now though. IoT idiocy aside, anybody who cares about this stuff has a much faster system they can use to push code to the device. The compilers are fast now. They should just let you push compiled code to the device and be done with it.

    2. 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.

    3. Re:Why BASIC by Anonymous Coward · · Score: 0

      The Jupiter Ace used Forth as a language, with a compiler included into the 8kb rom. And there are some pretty cool forth implementation for several microcontrollers, including avr, msp430, and obviously arm, requiring as little as 8kb of rom and 512bytes of ram, mecrisp being one of them. The Esp8266, with 4Mbytes of flash and tens of kbytes of ram would be even overkill for that, but sadly after 30 years basic still has more momentum and there's little interest in a forth targeting the esp8266.

    4. Re:Why BASIC by Catbeller · · Score: 1

      Interesting. Now processors are so fast and memory so gigantic that interpreted languages make sense again. Compilation was necessary because resources were tight.

    5. Re:Why BASIC by Anonymous Coward · · Score: 0

      I played with both rom basic and rom forth on a microbee (32k ram, 8k (iirc) rom blocks) in the early 80s. Loved basic - it was a great intro language - but despite trying I never found forth to be anything more than an annoyingly pedantic toy language.

      My second language was z80 machine code, not via an assembler but via hand compiled code poked to spare memory locations from basic (trick was: put a big empty rem statement on line 1 of the code, overwrite it with your machine code (poke), then run with usr). After that pointers and such seemed rather trivial, at least once I worked put what all those boxes and arrows in the textbook actually referred to.

    6. Re:Why BASIC by lars_stefan_axelsson · · Score: 1

      The Jupiter Ace used Forth as a language, with a compiler included into the 8kb rom.

      Well, "compiler" is overstating it a bit. The Jupiter Ace Forth (AFAIK) was a TIL-Threaded interpreter language, which "compiles" to a list of jumps. So there's still an interpreter, but it's more akin to interpreting byte code than a more standard BASIC interpreter. The Jupiter Ace Forth had to be, as it didn't save the source for the program but decompiled it for editing. A really neat feature that I missed when I "upgraded" to an Amstrad PC a couple of years later and (among others) F83.

      But those were, in hindsight, good times. I actually dusted off the old Jupiter Ace a year or two ago to show the kids. They were most definitely unimpressed... :-)

      --
      Stefan Axelsson
  21. The ESP8266 microcontroller costs less than $3, by Anonymous Coward · · Score: 0

    The ESP8266 microcontroller costs less than $3,

    The summary doesn't tell me where from though.

    1. Re:The ESP8266 microcontroller costs less than $3, by dacut · · Score: 1

      I'm guessing the $3 price is in volume (10k or 100k+). There are a number of eBay listings under $3, but I wouldn't rely on eBay as a steady supply stream or for good documentation and support.

      My preferred hobby vendors (because they've been supportive to me over the years; I'm not affiliated with them) are SparkFun and AdaFruit. SparkFun has them for $6.95, while AdaFruit has a hacker-friendly version for $9.95 and a surface-mount version for $6.95.

    2. Re:The ESP8266 microcontroller costs less than $3, by mobby_6kl · · Score: 1

      Digikey has them with some minor volume discounts for 10 units.

      Ebay, banggood or alibaba have them dirt cheap. A got a couple boards this way, and they're perfectly fine and well made. In particular on alibaba there are a bunch of $1/unit suppliers, though that's the FOB price and then you're on your own.

    3. Re:The ESP8266 microcontroller costs less than $3, by Gaygirlie · · Score: 1

      DX.com ( http://www.dx.com/s/esp8266 ) also has a good selection of the ESP8266 -- both bare chips and proper devboards. I got the Nodemcu - compatible devboard ( http://www.dx.com/p/esp8266-es... ) myself and it has been fabulous so far. Though, it's not exactly $3 anymore.

    4. Re:The ESP8266 microcontroller costs less than $3, by mmiscool · · Score: 1

      Ebay is the best source. Or banggood.com

    5. Re:The ESP8266 microcontroller costs less than $3, by __aaclcg7560 · · Score: 1

      Alas, Jameco doesn't carry the part. Which is a shame. Since Jameco is in the next county over from Silicon Valley, my orders typically arrive in the next day mail.

    6. Re:The ESP8266 microcontroller costs less than $3, by drinkypoo · · Score: 1

      I'm guessing the $3 price is in volume (10k or 100k+). There are a number of eBay listings under $3, but I wouldn't rely on eBay as a steady supply stream or for good documentation and support.

      I don't think it matters much. There's not that much on the board and they are by definition pinned out a certain way no matter who makes them. I bought literally the cheapest ESP-01s to see if that would be a mistake and no, they're fine.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  22. Older folks?? by Anonymous Coward · · Score: 0

    I'm not THAT old, you insensitive clod!

  23. 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 :)

    2. Re:Trying to google search to buy one of by Anonymous Coward · · Score: 0

      I wouldn't by the -01. The fact that you need to use the the 2 I/O very specifically, because those I/Os control wether the thing goes to firmware mode or not, is pretty sucky. The others with more I/O are not that much expenssive and especially for you first one rather buy one of the -12 modules.

    3. Re:Trying to google search to buy one of by Anonymous Coward · · Score: 0

      Actually, the -12 does require soldering, so maybe choose another module with more I/O and normal pins or get a baseboard for one.

    4. Re:Trying to google search to buy one of by Anonymous Coward · · Score: 0

      Also, at some point you are going to need to update the firmware even if you get one already with nodeMCU firmware (like Lurks said). You are going to need a USB to serial converter with 3.3V level pins. And since it probably can't handle the power requirements of the ESP, you are going to need a 3.3V powersupply. And then whatever sensors and/or relays/leds you want to do with it.

    5. Re:Trying to google search to buy one of by thegarbz · · Score: 1

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

      Not sure what you were searching for but Sparkfun was my number 2 google result for ESP8266. Adafruit is in the top 10 results as well

      https://www.sparkfun.com/produ...
      https://www.adafruit.com/produ...

    6. Re:Trying to google search to buy one of by Anonymous Coward · · Score: 0

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

      Try an Adafruit Huzzah. My favorite esp8266 breakout and beautifully supported by Adafruit, who go the extra mile to add value.

    7. Re:Trying to google search to buy one of by niew · · Score: 1

      "only" one of the 2 available gpio's on the esp8266-01 controls the boot mode, and only at boot time, then it's available for regular use... The other pin is free for general use.

      It's still kind of restrictive :-) , but what I've found these (the -01's) really useful for is with i2c modules... i2c needs 2 signal lines and uses pull up resistors, so normally (including @ boot time) the 'program mode' pin is high for normal boot up... Add a pushbutton switch or jumper on that pin to ground and if it's closed during bootup, it goes into programming mode instead.

      There's a bunch of interesting i2c modules out there; realtime clock , demux, pwm, flash memory, light intensity, temp/humidity, barometric pressure and a bunch of other modules that can all be chained onto the same pair of wires for i2c... There are even i2c modules with extra gpio's to make up for using the only other 2 pins it has for i2c :-)

      Add to all that support for MQTT publish/subscribe and you have a platform that can collect sensor data and publish it to a lightweight message queue via wifi... Pretty cool stuff...

      I wouldn't use (IMHO) the delivered AT "modem" command firmware, or the nodemcu/lua stuff... The Arduino environment now has support for these modules and works really well. Going back to BASIC doesn't really appeal to me :-)

  24. 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.

  25. 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/

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

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

    1. Re:I must be old... by Anonymous Coward · · Score: 0

      Are you Pepperidge Farm?

    2. Re:I must be old... by Anonymous Coward · · Score: 0

      It still is. People writing Cobol, Fortran, and Basic are doing it wrong.

    3. Re:I must be old... by Catbeller · · Score: 1

      We're wrong. The younguns are always right, because. History is a tuxedo mattress mouse. Words have no meaning.

    4. Re:I must be old... by Nethead · · Score: 1

      You are literally correct. We must redouble our efforts.

      --
      -- I have a private email server in my basement.
  27. A new browser scripting language? by Anonymous Coward · · Score: 0

    Easier than JavaScript, but I guess it would never catch on...

  28. Obligatory "Get Off My Lawn" by Anonymous Coward · · Score: 0

    A basic word processor with search, replace, and basic formatting.
    A programmable calculator containing a limited functionality spreadsheet (10 rows, 10 columns, basic math functions only)
    A tetris clone.

    64K, Monochrome green screen, in TRS-80 Model III BASIC (not that CoCo "BASIC" used by those young whipper-snappers on those cheesy white computers with crappy keyboards). Back when a 3"x5" card could hold all your assembly opcodes on one side and all your BASIC keywords on the other. Z80A Machine Code by hand, no compilers to do the dirty work for you.

  29. Re: Arduino kids by Anonymous Coward · · Score: 0

    What a limited imagination you have.

  30. Better use Python by Anonymous Coward · · Score: 0

    There is older and more mature port of Python to ESP8266

    There is absolutely no point in using BASIC when better tool is available.

  31. Re:Perfect Storm by Gaygirlie · · Score: 1

    And now, it is a great idea for newbie programmers to write apps for those internet connected devices in BASIC?

    They don't have to be connected to the Internet, you know? Unless you've got a modem/router running in bridge-mode the devices will by default be running behind a NAT and I doubt most of these folks will go to the length of using UPNP to specifically request for the modem/router to open ports to the devices from the Internet.

  32. I just started playing with these by drinkypoo · · Score: 1

    I am right now messing with nodemcu but it is somewhat flaky so I might go to the Arduino route. These devices are kind of annoying in that if you want to send data larger than a single packet you have to break it up yourself, their TCP stack is shite. Otherwise they seem pretty cool.

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  33. Re: Arduino kids by fnj · · Score: 0

    Programming is fun, not just for some notional neckbearded priesthood

    Playing in the street and playing with guns is "fun". Six year olds driving cars is "fun". Programming undertaken by the clueless results in a mess of bugs and vulnerabilities. Hell, it's bad enough even with the best programmers.

  34. SolderCore BASIC Interpreter on STM32 ARM by Anonymous Coward · · Score: 0

    The Soldercore board+BASIC combo looked very good.
    However, it doesn't seem to have gained enough traction to stay in production.

    The SolderCore board had a STM32 ARM-M3 CPU with an interactive and internet-enabled CoreBASIC interpreter.
    http://soldercore.com/software/corebasic/
    http://soldercore.com/products/soldercore/

    1. Re:SolderCore BASIC Interpreter on STM32 ARM by Anonymous Coward · · Score: 0

      The Soldercore uses a TI ARM chip, not a STM32.
      80 MHz ARM Cortex-M3 (from TI) with 512k of Flash memory and 96k of RAM.

  35. 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.

  36. Lepidoptera by Anonymous Coward · · Score: 0

    "ESP8266 Basic is a project less than 6 moths old"

    It would be more impressive if it were less than 6 butterflies old.

  37. Re:Perfect Storm by caseih · · Score: 1

    I suspect that with BASIC not relying on pointers at all for general function, security for IoT is probably a lot better than when C is used. I don't think your pessimistic comments about BASIC are really valid. Also this BASIC implementation is interpereted, so as long as the interpreter is secure with bounds checking, BASIC programs could well be very secure and correct, much more than many people's C sketches are in Arduino!

    For those interested, there's a project called MicroPython that implements a full-featured Python 3 interpreter on a microprocessor. Like the BASIC chip it's interpreted so it's slower than bare C. But it does let you use all the niceness and rapid development capabilities of Python on a 32-bit microprocessor.

  38. Re:Perfect Storm by Dr_Barnowl · · Score: 1

    Wait until IPv6 becomes necessary...

  39. Why BASIC by Anonymous Coward · · Score: 0

    Why BASIC indeed. BASIC is interpreted and SLOWWW.

    It should use JAVA.

    Java is FAST!

    For more speed, it should run a java machine, written in java, running on a java machine written in java!

    more indirection == more speed!

  40. It was a teaching language pushed into production by plopez · · Score: 0

    As was Pascal. Probably because managers only took one programming course and so t was the only thing they felt comfortable with managing. Just wait the push for "everybody must learn to code" will produce a drive to use a teaching language such as Blocky. I can just see the conversation:

    Tech lead: And so we're looking for a mixed Java/Node development team to push out the App.

    Manager: Why? There so difficult to use, why not use Blocky it's easier. Besides everyone knows Blocky they taught it in grade school.

    Tech Lead: It's easy for some problems but totally unsuited for our application

    Manager: Programmers are smart you can make it work. Besides I read about a WebBlocky project the other day on Slashdot the other day.

    Tech: I saw that too it's in version 0.1.0 and if you read the guy's CV he has never had any training or experience in language design. He started it because, and I qoute, "It's kewl and 7337 and Java and Pythone are crufty and not web scale". He even named programming features based on female genitalia.

    Manager: We made the decision a week ago while you were having your teeth cleaned. That'll just attract more programmers and I am the manager so figure it out.

    --
    putting the 'B' in LGBTQ+
  41. Re:There's already an interpreted language on ESP8 by Anonymous Coward · · Score: 0

    lolz at using heap on mcu

  42. 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/
  43. Re:Perfect Storm by c · · Score: 1

    So, you've got a bunch of devices connected to the internet.

    To a WiFi LAN. Unless you're using some sort of "cloud" library in your application (and it doesn't sound like this ESP Basic thing does), it's no less secure than any other device on your network, and if your network isn't secure then you've got far more tempting targets for an attacker than a microprocessor board.

    Aside from price, that's one of the things that makes the ESP8266 device more attractive to me than one of the various boards that come with some sort of cloud tie-in; it's my decision what it's allowed to do.

    I've been playing around with ESP-12's for the last few weeks and what they're capable of with the libraries available is, for the price, nuts. It's as much work to properly debounce a lousy switch than to build a wireless HTTP server with OTA updates.

    --
    Log in or piss off.
  44. Re:Arduino kids by __aaclcg7560 · · Score: 1

    that electronics is something anyone can do

    I recently breadboarded a circuit to translate the input of a nine-position DIP switch into the output of a four-line BCD (Binary Coded Decimal) using an 74HC147, and a 4511 to display the number on a seven-segment LED digit. I came across a web page with a nearly identical circuit. Based on the comments by the Arduino/RPi kiddies, they have no clue to how the circuit works. One person asked why the BCD lines were inverted between the 74HC147 and the 4511. Reading the datasheets made it clear that the 74HC147 outputs ("0" = 1111) were opposite to the 4511 inputs ("0" = 0000). If you don't understand how the circuit is supposed to work, you're not going to understand the circuit when it doesn't work.

  45. Re:Arduino kids by Anonymous Coward · · Score: 0

    See, all the mod-downs to '-1' don't get what I'm saying at all: I'm not saying microcontrollers or even products like Arduino and RPi are bad, I'm saying I'm sick and tired of these little millennials who are so clueless as to think that you have to use a microcontroller/microprocessor for everything, that anything using analog circuitry is 'old fashioned' and 'useless'; I've had these little shits say 'you can't do anything useful without a microcontroller' which is utter and complete bullshit. Meanwhile they literally struggle to make an LED light without burning it out because they don't even get Ohms Law and DC Theory, let alone AC Theory and RF. Some of you think these products are 'gateways' to real electronics, but considering the current trends in the world, all they're doing by doing all the hard parts is to encourage kids to be lazy and not learn anything at all, while they think they're badass engineers because they can hook up a few wires to some pre-fab electronics and write a few lines of code in a sanitized language. Do you know that I work with so many so-called 'engineers' who, if you gave them a box of parts to make a crystal radio and told them to do it, they wouldn't have any idea how to do that or how it really works? They'd have to Google it. One young engineer I worked with didn't even know the difference between positive and ground on a power supply, hooked up a supply rail to a DUT on a test board backwards, and when I called her out on it she scoffed at me and dismissed me as if it didn't matter at all. Is this competence? No, it's not. This is the world I'm afraid these products is creating: Learning the basics and having a thorough understanding of technology is 'boring' and 'useless', just leap-frog around and learn the bare minimum to do what your boss wants, and who cares about the rest? People wonder why the U.S. is becoming a 'service economy' and why we don't build anything here anymore and this is why!

    Now I'm going to bugger off and not even look at this discussion anymore because 99% of you are just going to continue to flame me into the next Century because you don't see what I've been seeing and think I'm some sort of troll or something. Whatever. Many of you are still relatively young and will have to live in the fucked-up, dystopian world you're helping create by letting the younger generation take shortcuts and the easy way instead of Doing The Work; be sure to enjoy your Techological Feudalism, and be frustrated with all the serfs who can only do what they're told and never able to figure shit out for themselves.

    *DROPS MIC*

  46. Re:Just what we need... by Catbeller · · Score: 1

    Object based programming: the Get-Off-My-Lawn of mathematicians everywhere. Why can't Jenny or Johnny code? 'Cause OO is designed to be nearly incomprehensible to humans without years of careful brain damage.

  47. Is usefull for rapid prototyping by williamyf · · Score: 1

    I am 43 years old, and I learned:

    BASIC when I was 12
    LOGO when I was 13
    COBOL and RPG-II when I was 15
    Pascal (the only language I learned on my own and not in classes) when I was 16.
    C when I was 19
    Shell Scripting (including AWK) when I was 29

    Of all those, I only remember BASIC, C and Shell Scripting.

    If this will let me prototype an idea fast and cheap, then it is welcome.

    IIRC i read somewhere that Ken Silverman (of BUILD engine fame) used to try new algorithms first by coding them in BASIC. If that new ALGORITHM worked out as intended, he would either refine the coding until he got the intended performance, or compile the basic, or recode in C or ASM... So, if it is good for him, I guess is good for me (and a lot of other people).

    Besides, there have been BASIC compilers for a long while, so, if the prototype is a success, I may as well compile, or, if push come to shove, re-write in C.

    --
    *** Suerte a todos y Feliz dia!
    1. Re:Is usefull for rapid prototyping by drinkypoo · · Score: 1

      Of all those, I only remember BASIC, C and Shell Scripting.
      If this will let me prototype an idea fast and cheap, then it is welcome.

      You can program the ESP8266 in BASIC (with this project), C (with the official SDK, or you can use it as an Arduino), or Lua scripting (with NodeMCU). I am just now experiencing Lua, it seems very like C or Javascript but without semicolons, which is to say that it has very little reason to exist but exists anyway. I will probably explore Arduino next, mostly because my current use case involves the Neopixel library, which has been ported to ESP8266. Pretty straightforward stuff, in theory, right? Except that if you want to send more HTML than you can fit in one packet, you have to start playing tricky games. If that's going to be the case, what's the benefit of using Lua? NodeMCU should handle that stuff for me.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  48. Re:Perfect Storm by rthille · · Score: 1

    The Terminator actually used Apple ][ assembly.
    http://mentalfloss.com/article...

    --
    Awesome furniture, accessories and cabinetry in Santa Rosa, CA: http://humanity-home.com/
  49. Re:Arduino kids by Anonymous Coward · · Score: 0

    Some of you think these products are 'gateways' to real electronics, but considering the current trends in the world, all they're doing by doing all the hard parts is to encourage kids to be lazy and not learn anything at all,

    Except that is how gateways work, with just about any hobby. The majority of people will not learn about a topic in depth that they start as a hobby. This is not specific to electronics, and is not something new, but has been around for many decades and probably longer. My grandfather, born in the 1890s, had hobbies that he dabbled in and far fell short what professionals would know or think you should know, but that didn't prevent him from getting done what he wanted and enjoying it as a hobby. The amount of people who learn things in detail is a long tail, and even then, it is still a hobby with finite time that makes it rather difficult to be compared to someone who spent years and school and has decades of day to day experience, regardless of how hard the hobbyist is trying.

    Do you know that I work with so many so-called 'engineers' who, if you gave them a box of parts to make a crystal radio and told them to do it, they wouldn't have any idea how to do that or how it really works? They'd have to Google it.

    Yeah, I've met quite a few engineers that don't know how a crystal radio works without some guidance, but that was also completely irrelevant to them being amazing engineers for what they did work on. One was a walking encyclopaedia of linear filter topologies and amazing at designing distributed element filters, but never concerned himself much with semiconductors and nonlinear components, leaving those for the kids. People prioritize what they need to get their job and projects done, and yet you act like your arbitrary decision of what they need to know about differentiates the real Scotsmen from the fake ones.

    This is the world I'm afraid these products is creating

    And yet the world existed before these products did... which doesn't really help with implying a causal link there.

    just leap-frog around and learn the bare minimum to do what your boss wants, and who cares about the rest

    And yet, people who learn things on their own at great depth still get pinned as learning the minimum by people like you because they chose a slightly different subset of things to learn about than you would have. You complain about crappy EEs existing, but there are also mechanical and artistic types that may know who different fields at depth, and want to pick up some basic electronics for a project or two screw around. If these people only care about what their boss wants, they wouldn't be buying things like Arduinos at all in the first place.

    People wonder why the U.S. is becoming a 'service economy' and why we don't build anything here anymore and this is why!

    And this doesn't make sense at all... if we all knew electronics in super detail, why would anyone be paid to build electronics? Building stuff doesn't require in depth knowledge, designing and developing stuff does. Knowing how a crystal radio works doesn't help you better work on the production line in a plant. Learning about things in depth does however tend to make a person want to actually do things that use their knowledge and be paid for it though.

    Many of you are still relatively young

    And yet you display all of the mentality of a young person yourself, and like many younger people, can't see that. You blame "millennials" for human traits that are close to ageless (at least present in people when I was a kid ~50 years ago). That is the root of the issue I and probably others take of posts like this, that you blame problems on a certain group of people and think they are so different from yourself or others.

    Hopefully you'll grow up enough before you die to realize the value in doing things instead of worry about whether what you do is "Doing the Work" or not, or worse, spending your time worrying if others doing things count as actually doing things.

  50. Re:Perfect Storm by Anonymous Coward · · Score: 0

    I'll get the popcorn :)

    Seriously though I just don't care anymore. If this is the future people want, let 'em have it. And besides: all that quick and dirty basic programming actually sounds like fun (yes I cut my teeth on basic in the 80s), and maybe it will give us some high paying jobs cleaning up the mess during/afterwards.

    Whatever. It's less stressful to just stop worrying and enjoy the ride.

  51. Re:Just what we need... by Aighearach · · Score: 1

    You can get a new generation Z80 chip from Zilog for under $5, or an 8051 for $1.25. You can have 80s computers on a breadboard now. Load up all your old ROMs!

  52. Truth by ArchieBunker · · Score: 1

    People act like analog electronics are obsolete like the vacuum tube. The real world is analog.

    --
    Only the State obtains its revenue by coercion. - Murray Rothbard
  53. Re:Perfect Storm by mmiscool · · Score: 1

    It supports integration with thing speak. Some other cloud services will be supported here soon. It also has a function that can simply retrieve a url and place the retrieved information in to a variable. So there are multiple ways to make it interact with the cloud and personal servers using standard web technology.