Go Down

Topic: Bitlash 0.8 is available for download (Read 3692 times) previous topic - next topic


Hello and good day:

Bitlash 0.8 is now available for download at http://bitlash.net/downloads/bitlash-0.8c.tgz

Bitlash is an open source command line shell for the Arduino serial port.  It runs on the Arduino and interprets commands that you type in a terminal window or send programmatically.

Here is a list of updates in Bitlash 0.8:

- Printed output to any pin: You can direct serial output to any pin using the "print #N:" construct:

     > baud(4, 4800)            // talk at 4800 on pin 4 (9600 default)
     > print #4: "ATZ LOL RESETZ"      // prints the string to pin 4

- Arduino 0011 compatibility via #define

- Much improved web site and documentation at http://bitlash.net

- Space and speed improvements: a little faster, a little more space for your code

- Serial to Network Proxy: Stealth beta of our new python serial-to-network proxy

Happy hacking,



Oct 31, 2008, 03:44 pm Last Edit: Oct 31, 2008, 06:37 pm by The_Bongmaster Reason: 1
looks fun but im getting a error on upload:

Code: [Select]

hardware\libraries\EEPROM\EEPROM.o: In function `eeprom_read_byte':

c:/documents and settings/me/desktop/arduino-0011/hardware/tools/avr/bin/../avr/include/avr/eeprom.h:198: undefined reference to `__eeprom_read_byte_1F2021'

hardware\libraries\EEPROM\EEPROM.o: In function `eeprom_write_byte':

c:/documents and settings/me/desktop/arduino-0011/hardware/tools/avr/bin/../avr/include/avr/eeprom.h:293: undefined reference to `__eeprom_write_byte_1F2021'

Couldn't determine program size: C:\Documents and Settings\me\Desktop\arduino-0012\hardware/tools/avr/bin/avr-size: 'C:\Documents and Settings\me\My Documents\Arduino\bitlash\applet\bitlash.hex': No such file

avrdude: can't open input file C:\Documents and Settings\me\My Documents\Arduino\bitlash\applet\bitlash.hex: No such file or directory
avrdude: write to file 'C:\Documents and Settings\me\My Documents\Arduino\bitlash\applet\bitlash.hex' failed

i am using arduino 0012, dunno why its going on about arduino 0011
it also happens if i use 0011


Oct 31, 2008, 05:53 pm Last Edit: Oct 31, 2008, 10:41 pm by justin_Catalana Reason: 1
Hey billroy,

I'm working on a similar project, albeit I was more interested in the actual serial communication than the shell it self.

One problem I had to deal with was syncing of the Adruino and the computer, do you do any flowcontrol or hand shaking to make sure a command that is sent is received?

nice work.



Hi, Bongmaster: Your problem is interesting.  Could you please restart the Arduino software and see if you still get that arduino-0011 message?  Alternatively, you could tweak the code at line 43-ish to switch to Arduino 0011 mode.  Let me know how it works out for you.

And hello, Justin: Thanks for your kind words.  I saw your release with interest.  I believe that bitlash may represent a somewhat "thicker client" approach ;)

Regarding framing and flow control: nothing special.  The protocol is line-oriented and straightforward to automate, especially since you can set the prompt to something distinctive if '>' won't work for your application.

Happy to answer follow-ups.




Hi, Bongmaster: Your problem is interesting.  Could you please restart the Arduino software and see if you still get that arduino-0011 message?  Alternatively, you could tweak the code at line 43-ish to switch to Arduino 0011 mode.  Let me know how it works out for you.

yup tried all them still the same message :( cant think why its doing that.


I can't seem to get it to work, here is some output using screen to connect to the Arduino:
Code: [Select]
bitlash is Copyright 2008 by Bill Roy - http://bitlash.net
See LICENSE for license, README for howto
Pins: d0-22,a0-22  Variables: a-z, 32 bit long integers
Operators: + - * / ( ) < <= > >= == != << >> ! ^ & | ++ -- :=
Commands: boot help if ls peep print ps rm run snooze stop while
Functions: analogread analogwrite    digitalread delaymicroseconds digitalwrite
abs ar aw baud constrain delay dr du dw er ew free map max millis min pinmode pulsein rand2 random sa sr usr

> print "something"
> digitalWrite(11,1)
;           ^
pinmode(11, 1)
unexpected char

Do you know what might be going on?


Hi, Justin:

You might have a look at your eeprom with 'peep', just in case there's something there that looks like a corrupted startup macro.  But that's a long shot.

I have seen dropped characters before, but not using 'screen'.  In those cases, slowing the baud rate to 9600 helped.  You might try this startup macro and then connect at 9600:
Code: [Select]

> startup:="baud(0,9600)"

I will ponder your problem further.  Let me know if the baud rate change helps.

Best regards,



Nov 01, 2008, 12:06 am Last Edit: Nov 01, 2008, 12:10 am by The_Bongmaster Reason: 1
tried removing the old arduino 0011 folder but that doesnt change a thing, i even copied the 0012 folder and renamed it to 0011, not that i expected it to work but wat the hey.

i even looked at the eeprom.h file it mentioned in the error and that made no sense to me at all.
its just not compiling. :(

i really would like to try this out, it looks fun and intuitive.


Justin: Is it possible you have another application connected to the serial port at the same time?  Perhaps the built-in serial monitor, or another copy of screen?.  That is the only case with symptoms similar to yours that has come to mind.

Bongmaster: pondering...  Does a small sketch using EEPROM.h compile correctly on your rig?



i hadnt tried anothr eeprom sketch, tho i should have :S

but i renamed my 0012 folder and extracted a new one, and lo it compiled :)

so im thinking it may be a conflict with the hardware library i have, maybe there is a eeprom lib in there thats causing the problem.

but i got it uploaded to my board now and i'll let u know how i get on :D

thnx for the help :)


I love it when it works.  Thanks for the report, and happy hacking.



Nov 01, 2008, 01:47 am Last Edit: Nov 01, 2008, 01:56 am by The_Bongmaster Reason: 1
hehe i got a bit of a prob with the eeprom, i cant stop the mad flashing pin 13 led thing thats in the startup, it just keeps going and i cannot send a ^C command to it cos stupid hyperterminal is stupid, and im not sure how to do it with the arduino serial monitor.

help please XD

[edit]ok false alarm :P i found a term emulator that actually listens to wat i type :)[/edit]


If you do get wedged with a corrupted startup macro that won't take ^C for an answer, there is a weapon of last resort: you can write and upload a little sketch to clear the eeprom and then re-upload bitlash.

But it sounds like you found a workaround.  Bravo!


would be nice if the arduino ide had a clear eeprom command :3

Go Up