Firefly Open Source Community

   Login   |   Register   |
New_Topic
12
New Topic
Print Previous Topic Next Topic

Fireduino using linux.

25

Credits

0

Prestige

0

Contribution

new registration

Rank: 1

Credits
25

Fireduino using linux.

Posted at 11/4/2016 17:57:39      View:8270 | Replies:10        Print      Only Author   [Copy Link] 1#
During the kickstarter campaign the Firefly team said the folloing about OS Suppport
Arduino IDE Plug-in on Fireduino is support Windows and Linux now,we are trying let it also can supported on OSX.Thank you.

I'm on linux.  How do I get things working.  The downloads page has an empty 'Firduino driver' folder and the 'Arduino IDE' download seems to be windows only.

Linux instructions please!

Owen
Reply

Use props Report

25

Credits

0

Prestige

0

Contribution

new registration

Rank: 1

Credits
25
Posted at 11/4/2016 18:46:45        Only Author  2#
OK - I've got a little further.  So I already have Arduino IDE linux installed (from Arduino website).  As mentioned above the drivers download folder is empty - so I'm hoping this is not required for linux.

I've followed the rest of the windows instructions. i.e. Open Arduino IDE. Click File > Preferences and paste in the Fireduino board manager URL (http://www.t-firefly.com/downloa ... ireduino_index.json).  I then went to  Tools > Boards > Board Manager and installed fireduino board (55 Mb install).  

I have problems with the final step.  When I go to Tools > Boards >  Fireduino. - it shows the following error (twice)
  1. Invalid library found in /home/owilliams/.arduino15/packages/Firefly/hardware/arm/1.3.0/libraries/LobotServoController: /home/owilliams/.arduino15/packages/Firefly/hardware/arm/1.3.0/libraries/LobotServoController
Copy the code
Reply

Use props Report

25

Credits

0

Prestige

0

Contribution

new registration

Rank: 1

Credits
25
Posted at 11/4/2016 19:09:04        Only Author  3#
I am starting to think its a driver issue.  I can get rid of the library error above easily enough (by deleting the LobotServeroController directory) but the Tools > Port is still greyed.  I also don't see an additional usb device when I plugin the board.  The board gets power (I can see red light and flashing blue and yellow light).

When I plug in a Uno board lsusb shows an additional usb device.  When I plug in the fireduino board lsusb shows no additional device.
Reply

Use props Report

22

Credits

0

Prestige

0

Contribution

new registration

Rank: 1

Credits
22
Posted at 11/8/2016 01:04:18        Only Author  4#
owennewo Posted at 11/4/2016 19:09
I am starting to think its a driver issue.  I can get rid of the library error above easily enough ( ...

Received my Fireduino today and have been trying to get it working. I am having the same issue. It seems that my Linux machine isn't recognizing the Fireduino as anything other than a power consumer. Plugging it into a Win10 computer doesn't seem to work either. Could the board itself be faulty?
Reply

Use props Report

25

Credits

0

Prestige

0

Contribution

new registration

Rank: 1

Credits
25
Posted at 11/9/2016 03:09:31        Only Author  5#
This forum doesn't seem to be monitored by firefly.  Poor.

Some windows drivers have been put here: https://drive.google.com/drive/f ... gAqAcm5aZ1loVHNTZ0U but I haven't tried them.

Still waiting for the promised linux driver.  A bit dubious because it doesn't even show up as an unrecognised usb device.
Reply

Use props Report

38

Credits

0

Prestige

0

Contribution

new registration

Rank: 1

Credits
38
Posted at 11/10/2016 01:42:50        Only Author  6#
Thank you for the link to the board manager, I couldn't find that any where.  
First I don't know anything - this is just a few things I found.
I got a bunch of different errors when trying to upload a sketch form my linux machines - I think it's because it can't find the device.
So I did try it on a Windows box, just for the sake of trying.
The important driver is a ROCKUSB driver - I couldn't really find anything for linux thou (admittedly I only did a very quick search)
The biggest thing I learned however was I have to run the Arduino IDE as  ADMIN to get it too work at all in Windows.
The other thing was once the ROCKUSB driver was installed, and you exited out of the "upgrade" mode, Windows did see it as a serial device (normal serial) Windows didn't like the serial drivers that were included.
I was able to get my linux machines to finally see the device when in "upgrade" mode, but I could NOT get them to see it as a serial device when I reset the fireduino.  
I now wonder if I should run the Arduino as root on my linux machines.
*BTW the install and usage was not as straight forward as it should be even on a Windows Box - (Window 10, using the Win 8 drivers provided)
Have to disable the driver signature enforcement, reboot a couple of times, and no where did I find that you have to use the IDE as ADMIN (That maybe a Win 10 thing thou)

So it's frustration when things just don't work. I also think there is a language barrier in play here, which is also frustrating.
It looks to me like there are a lot of linux users thou, so hopefully someone smart will figure it out.
-LeRoy
Reply

Use props Report

38

Credits

0

Prestige

0

Contribution

new registration

Rank: 1

Credits
38
Posted at 11/10/2016 02:52:04        Only Author  7#
I was able to try linux again, running the Arduino IDE as root, And still no joy - I did see the serial port show up, and disappear this time however.
and I am getting a error -
/bin/sh: 0: Illegal option --  
That is the same error I got when trying this as a normal user.  I think the serial port disappears when the board is reset, and the board is reset by the compiler, but I'm not sure what the "Illegal option" is.
When you hold the reset button, then hold the upgrade button, release the reset button, then release the upgrade button
this shows up if you do a lsusb command;
lfmiller@Sherlock ~/Desktop $ lsusb
Bus 002 Device 004: ID 0c45:6494 Microdia
Bus 002 Device 003: ID 0596:0524 MicroTouch Systems, Inc.
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 0cf3:e004 Atheros Communications, Inc.
Bus 001 Device 003: ID 1058:1021 Western Digital Technologies, Inc. Elements Desktop (WDBAAU)
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 413c:2501 Dell Computer Corp.
Bus 003 Device 011: ID 2207:262d  
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
lfmiller@Sherlock ~/Desktop $

That changes if you exit  "upgrade mode" to:
lfmiller@Sherlock ~/Desktop $ lsusb
Bus 002 Device 004: ID 0c45:6494 Microdia
Bus 002 Device 003: ID 0596:0524 MicroTouch Systems, Inc.
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 0cf3:e004 Atheros Communications, Inc.
Bus 001 Device 003: ID 1058:1021 Western Digital Technologies, Inc. Elements Desktop (WDBAAU)
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 413c:2501 Dell Computer Corp.
Bus 003 Device 012: ID 8888:0007  
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
lfmiller@Sherlock ~/Desktop $

You'll notice a new ID: 8888:0007

The first device ID: 2207:262d looks like it is for some rockchip but so far I've not found which one, or what linux is looking for to make it work.

This looks like it might have some promise but I am not 100% sure.
http://www.cnx-software.com/2013 ... p-devices-in-linux/

when I searched for the device ID: 8888:0007 I didn't find anything at all.

Reply

Use props Report

38

Credits

0

Prestige

0

Contribution

new registration

Rank: 1

Credits
38
Posted at 11/11/2016 10:28:29        Only Author  8#
This error:
/bin/sh: 0: Illegal option --
has something to do with the default shell being dash, not bash in Ubuntu, and Ubuntu based systems.
I found a "fix" for that here -
https://wiki.ubuntu.com/DashAsBinSh

OK - So Here is the deal - I did get it this to work in linux, without any drivers, but it wasn't as straight forward as it should have been.
Quickly -
I followed the "hold reset", "push upgrade", "release reset", "release upgrade" - then I hit reset again and a serial port does show up (/dev/tyyACM0)
The IDE has to be run as admin (root), (Issue here is, it uses default sets, an you have to add the board back in the board manager)
Next, There are 3 files that need to have the permissions changed.
The easiest way is in the shell
su
cd /root/.arduino15/packages/Firefly/tools/fireduino_tools/1.0.0
chmod 744 rkImageMaker
chmod 744 upgrade_tool
chmod 744 update_tool

This seemed to work for me, I've been able to upload the audio_play_NET sketch, the blink sketch, and a couple others.
I'm using the Arduino 1.6.12 IDE - and this was done on a different linux box, than any of my above posts.
Reply

Use props Report

31

Credits

0

Prestige

0

Contribution

new registration

Rank: 1

Credits
31
Posted at 12/6/2016 06:28:55        Only Author  9#
i got it to work,

i first uploaded an empty sketch from Windows 7 and only after that, did it attach to /dev/ttyACM0 in Linux ;)

also, it needs
  1. libudev.so.1
Copy the code
32-bit version

EDIT: it plays fine after that, in linux
Reply

Use props Report

4

Credits

0

Prestige

0

Contribution

new registration

Rank: 1

Credits
4
Posted at 3/21/2017 12:09:35        Only Author  10#
I was able to get /dev/ttyUSB0 to show up by adding the following code to /etc/udev/rules.d in file 99-fireduino-boards.rules

#
# Copy this file to the location of your distribution's udev rules, for example on Ubuntu:
#   sudo cp 99-fireduino-boards.rules /etc/udev/rules.d/
# Then reload udev configuration by executing:
#   sudo reload udev
# Or if that doesn't work try:
#   sudo udevadm control --reload-rules
#   sudo udevadm trigger

#SUBSYSTEM=="usb", ATTR{idProduct}=="262d", ATTRS{idVendor}=="2207", MODE="0660", GROUP="dialout"
SUBSYSTEM=="usb", ATTR{idVendor}=="2207", MODE="0666", GROUP="plugdev"
#sudo modprobe usbserial vendor=0x2207 product=0x262d
#

After compiling (seemed ok) I then tried uploading.  It kept uploading and uploading. Turns out blink for the fireduino is 1682969. WTF! For an uno it's like 800 bytes.

The upload eventually stopped with java closing the stream. I think it's a timeout.

Can someone please explain what is going on?
Reply

Use props Report

Return to List
12
You need to log in before you can reply Login | Register

This forum Credits Rules

Quick Reply Back to top Back to list