- Bluetooth transfer folder error fixed in cComCreateBeginDL
First release for AFOL
- Version
- lms2012_v103H_130528
- Reduced tone levels
Corrected kernel source error introduced in v102
- Version
- lms2012_v102H_130524
- Check on characters in filenames
- opARRAY WRITE_CONTENT bug with DATA16, DATA32 and DATAF arrays fixed
- Scheduling blocked non-reentrant subcalls changed
- 3th. party sensor scaling updated
- "Brick Program" app stop motor issue fixed
- Power down screen when WiFi active issue fixed
- Power down LED color set to RED
- opFILENAME GET_FOLDERNAME implemented (to execute "rbf" files anywhere)
- opSYSTEM implemented (for test purpose only)
- opUI_READ GET_LBATT implemented (for motoring battery level in %)
- opSTRINGS VALUE_FORMATTED implemented (for formatted value to string output)
- opSTRINGS NUMBER_FORMATTED implemented (for formatted number to string output)
- SI unit limit on UART sensors removed
- opMATH TRUNC changed to round up
- E-meter mode "ALL" scaling changed
- Bluetooth hinted pairing - bluetooth address only valid once
- Bluetooth pairing changed to use dbus call (to enable connecting to some phones)
- Fixed motor synced issue, when speed set to 0
- Several changes to wifi
Sound tone level adjusted
- Version
- lms2012_v101H_130204
- Live update on datalog is possible on PC when running up to 100 samples per second
- opINPUT_DEVICE CAL_MIN and CAL_MAX changes to accept SI units (in DATA32 format)
- opPROGRAM_INFO OBJ_START bug fixed
- opOBJECT_START bug fixed
- Bluetoothd changed to comply with correct reply to SDP_ServiceSearchRequest
- l2test added to file system to comply with bluetooth testing
- Output check for more that 2 synchronized motors at a time
Enabling bluetooth pscan after pairing only process
- Version
- lms2012_v100H_121220
WIFI reconnect with TCP is now possible
- Version
- lms2012_v069_121219
- Warnings in display after boot now looks fine
- READ_SIZE related to arrays have added NOBREAK
- Motor sync going straight backwards could not regulate down issue fixed
- UI Browser issues related to download and deleting files fixed
Corrected make_ev3_os.sh to add CVS folder in all apps directories
- Version
- lms2012_v068_121214
- Shut down while user program running issue fixed
- Printouts on debug port when connecting/disconnecting USB removed in kernel
- SSID Name truncation issue fixed
Valid IP in WIFI changed
- Version
- lms2012_v067_121207
- opARRAY READ_SIZE implemented
- Daisy-chain, the motors on the lower layers are not stopped when the program ends - fixed
- Daisy-chain, reset on the lower layers when program is started
- WiFi shutdown bug fixed
- Filesystem inconsistence bug fied
- Firmware updated only available through USB
- Motor - program end 100mS delay to float implemented
- cCom byte codes supports dynamic strings
- LIST_FILE handles now allocated from original handle pool
- "IR Control" app updated (Sensor in wrong mode bug - fixed)
- opARRAY RESIZE is now capable to down size arrays
- opARRAY COPY is now capable to down size arrays
- BT status updated in UI if changed (by direct command or user program)
- WIFI status updated in UI if changed (by direct command or user program)
- Download sound issue fixed (waits for completion)
- Bumbed on unmounted touch sensor returns 0 (instead of nan)
- Sys. command BLUETOOTHPIN can only be set by USB connection
- Sys. command CONTINUE_DOWNLOAD returns END_OF_FILE when complete file has been received
- Spaces is allowed in WiFi SSID
- Sound handle issue fixed (tight loop)
- opFILENAME TOTALSIZE - parameter added
- opFILE GET_ICON removed
- opFILE SET_LOG_SYNC_TIME and GET_LOG_SYNC_TIME implemented
- On brick copy limited to folder with maximum 125 files
- Version
- lms2012_v066_121130
- Underscore enabled in paskeys and network names
- "Brick Program" app - 50mS delay after gyro reset to ensure correct zeroed data
- "Brick Datalog" app updated (missing NXT pictures on Color and US sensor)
- "Brick Datalog" app removed from UI (unlock code "opFILENAME(UNPACK,'../apps/Brick\ Datalog')")
- "Debug" tool removed from UI (avaliable on SDCard)
- "Test" tool removed from UI (avaliable on SDCard)
- opFILE MOVE changed to remove destination if destination exist
- Button implementation changed ("scroll" in all apps)
- File download error if insuficient room
- Tacho reset if motor pluged/unpluged
- Bluetooth visible can be changed when connected
Bluetooth name can be changed when connected
- Version
- lms2012_v0657_121123
- "Brick Datalog" and "Brick Program" app updated (keyboard layout aligned)
- "IR Control" app updated (graphics)
- Stable time for connecting output devices changed to 350mS
- File permissions changed
- Rechargeable levels around power management - changed
- "WiFi" app updated (on/off checked, no search when off)
- Four layer daisy chain implemented
"printf" bug in VM - fixed
- Version
- lms2012_v065_121116
- Kernel modules updated with zeroed shared memory
- Light around buttons numbering changed (back to V0.62)
- Virtual temperature rise shutdown implemented
- opARRAY READ_CONTENT and WRITE_CONTENT implemented
- Default sleep time changed to 30 minuttes
- "Brick Datalog" app updated (keep alive when logging)
- "Brick Program" app updated (default sensor color = black, back button skips canvas bug fixed)
SD card recognised also at boot time
- Version
- lms2012_v064_121106
- EnergyMeter mode change stabilized and change time lowered to 100mS
- Datalogging, Same value is being saved for each logging - bug fixed
- opINPUT_DEVICE SETUP - bug fixed (support for 3th. party IIC sensors)
- UI update after download - fixed
- opUI_DRAW BMPFILE clip bug fixed
- Sleep power down shows now the power down screen
- Low voltage power down fixed
- Unsupported files will not be shown in the UI
- Cannot Cancel on BT "Connect?" screen - bug - fixed
- Max number of files/folders per level rised to 128
opUI_WRITE DOWNLOAD_END implemented (send from PC when download is completed)
- Version
- lms2012_v063_121030
- Missing app icon bug fixed
- Orange and red LED light swapped bug fixed
- Download of App DO NOT require adding an icon (default implemented)
- SD card size bug fixed
- Timing, running a program using time get corrupted after XX min - bug fixed
- IIC sensor bug fixed
- Support for EnergiMeter implemented (sensor type 99)
- Ram test byte code implemented
- Bug fixing around motor commands
- Mode 2 bug fixing
- Daisy chain sensor mode bug fixed
- USB starving fixed
- Only fraction of file downloaded - bug - fixed
Program validate accept nan/inf as floating point constants
- Version
- lms2012_v062_121012
- Graphics updated
- opFILE OPEN_APPEND bug fixed
- UART sensor detection changed
- Gyro turntable test program implemented (time from calibrate to read value = 2.2 Second)
- Light around buttons numbering changed
- USB icon implemented
- 0.5 second delay at program end (to help stop motors)
- Long Filenames => Gives an error but creates a folder - bug fixed
- Upper and lower numbering used for light around buttons - changed
- SD_Card changed to use link
- UART write changed
Sound level 0 = silence
- Version
- lms2012_v061_120928
- UART sensor error reset implemented (sensors before EP2 may not function propperly)
- MAX_HANDLES to arrays in one program increased to 250
- Fast datalog file handle bug fixed
- opFILE LOAD_PICTURE removed (use UI_DRAW BMPFILE as replacement)
- opFILE GET_IMAGE removed
- opFILE UNLOAD removed
- opSTRINGS SUB implemented
- opSTRINGS VALUE_TO_STRING changed to return maximal 4 dashes in case of "nan"
- Key click sound implemented
- Startup and power down sounds implemented
- opMEMORY_USAGE changed to return memory total and memory free [KB]
- Direct command reply bug fixed
- EOF on datalog files implemented
- Message box array support implemented
- BT disconnect ingoing connection if outgoing connection is establissed
- Running synced motors and interrupt with single motor command floats both motors before executing new command
Sound noise removed
- Version
- lms2012_v060_120917
- Linux prompt bug fixed (no prompt when exitting debugger)
- Display update limitted to 10 frames per second
- "Ui" updated (handles text files in browser)
- opINPUT_DEVICE CAL_MIN, CAL_MAX bug fixed (init min and max first time)
- LED orange light when warning active - implemented (voltage, current, memory, busy)
- opUI_WRITE SET_BUSY implemented (1 makes LEDs orange and 0 makes LEDs normal again)
- "WiFi" app updated (busy makes LEDs orange)
- "Blutooth" app updated (busy makes LEDs orange)
- "Ui" updated (refreshes so it not always jumps to first folder)
- opTST TST_ACCU_SWITCH implemented
- opFILENAME CHECK implemented
- opUI_READ GET_SDCARD implemented
- opUI_READ GET_USBSTICK implemented but disabled
- opSTRINGS VALUE_TO_STRING changed to insert dashed ("-----") instead of "nan"
- Number of file handles for system commands changed to 64
Boot time reduced to 30 seconds
- Version
- lms2012_v059_120830
- SD card folder copy implemented (popup for overwrite and media full)
- USB stick folder copy implemented (popup for overwrite and media full)
- NXT temperature logging bug fixed
- opFILENAME EXIST, TOTALSIZE, SPLIT, MERGE implemented
- opTST TST_OPEN, TST_CLOSE, TST_READ_PINS, TST_WRITE_PINS implemented
- opTST TST_READ_ADC, TST_WRITE_UART, TST_READ_UART implemented
- opFILE OPEN_LOG alwayes append if filename exist (delete file first if append not needed)
- opFILE CLOSE_LOG append 8 times 0xFF at the end of the log file when closed
- opFILE GET_LOG_NAME implemented
- opNOTE_TO_FREQ implemented (documentation under "Byte Codes"/"VM")
- NXT sound sensor detection bug fixed
- "Test" app updated (display test)
- "Bluetooth" app updated (mode 2)
- "Port View" app updated (NXT color and ultrasonic sensor picture)
"Brick Program" updated (IR remote bug fixed)
- Version
- lms2012_v0581_120822
- Daisy chain mode change bug fixed
- NXT ultrasonic missing 9V fixed
- opINPUT_DEVICE CLR_ALL bug fixed
- Bluetooth connect issue fixed (firmware image scribt changed)
- "Motor Control" app changed (graphics and functionality)
- "IR Control" app implemented
- "Brick Program" app changed (open and save icons flipped)
- opINPUT_DEVICE GET_CHANGES and GET_BUMPS is removed (will not work daisy chaned)
- TOUCH sensors have a new mode 1 called "BUMPS" (will work daisy chained)
- opPORT_CNV_OUTPUT implemented
opPORT_CNV_INPUT implemented
- Version
- lms2012_v057_120816
- "Black layer buffering" bug fixed and enabled again
- opINPUT_DEVICE CLR_ALL implemented
- opINPUT_DEVICE SETUP implemented
- NXT light sensor mode 0 changed to NXT-REFLECT
- NXT light sensor mode 1 changed to NXT-AMBIENT
- NXT color sensor mode 0 changed to NXT-COL-REF
- NXT color sensor mode 2 changed to NXT-COL-COL
- opINPUT_DEVICE READY_XX do not wait if port is OPEN
- Low memory indication implementation started
- O_SYNC removed from file open
- ON BRICK BUTTONS REMAPPED NOT BACKWARD COMPATIBLE
- WiFi splitted transfer stabilized
Daisy chain supports one slave (motor ready/test is not supported yet)
- Version
- lms2012_v056_120807
- "Black layer buffering" disabled
- Internal use only: simple "C-call way" of executing byte code streams - implemented
- opINPUT_DEVICE CLR_ALL implemented (only placeholder - not functioning)
- WiFi reconnection on TPC connection
- WiFi menu lock up bug fixed
3th party IIC sensors are named "IIC-SENSOR"
- Version
- lms2012_v055_120718
- Fixed bug in CONTINUE_GETFILE
Implementation of iDevice interface started (Added c_i2c.c and c_i2c.h)
- Version
- lms2012_v054_120712
- Fast datalog (black layer buffering and optimization) on IIC implemented
- Third party device support implemented (HW buffer on IIC clock)
- Error reply on direct commands implemented
- PRU UART bitrate adjusted
- Integrated current shutdown implementation started
- Start of faulty program handled by showing an error popup
- opMATH changed from radians to degrees
- Button mapping implemented (not active yet)
- opUI_READ BUTTON0 - opBUTTON5 removed (use opUI_BUTTON SHORTPRESS instead)
- opMEMORY_USAGE implemented
MD5 SUM and filesize added to LIST_FILES and CONTINUE_LIST_FILES system commands
- Version
- lms2012_v053_120628 (EP2)
- Dynamic hardware adaptation implemented (from FINALB V0.30 hardware)
- opINPUT_SAMPLE changed to support dynamic output array
- opARRAY_APPEND implemented
- opSTRINGS VALUE_TO_STRING changed to strib trailing zeroes
- Validation bug on handles fixed
- Daisy chain support implemented
Fast datalog (black layer buffering and optimization) on UART and analog implemented
- Version
- lms2012_v052_120620
- Fast datalog (black layer buffering and optimization) implementation started
- opSTRINGS VALUE_TO_STRING bug fixed
- opUI_DRAW FILLCIRCLE algorithm changed
- opUI_BUTTON GET_BUMBED implemented
- opINPUT_SAMPLE implemented (read buffered device values) (see Example)
- opFILE WRITE_LOG last two parameters removed and 4th. parameter changed encoding to "handle"
- opUI_WRITE GRAPH_SETUP last five parameters changed encoding to "handle"
opFILE WRITE_LOG writes scrambled values (4 bytes floatingpoint) NOT ASCII characters in the file
- Version
- lms2012_v051_120604
- "Brick Program" app graphics updated
- Daisy chain support implementation started
- IIC sensor support implemented
- Debug console bug fixed
- opSTRINGS VALUE_TO_STRING changed to accept left adjusted result
- opTST byte codes implementation started
WiFi TKIP/AES implemented
- Version
- lms2012_v050_120511
- NEW KERNEL AND FILESYSTEM REQUERED
- UART sensor module updated
- Mini tacho motor regulation updated
- opINPUT_DEVICE GET_BUMPS implemented (read negative changes on a device)
- "Brick Program" app updated
- opFILE GET_HANDLE has changed parameters (open for write flag implemented)
- opUI_DRAW CLEAN removed (use opUI_DRAW FILLWINDOW,0,0,0)
- opKEEP_ALIVE implemented (see opKEEP_ALIVE)
- ISSUE 239 - LED flashing changed to 250mS on / 250mS off
- ISSUE 42 - "Motor Control" app IR seeker port changed to 4
- opSOUND REPEAT implemented
WiFi enabled
- Version
- lms2012_v049_120413
- opUI_DRAW ERASE_WINDOW removed
- opUI_DRAW FILLWINDOW implemented (can replace ERASE_WINDOW with the right parameters)
- opFILE SAVE_IMAGE removed
- opFILE LOAD_SOUND removed
- "Brick Program" app updated
- opFILE OPEN_APPEND implemented (open for write to end of file)
opFILE GET_HANDLE implemented (get filehandle from open file by filename)
- Version
- lms2012_v048_120330
- ISSUE 15 - Download and run can't stop program - bug fixed
- ISSUE 56 - UI buttons are active while program is running - bug fixed
- ISSUE 93 - Button light pattern on P-Brick - bug fixed
- opPROGRAM_START used in a direct command do nothing if USER_SLOT or DEBUG_SLOT is running
- Topline update enable when user program stops
- A/D converter is running SPI (not bitbanging)
- Uart interrupt on port 1 implemented (not used yet)
- Bluetooth authentication implemented
Bluetooth hinted pairing implemented
- Version
- lms2012_v047_120323
- ISSUE 6 - "Motor Control" app react on wrong channel - bug fixed
- ISSUE 17 - Motor run unlimitted preformance - bug fixed
- ISSUE 49 - Motor stop and brake - bug fixed
- Not able to stop user program - bug fixed
- Crash when trying to execute program with long (>51 chararcter) name - bug fixed
- "Brick Program" app sound retrig crashes - bug fixed
Old NXT color sensor implementation started
- Version
- lms2012_v046_120316
- "Brick Program" app : exit canvas when program saved bug fixed
- Wrong bytecode version resets sensor in port 1 bug fixed
- "Brick Program" app : no wait for sound finished implemented
opSTRING_TO_VALUE accept commas
- Version
- lms2012_v045_120312
- UART sensor port 3 and 4 bug fixed
- Graphics minor issues fixed
- "Port View" app : error graphics for wrong connected devices
- "Port View" app : bar has center for signed value devices
- "Brick Program" app : angle and encoder sensors made relative
- "Brick Program" app : canvas full experience bug fixed
"General navigation" file transfer to bluetooth implemented
- Version
- lms2012_v044_120302
- General navigation - WiFi - implementation started
- UI changed to also stop user programs started from direct commands
- INPUT_DEVICE READY_xxx changed to not force change task
- opOBJECT_TRIG and opOBJECT_WAIT changed to not force change task
- "Brick Program app" bug fix (run and save file no posible)
- "Brick Datalog app" bug fix (save file no posible)
- "Brick Program app" bug fix (max block issue)
- General navigation - folder order fixed
- On Brick Programs has changed extension from ".rbf" to ".rpf"
- opMATH MOD8, MOD16, MOD32 implemented
- "Details" app changed name to "Brick Info"
- opARRAY SIZE implemented
- opMATH POW implemented
- opINPUT_DEVICE CAL_MIN and CAL_MAX implemented
- NXT devices got their name back
- Output devices can be read equal to input devices (see Example)
Messaging implemented
- Version
- lms2012_v043_120210 (EP1)
- opUI_STORE and opUI_RESTORE had one parameter added (to expand the window levels)
- opUI_DRAW BMPFILE and PICTURE graphic bug (when drawing aligned bitmaps) fixed
- opUI_DRAW KEYBOARD parameter has been added (Icon)
- opUI_DRAW VERTBAR implemented
- System specific defines are made visible for byte code assembler
- Non volatile setting files are moved to a specific folder called "../sys/settings/"
- "Program app" (without test area) finished (development stopped)
- "Play Recent" items will disappear when deleted in "File Navigation" - implemented
- General navigation - Bluetooth - implementation started
- opINFO GET_ID removed
- opCOM_GET GET_ID implemented
- opUI_DRAW KEYBOARD some characters disabled (characters invalid in filenames)
- opUI_WRITE LED has changed functionality and number of parameters
- Bluetooth commands implemented (see "Byte Codes" - "Communication")
- App names changed to "General Navigation: Flow (30JAN)" concept
- "Program" app changed name to "Brick Program"
- "Datalog" app changed name to "Brick Datalog"
- "Remote" app changed name to "Motor Control"
"View" app changed name to "Port View"
- Version
- lms2012_v042_120120
- opINPUT_DEVICE GET_MINMAX implemented
- opINPUT_DEVICE CMD parameter moved to start (first parameter)
- Low voltage shut down changed (delay before user program stop / motor off)
- opUI_BUTTON TESTSHORTPRESS and TESTLONGPRESS implemented
- opUI_DRAW GRAPH_SETUP and GRAPH_DRAW implemented
- opUI_WRITE GRAPH_SAMPLE implemented
- opFILE OPEN_LOG implemented (OPEN_LOG example)
- opFILE WRITE_LOG changed (WRITE_LOG example)
- opFILE CLOSE_LOG implemented (CLOSE_LOG example)
- opFILE REMOVE implemented
- opFILE MOVE implemented
- opUI_BUTTON supports ANY_BUTTON
- opUI_DRAW support TINY_FONT
- opUI_DRAW APPSELECT removed (see opUI_DRAW BROWSE)
- opUI_DRAW PRJSELECT removed (see opUI_DRAW BROWSE)
- opUI_DRAW CACHESELECT removed (see opUI_DRAW BROWSE)
- opUI_DRAW BROWSE implemented
- opUI_BUTTON PRESSED bug fixed
- opRL32 bug fixed
- UART sensor READY/BUSY bug fixed
- Repeate on arrow buttons implemented
- opARRAY COPY implemented
- opFILE WRITE_TEXT no of parameters changed (DEL added)
- opFILE READ_TEXT no of parameters changed (DEL added)
- opFILE WRITE_VALUE no of parameters changed (DEL added)
- opFILE READ_VALUE no of parameters changed (DEL added)
- opINPUT_DEVICE CAL_MINMAX implemented (CAL_MINMAX example)
- opINPUT_DEVICE CAL_DEFAULT implemented (CAL_DEFAULT example)
- opINPUT_TEST has changed byte code number (to the one opINPUT_GET_TYPE had)
- opINPUT_GET_TYPE is removed (see below)
- opINPUT_DEVICE GET_TYPEMODE implemented
- Datalog app implemented
- Motor Control app implemented
- Following byte codes are updated to support dynamic string handles
- opSINF, opCOSF, opTANF, opASINF, opACOSF, opATANF removed (see below)
- opMATH SIN, COS, TAN, ASIN, ACOS, ATAN implemented
- opMATH EXP, MOD, FLOOR, CEIL, ROUND, ABS, NEGATE, SQRT, LOG and LN implemented
- opRL8, opRL16, opRL32 implemented
- Delete files from the UI implemented
- High temperature motor shut off implemented
- Low voltage shut down implemented
UI readout with kernel version and build implemented
- Version
- lms2012_v040_111201
- OPB support for file load and save implemented
- Overall run screen implemented
- opINFO GET_STATUS number of parameters has changed
- Weird Error - DATA8 parameter don't like variables above address 127 - fixed
- Debug app updated
- opTIMER_READ changed to return milliseconds from byte code program start
- SUBCALLs optimized
opMOVE32_16 writes to 4 bytes bug - fixed
- Version
- lms2012_v039_111121
- Delete project (folder) from the UI implemented
- opINPUT_WRITE make device not ready until new data arrive
- opINPUT_DEVICE GET_CHANGES and CLR_CHANGES implemented on input
- opINPUT_DEVICE READY_PCT, READY_RAW and READY_SI implemented on input
- Close open files when user (all) program stops implemented
- Debugger will start user programs in user slot (1) like the UI
- Direct command breaks running program bug fixed
- Message counter in communication implemented
- opUI_BUTTON SET_BACK_BLOCK and GET_BACK_BLOCK implemented
- opUI_DRAW BMPFILE implemented
- opUI_BUTTON(FLUSH) does not flush LONGPRESS
- opFILE OPEN_READ - SIZE parameter added
- On Brick Programming app started (motor, color, wait blocks implemented)
Motors must come to complete stop when brake parameter is set fixed
- Version
- lms2012_v038_111104
- opPROGRAM_INFO OBJ_START bug fixed (delayed program start)
- opOutput_RESET should be used to clear tacho and timer upon program start
- opOUTPUT_CLR_COUNT 10mS tacho clear bug fixed
IR Seeker (doc error around DATA_SI)
- Version
- lms2012_v037_111027
- opINPUT_DEVICE SET_RAW implemented
- opUI_DRAW VIEW_UNIT implemented
- opSTRINGS VALUE_TO_STRING implemented
- opSTRINGS STRING_TO_VALUE implemented
- opUI_READ GET_HW_VERS implemented
- opUI_READ GET_FW_VERS implemented
- opUI_READ GET_FW_BUILD implemented
- opUI_DRAW FILLCIRCLE implemented
- opRANDOM implemented
- opUI_BUTTON PRESSED implemented
- opFILE CLOSE changed to opFILE UNLOAD
- opFILE OPEN_WRITE, OPEN_READ, CLOSE, REMOVE implemented
- opFILE WRITE_TEXT, READ_TEXT implemented
- opFILE WRITE_VALUE, READ_VALUE implemented
- opFILE WRITE_BYTES, READ_BYTES implemented
- opINPUT_DEVICE GET_FIGURES implemented
- opARRAY INIT8, INIT16, INIT32, INITF implemented
- "View" app implemented
- Figures and Decimals added to type datas (controls readout in view and datalog)
- opUI_DRAW NOTIFICATION changed (last parameter removed)
- opUI_DRAW APPSELECT changed (STATUS parameter removed)
- opUI_DRAW PRJSELECT changed (STATUS parameter removed)
- opUI_DRAW CACHESELECT changed (STATUS parameter removed)
- opINPUT_DEVICE GET_FORMAT has changed number of parameters to contain "views"
- opPROGRAM_STOP changed to accept CURRENT_SLOT
- opUI_DRAW KEYBOARD changed
- opUI_BUTTON WAIT_FOR_PRESS bug fixed (destroyed actually button press)
- Array handle type changed to 16 bit (DATA16)
- New ID for "NEW TACHO MOTOR" implemented
- opINIT_BYTES has changed parameter types to "encoded" ones
- opPROGRAM_START has a possibility to load but not start the program (see Example)
- Reentrant subcall validation bug - fixed
- USB IDs changed
- BEGIN_UPLOAD, CONTINUE_UPLOAD, BEGIN_GETFILE, CONTINUE_GETFILE, LIST_FILES added to communication (see Example)
- Version
- lms2012_v036_110928
- File browser changed opUI_DRAW CACHESELECT, APPSELECT, PRJSELECT changed
- opFILE has changed numeric value from 0xB0 to 0xC0 (to make room for more motor commands)
- opARRAY has changed numeric value from 0xB1 to 0xC1 (to make room for more motor commands)
- opARRAY_WRITE has changed numeric value from 0xB2 to 0xC2 (to make room for more motor commands)
- opARRAY_READ has changed numeric value from 0xB3 to 0xC3 (to make room for more motor commands)
- Some "Pratical Stuff" updated in buildin documentation
- opUI_DRAW VALUE changed to fit "View" app (negative sign, "nan" -> "----")
- Array bug when using handles for system calls fixed
- opUI_DRAW VIEW_VALUE implemented
- Large font implemented
- opOUTPUT_CLR_COUNT and opOUTPUT_GET_COUNT implemented
opOUTPUT_STEP_SYNC and opOUTPUT_TIME_SYNC implementation started
- Version
- lms2012_v035_110909
- PrimParPointer changed so array handles can be converted to pointers (for array refference)
- Only first VMTHREAD is started when program is loaded
- Normal, small, large icon implemented
- Normal, small font implemented
- Large font implementation started
- Validation of variable alignment implemented
- opINFO GET_VOLUME, SET_VOLUME, GET_MINUTES, SET_MINUTES, GET_INCH implementation started
- opINFO SET_INCH, GET_FAHRENHEIT, SET_FAHRENHEIT implementation started
- opINFO SET_ERROR added
- opINFO GET_ERROR added
- opINFO ERRORTEXT added
- opFILE GET_CACHE_PRJ_NAME, PUT_CACHE_PRJ_NAME, DEL_CACHE_PRJ_NAME, GET_CACHE_PRJS removed
- opFILE GET_CACHE_FILE, PUT_CACHE_FILE, DEL_CACHE_FILE, GET_CACHE_FILES added
- opFILE GET_CACHE_NAME added
- opUI_DRAW DOTLINE added (only vertical and horisontal supported)
- opUI_DRAW SELECT_FONT added
- opUI_DRAW ERASE_WINDOW added
- opUI_DRAW CACHESELECT added
- opUI_DRAW TOPLINE added
- opUI_LF removed (changed to opUI_BUTTON) (use opUI_WRITE,LC0(PUT_STRING),LCS,'','n',0)
- opUI_BUTTON added
- opUI_WRITE BUTTON_FLUSH has been replaced by opUI_BUTTON FLUSH
- opUI_READ BUTTON_READY has been replaced by opUI_BUTTON WAIT_FOR_PRESS
- opUI_BUTTON SHORTPRESS added
- opUI_BUTTON LONGPRESS added
- opUI_BUTTON PRESS added
- opUI_BUTTON RELEASE added
opUI_READ BUTTON0, BUTTON1, BUTTON2, BUTTON3, BUTTON4, BUTTON5 will be removed in V0.36
- Version
- lms2012_v034_110822
- End of direct commands does not float motors
- Validation of byte code programs has changed to be more restricteded
- Version in image headers is tested against "BYTECODE_VERSION" from "bytecodes.h"
- Validation and disassembly has been separated
- lms2012.h header has been separated into lms2012.h, lmstypes.h, bytecodes.h
- bytecodes.c has been added and hold byte code description tables used for validation
- DATA_PCT and DATA_SI has changed value
- opPROGRAM changed name to opPROGRAM_INFO
- opINIT_BYTES parameter 1 and 2 has changed
- opUI_READ POWER has changed
- opUI_READ VERSION has changed
- opUI_WRITE VERSION has changed
- opUI_WRITE POWER has changed
- opINPUT_DEVICE has changed
- opINIT_BYTES has changed
- opSWITCH has been removed
- User interface flowcart added to documentation Apps
- Hardware schematics added to documentation schematics
- opUI_DRAW NOTIFICATION implemented
- opUI_DRAW QUESTION implemented
- opUI_DRAW KEYBOARD implemented
- opUI_DRAW INVERSERECT implemented
- opUI_DRAW APPSELECT implementation started
- opUI_DRAW PRJSELECT implementation started
- opSOUND PLAY parameter 3 changed to filename
- opUI_WRITE STRING changed to opUI_WRITE PUT_STRING
opSTRING changed to opSTRINGS
- Version
- lms2012_v033_110728
- opMEMORY_WRITE implemented to write to different memory types in VM space (see Example)
- opSTRING ADD, COMPARE and DUPLICATE is implemented (see Example)
- String parameters for SUBCALLS (see Info)
opOUTPUT_TEST number of parameters changes (see opOUTPUT_TEST)
- Version
- lms2012_v032_110623
- opUI_WRITE SET_TESTPIN implemented
- opINPUT_TEST implemented
- opINPUT_READY implemented
- opSOUND TONE implemented
- opSOUND PLAY implemented (volume not working yet)
- opSOUND BREAK implemented
- opSOUND_TEST implemented
opSOUND_READY implemented
- Version
- lms2012_v031_110616
- Hardware platform "FINAL" implementation started
- Sound implementation started
- UART sensor bug fixed
Read UART sensor returns "nan" if sensor not ready
- Version
- lms2012_v030_110609
- opUI_READ GET_IMAGE removed
- opFILE GET_PRJS, GET_APPS and GET_TOOLS removed
- opFILE GET_PRJ_NAME, GET_APP_NAME and GET_TOOL_NAME removed
- opFILE GET_PRJ_ICON, GET_APP_ICON and GET_TOOL_ICON removed
- opFILE GET_PRJ_IMAGE, GET_APP_IMAGE and GET_TOOL_IMAGE removed
- System command reply bug fixed
- All 128x178 pixels used on the display
- No terminal output as default (activate by running "Debug" app)
- ALL folders are relative to "~/lms2012/sys" (where the application executable reside)
- opINPUT_WRITE implemented (only works on UART device)
- opINPUT_DEVICE GET_SYMBOL implemented
- opFILE GET_ITEM implemented
- opFILE GET_CACHE_PRJS implemented
- opFILE PUT_CACHE_PRJ_NAME implemented
- opFILE GET_CACHE_PRJ_NAME implemented
- opFILE DEL_CACHE_PRJ_NAME implemented
- opFILE GET_FOLDERS implemented
- opFILE GET_SUBFOLDER_NAME implemented
- opFILE GET_ICON implemented
- opFILE GET_IMAGE implemented
- opFILE DEL_SUBFOLDER implemented
- GUI addition: startup folder contains latest projects runned
- GUI addition: delete total project
GUI addition: Debug app activates terminal output
- Version
- lms2012_v029_110513
- opUI_READ BUTTON_READY implemented
- opUI_WRITE BUTTON_FLUSH implemented
- No need for poll on USB
Reply/no reply implemented on USB
- Version
- lms2012_v028_110509
- Application folder structure changed (see Folder Structure)
- Bytecode file extension must be ".rbf"
- Graphics file extension must be ".rgf"
- Sound file extension must be ".rsf"
System command "Begin Download" creates folders acording to file path relative to "~/lms2012/"
- Version
- lms2012_v027_110428
- Device type alignmet started
- UART device communition change started
- opARRAY_WRITE and opARRAY_READ bug fixed
- SUBCALL IN/OUT parameter bug fixed
- opINPUT_READ, opINPUT_READSI and opINPUT_READEXT: MODE parameter added
- opINPUT_DEVICE GET_FORMAT: MODES parameter added
- opFILE GET_PRJS, GET_APPS and GET_TOOLS implemented
- opFILE GET_PRJ_NAME, GET_APP_NAME and GET_TOOL_NAME implemented
- opFILE GET_PRJ_ICON, GET_APP_ICON and GET_TOOL_ICON implemented
- opFILE GET_PRJ_IMAGE, GET_APP_IMAGE and GET_TOOL_IMAGE implemented
- opUI_READ GET_HORZ implemented
- opUI_READ GET_VERT implemented
- opUI_DRAW FILLRECT implemented
- opINFO GET_ID implemented
- Application folder structure changed (see Folder Structure)
opTIMER_READ implemented
- Version
- lms2012_v026_110405
- Input port 1 and 2 works now with Uart sensors (see Terminal Configuration)
- opARRAY CREATE8, CREATE16, CREATE32, CREATEF implemented
- opARRAY DELETE, FILL, RESIZE implemented
opARRAY_WRITE and opARRAY_WRITE implemented
- Version
- lms2012_v025_110330
- USB communication support protocol from "Communication spec.docx"
- Userspace memory allocation centralized in "c_memory" (kernelspace is local)
- opINPUT_DEVICE GET_FORMAT added
BLOCKS local variable bug fixed
- Version
- lms2012_v024_110325
- procedure for formatting and copying SC cards added in documentation
- SUBCALL mutex bug fixed ("motorsCrash" program runs)
- opINPUT_READEXT implemented (see doc)
- support for more data sets added (c_input and d_uart)
device type tabel content has changed
- Version
- lms2012_v023_110307
- linux prompt controlled by firmware started
- opMEMORY_READ implemented to read different memory types from VM space (see Example)
- opDO: PRGID parameter added
- opUI_READ,CODE: LENGTH parameter type changed
- opCOM_READ,CODE: LENGTH parameter type changed, SIZE parameter removed
- opFILE,LOAD_PICTURE: PRGID parameter removed
- opFILE,GET_POOL added
- opFILE,CLOSE added - used to close files opened by LOAD_PICTURE and GET_POOL
- Direct commands are treaded as small programs able to run in parallel with user programs
SUBCALLs protected by mutex
- Version
- lms2012_v022_110218
- lms2012 project prepared for simulation
- Usb device module template added
- Usb host module template added
opINPUT_DEVICE_LIST have an extra parameter containing changed status
- Version
- lms2012_v021_110201
- scratches bug fixed on display
- power off bug fixed on display
- support for IR seeker sensor
- support for Distance sensor
support for Color sensor
- Version
- lms2012_v020_110126
- Graphical interface implementation started
- Simple graphical terminal implemented (in shared libary not in kernel module)
- opUI_DRAW supports: UPDATE, CLEAN, PIXEL, LINE, CIRCLE, TEXT, ICON and BITMAP
- opUI_WRITE,LED supports PWM 0..100% with 5% resolution
- opUI_READ,BUTTON supports all five buttons on the A4 prototypes
- d_analog prepared for ONE2ONE prototype GPIO
- d_power prepared for ONE2ONE prototype GPIO
- d_uart prepared for ONE2ONE prototype GPIO
- d_ui prepared for ONE2ONE prototype GPIO
- d_pwm prepared for ONE2ONE prototype GPIO
- Simple error logging implementation started
- Simple graphical UI implemented
- IONGEN (sensor supply) removed 1 second under powerup to reset UART sensors
ONE2ONE power on and off implemented
- Version
- lms2012_v019_101231
- Performance algorithm changed
Uart statemachine implementation started
- Version
- lms2012_v018_101209
- prepared for cvs
- module d_tacho removed
module d_display added
- Version
- lms2012_v017_101203
- Output ID detection implementation started
- Shared memory for analog module changed to use ANALOG struct and no SIGNAL
- d_power module implementation started
d_uart module implementation started
- Version
- lms2012_v016_101129
- PWM module changed to support all 4 output ports on LEGO A4 board
- opOUTPUT_TIME_POWER, opOUTPUT_POLARITY, opOUTPUT_READY and OUTPUT_TEST implemented
- Simple debug monitor implemented
- opPROGRAM_START - one exstra parameter added (DEBUG)
- Subcall return changed to return parameters in variables - offset by input parameters
- USB direct command implementation started
- USB file download implementation started
Byte code for LED control implemented (opUI_WRITE,LED,....)
- Version
- lms2012_v015_101114
- Analog ID system implemented for input ports
Validation output changed to use "op" prefix on byte codes (output can be reassembled)
- Version
- lms2012_v014_101110
- Adapted to the new distribution (DaVinci-PSP-SDK-03.20.00.1313)
- Subcall return parameter bug fixed
- Analog module changed to support all 4 input ports on LEGO A4 board
Port sequence remapped (physical 1 = logical 4, 2 = 1, 3 = 2, 4 = 3)
- Version
- lms2012_v013_101011
Internal transition to new platform support package
- Version
- lms2012_v012_101011
- Signal used to speed up awareness of device changes on input ports
- Kernel shared memory used to speed up reading of analog values from user land
- In image the program header is expanded by 4 bytes to hold also the image size
- opUI GET_IMAGE implemented
opFILE ISAVE implemented
- Version
- lms2012_v011_100930
- opCALL - one more parameter = number of parameters added (needed for validation)
- Simple UI changed to use subcalls
- Image.h substituted with a ui byte code file "ui"
- Compare instructions implemented
- Select instructions implemented
- Logic instructions implemented
- Geometric instructions implemented
- UI bytecode function, parameters and value changed
- User programs and direct command sheet are updated to follow the above changes
opOUTPUT_STEP_POWER implemented
- Version
- lms2012_v010_100923
- typedata - 1st implementation for type data file read
- d_ui - 1st implementation for read BUT0
- lms_cmdin - device file that are able to receive VM commands
- lms_cmdout - device file that contains VM command output
- Jump label implemented
- Automatic program validation started
- simple bytecode assembler added in folder "bytecodeassembler"
opOBJECT_END bytecode implemented - must be the last bytecode in EVERY object in image
- Version
- lms2012_v009_100903
- More support for eval-add-on-board input port (type, Pct, Si)
Support for eval-add-on-board output port (start, stop, power)
- Version
- lms2012_v008_100826
- Place holder for d_pwm, d_tacho, d_analog, d_dcm added
- d_analog - bitbang SPI for A/D converter implemented
- d_dcm - 1st implementation of device ID detection
- c_input - 1st implementation of device tabel
Support for eval-add-on-board input port started
- Version
- lms2012_v007_100809
- opINPUT takes "TYPE" as 3th parameter
- opOUTPUT_WRITE, opOUTPUT_STEP removed
- opOUTPUT_TIME_POWER, opOUTPUT_TIME_SPEED, opOUTPUT_STEP_POWER, opOUTPUT_STEP_SPEED added
opOUTPUT_STOP changed
- Version
- lms2012_v006_100806
- AM1808 eclipse debug enabled (debug setup is username dependend)
- VM optimization started
- opINPUT takes "LAYER" as 1st parameter
opOUTPUT takes "LAYER" as 1st parameter
- Version
- lms2012_v005_100708
- AM1808 platform added
d_ppboard module uses "UDEV" way to deal with driver "files"
- Version
- lms2012_v004_100614
Parallel port board driver added
- Version
- lms2012_v003_100613
- opUI,READ_CODE can read a ascii string and convert to a bytecode string
- opDO can execute a bytecode string as "Direct Command"
- 'c' executes direct command as cXXxxXXxxXXxxXX
- opPROBE can show variables on stdout
- 'p' probes VMTREAD 1 globals and locals
- More documentation added
- opSWITCH8 makes a simple selection on a DATA8 value
- Version
- lms2012_v002_100603
- opTIMER_WAIT, opTIMER_READY - 1mS resolution - cTimer changed to use "clock_gettime"
- opJR_xx - cBranch optimized if no jump
- d_pwm changed to use hrtimer and PWM base is 1000 Hz with 10 steps resolution
- Instruction counter implemented to read out execution speed
- p5 faked line follower
- Some documentation started
- opOBJECT_TRIG, opOBJECT_WAIT implemented
- Version
- lms2012_v001_100520
- UiImage contains info string and commands 'q','r' and 'b'
- 'r' runs programs as rFILENAME
- 'b' sets breakpoint as bADDRESS
- stdin used for faking input values with + and -
- opINIT_BYTES is used for initialising global and local variables as opINIT_BYTES (DATA32)Length (DATA8)Destination (DATA8)ByteStream
- opBREAKPOINT bytecodes moved to 0x87 - 0x8F
- opUI (READ_STR, READ_ADR, WRITE_STR, WRITE_ADR) stdin/out used for user input/output
- LCS macro for image - defines that zero terminated string follows (see Image.h line 8+9)