Page 1 of 2

EV3 Firmware download via BricxCC

Posted: 12 Sep 2013, 13:36
by afanofosc
If you want to use BricxCC to download firmware images to your EV3 you can grab the latest test release. I tested it quite a bit last night and it seemed to be rock solid but if a few of you with EV3s could try it out and let me know if you run into trouble I would be extremely grateful.

The zip includes an updated dll.exe which can be used for command line scripts to transfer files to and from the EV3. It will be available soon on Mac and Linux platforms too.

http://bricxcc.sourceforge.net/test_rel ... 130912.zip

I plan on starting an enhanced EV3 firmware image soon.

John Hansen

Re: EV3 Firmware download via BricxCC

Posted: 24 Sep 2013, 15:22
by HaWe
hi,
I got a couple of questions about BCC and ev3-C because I possibly soon may get 2 ev3s (I couldn't find information about this in the current history.txt):
1) is it meanwhile already possible to compile and run (F5/F6/ctrl+F5) ev3 programs out of the BCC editor window via a USB cable plugged to the PC, just as it currently works for the NXT?
2) can I use the native EV3 OS configuration for this or do I have to change the Linux OS?
3) If I have to change the Linux OS: is it possible via USB (because I have no Wifi all over, just wired LAN).
4) If I can use the original Lego Linux configuration: can I stop the VM by a kill command via BCC?
5) is networking already (or soon) possible or daisy-chaining to multiply remote I/Os and data interchange?
6) which NXT-compatible muxers are already supported:
- Mindsensors RX-MotorMux?
- Mindsensors NXT-SensorMux?
- Hitechnic SensorMux?
- PCF8574-based 8xdigital Muxers?
- multiple i2c devices at 1 port chained by port splitters?
- Max127-based MightyBoard?

7) where can I look for the explicite driver code that makes those muxers work (i.e. a C header file for those muxers)

Re: EV3 Firmware download via BricxCC

Posted: 27 Sep 2013, 06:04
by HaWe
doc-helmut wrote:hi,
I got a couple of questions about BCC and ev3-C because I possibly soon may get 2 ev3s (I couldn't find information about this in the current history.txt):
1) is it meanwhile already possible to compile and run (F5/F6/ctrl+F5) ev3 programs out of the BCC editor window via a USB cable plugged to the PC, just as it currently works for the NXT?
2) can I use the native EV3 OS configuration for this or do I have to change the Linux OS?
3) If I have to change the Linux OS: is it possible via USB (because I have no Wifi all over, just wired LAN).
4) If I can use the original Lego Linux configuration: can I stop the VM by a kill command via BCC?
5) is networking already (or soon) possible or daisy-chaining to multiply remote I/Os and data interchange?
6) which NXT-compatible muxers are already supported:
- Mindsensors RX-MotorMux?
- Mindsensors NXT-SensorMux?
- Hitechnic SensorMux?
- PCF8574-based 8xdigital Muxers?
- multiple i2c devices at 1 port chained by port splitters?
- Max127-based MightyBoard?

7) where can I look for the explicite driver code that makes those muxers work (i.e. a C header file for those muxers)

Re: EV3 Firmware download via BricxCC

Posted: 28 Sep 2013, 04:30
by totokan
doc-helmut wrote:hi,
I got a couple of questions about BCC and ev3-C because I possibly soon may get 2 ev3s (I couldn't find information about this in the current history.txt):
1) is it meanwhile already possible to compile and run (F5/F6/ctrl+F5) ev3 programs out of the BCC editor window via a USB cable plugged to the PC, just as it currently works for the NXT?
2) can I use the native EV3 OS configuration for this or do I have to change the Linux OS?
3) If I have to change the Linux OS: is it possible via USB (because I have no Wifi all over, just wired LAN).
4) If I can use the original Lego Linux configuration: can I stop the VM by a kill command via BCC?
5) is networking already (or soon) possible or daisy-chaining to multiply remote I/Os and data interchange?
6) which NXT-compatible muxers are already supported:
- Mindsensors RX-MotorMux?
- Mindsensors NXT-SensorMux?
- Hitechnic SensorMux?
- PCF8574-based 8xdigital Muxers?
- multiple i2c devices at 1 port chained by port splitters?
- Max127-based MightyBoard?

7) where can I look for the explicite driver code that makes those muxers work (i.e. a C header file for those muxers)
Hi, I have been messing about with the latest BricxCC with an EV3 educational kit, I think I can answer some of your questions. I have color-coordinated my response to indicate how confident I am in the information.
1) You can compile, download, run, and stop code on the EV3 board just like in nxt in the current version, if you've set up the compile chain for EV3 code (codesourcery lite arm compiler I believe it is called)
2) It doesn't have a custom firmware, although I had to update to the latest firmware for code to run on my EV3 after being downloaded.
3) The firmware updates can be done through BricxCC in the latest version, I did so and everything worked out OK

4) I don't think you can stop the VM from in BricxCC, although I must confess I am not really clear on the details about how the VM is set-up
5) I don't have the equipment to verify one way or the other.
6) I don't have any muxers, I imagine support for them will come later, since there aren't any high-level sensor functions in the API yet, those probably don't work.
7) I have no idea as to where that would be

Re: EV3 Firmware download via BricxCC

Posted: 28 Sep 2013, 06:16
by HaWe
thank you for your reply!
I dont understand what you mean by "compile chain for EV3 code" - I think there is still missing sort of a simple "Quick Guide to set up BCC for EV3-C".
For the first setup (not for the updates): Could you establish the ev3 connection to your PC via a USB cable, just like for the NXT, without having to use any LAN- or WiFi-dongles or SD cards?

(As the VM is nothing but a simple Linux executable, it must be able to stop or restart it at any time like any program, just as it works with MSDOS com/exe files or with Windows.)

Anyway, sections 5 + 6 are absolutely essential for my projects, so a periodically updated file with a list of progressively supported features would be not only helpful bur even extremely necessary IMO.

Is there any updated information available?

Re: EV3 Firmware download via BricxCC

Posted: 28 Sep 2013, 10:17
by pepijndevos
Wait, so the latest stock firmware can execute native C programs?

Re: EV3 Firmware download via BricxCC

Posted: 28 Sep 2013, 10:31
by HaWe
sure, any native Linux executables compiled by any platform-compatible cross compiler (e.g., gnu C or Pascal) should run, simply because it's a Linux OS on ev3,
either if it's by TI or Lego or JH or Lejos
- or do I misunderstand your question?

Re: EV3 Firmware download via BricxCC

Posted: 29 Sep 2013, 18:33
by totokan
Follow steps 1 through 9 here: http://bricxcc.sourceforge.net/test_rel ... me_1st.txt
That is everything you need to set up for running C code on EV3 over USB!

Re: EV3 Firmware download via BricxCC

Posted: 01 Oct 2013, 08:01
by pepijndevos
I seem to remember reading that you where
  • Integrating sensor API code written by Xander.
  • Going to do Linux/Mac releases of the download tool.
What's the status of that, and is there anything I can do to help? I know C and have a Mac and Linux machine.

I'm eagerly waiting to be able to read sensors from Python.

Re: EV3 Firmware download via BricxCC

Posted: 02 Oct 2013, 01:04
by polux2001
totokan wrote:Follow steps 1 through 9 here: http://bricxcc.sourceforge.net/test_rel ... me_1st.txt
That is everything you need to set up for running C code on EV3 over USB!
Nice! Would the USB communication with the brick work under linux (i.e. from a computer running linux)?