Crowd Supply - Tomu on Fedora

Hardware info on main Tomu page.

Links

tomu.im, Github im-tomu: tomu-quickstart, tomu-hardware, tomu-samples,

local links

e1,

History

2018-07-24: e1 - try a project (cloned the quickstart repository first) build

[tingo@kg-elitebook tomu-quickstart]$ cd cbmbasic/
[tingo@kg-elitebook cbmbasic]$ l
./  ../  cbmbasic.c  fake6502.c  fake6502.h  Makefile  README.md
[tingo@kg-elitebook cbmbasic]$ make
  CC       fake6502.c    fake6502.o
fake6502.c:310:17: warning: 'getvalue16' defined but not used [-Wunused-function]
 static uint16_t getvalue16() {
                 ^~~~~~~~~~
  CC       cbmbasic.c    cbmbasic.o
  LD       cbmbasic.elf
  OBJCOPY  cbmbasic.bin
  IHEX     cbmbasic.ihex
  DFU      cbmbasic.dfu
dfu-suffix (dfu-util) 0.9

Copyright 2011-2012 Stefan Schmidt, 2013-2014 Tormod Volden
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

Suffix successfully added to file
[tingo@kg-elitebook cbmbasic]$ l
./   cbmbasic.bin*  cbmbasic.dfu*  cbmbasic.ihex  fake6502.h  .obj/
../  cbmbasic.c     cbmbasic.elf*  fake6502.c      Makefile    README.md

download

[tingo@kg-elitebook cbmbasic]$ sudo dfu-util -D cbmbasic.bin
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
Opening DFU capable USB device...
ID 1209:70b1
Run-time device DFU version 0101
Claiming USB DFU Interface...
Setting Alternate Setting #0 ...
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 0101
Device returned transfer size 1024
Copying data from PC to DFU device
Download    [=========================] 100%        24636 bytes
Download done.
state(7) = dfuMANIFEST, status(0) = No error condition is present
state(8) = dfuMANIFEST-WAIT-RESET, status(0) = No error condition is present
Done!

test it

[tingo@kg-elitebook cbmbasic]$ ls -l /dev/tty[ACU]*
crw-rw----. 1 root dialout 166, 0 Jul 24 13:40 /dev/ttyACM0
(I can't get the speed (or other serial parameters correct)

test another

[tingo@kg-elitebook tomu-quickstart]$ cd miniblink/
[tingo@kg-elitebook miniblink]$ l
./  ../  Makefile  miniblink.c    README.md
[tingo@kg-elitebook miniblink]$ make
  CC       miniblink.c    miniblink.o
  LD       miniblink.elf
  OBJCOPY  miniblink.bin
  IHEX     miniblink.ihex
  DFU      miniblink.dfu
dfu-suffix (dfu-util) 0.9

Copyright 2011-2012 Stefan Schmidt, 2013-2014 Tormod Volden
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

Suffix successfully added to file

download

[tingo@kg-elitebook miniblink]$ sudo dfu-util -D miniblink.bin
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
Opening DFU capable USB device...
ID 1209:70b1
Run-time device DFU version 0101
Claiming USB DFU Interface...
Setting Alternate Setting #0 ...
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 0101
Device returned transfer size 1024
Copying data from PC to DFU device
Download    [=========================] 100%         1156 bytes
Download done.
state(7) = dfuMANIFEST, status(0) = No error condition is present
state(8) = dfuMANIFEST-WAIT-RESET, status(0) = No error condition is present
Done!

yes, the LEDs blink - good.

2018-07-24: e1 - dfu-util says this

[tingo@kg-elitebook ~]$ dfu-util -l
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

dfu-util: Cannot open DFU device 1209:70b1

with sudo

[tingo@kg-elitebook ~]$ sudo dfu-util -l
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

Found DFU: [1209:70b1] ver=0101, devnum=17, cfg=1, intf=0, path="3-4", alt=0, name="Tomu Bootloader v2.0-rc4", serial="UNKNOWN"

dfu-util parameters

[tingo@kg-elitebook ~]$ dfu-util -h
Usage: dfu-util [options] ...
  -h --help            Print this help message
  -V --version            Print the version number
  -v --verbose            Print verbose debug statements
  -l --list            List currently attached DFU capable devices
  -e --detach            Detach currently attached DFU capable devices
  -E --detach-delay seconds    Time to wait before reopening a device after detach
  -d --device <vendor>:<product>[,<vendor_dfu>:<product_dfu>]
                Specify Vendor/Product ID(s) of DFU device
  -p --path <bus-port. ... .port>    Specify path to DFU device
  -c --cfg <config_nr>        Specify the Configuration of DFU device
  -i --intf <intf_nr>        Specify the DFU Interface number
  -S --serial <serial_string>[,<serial_string_dfu>]
                Specify Serial String of DFU device
  -a --alt <alt>        Specify the Altsetting of the DFU Interface
                by name or by number
  -t --transfer-size <size>    Specify the number of bytes per USB Transfer
  -U --upload <file>        Read firmware from device into <file>
  -Z --upload-size <bytes>    Specify the expected upload size in bytes
  -D --download <file>        Write firmware from <file> into device
  -R --reset            Issue USB Reset signalling once we're finished
  -s --dfuse-address <address>    ST DfuSe mode, specify target address for
                raw file download or upload. Not applicable for
                DfuSe file (.dfu) downloads

ok

2018-07-24: e1 - plugging the Tomu into a usb port gives this lsusb

[tingo@kg-elitebook ~]$ lsusb -d 1209:70b1
Bus 003 Device 017: ID 1209:70b1 InterBiometrics

from /var/log/messages

Jul 24 13:03:42 kg-elitebook kernel: usb 3-4: new full-speed USB device number 17 using xhci_hcd
Jul 24 13:03:42 kg-elitebook kernel: usb 3-4: New USB device found, idVendor=1209, idProduct=70b1, bcdDevice= 1.01
Jul 24 13:03:42 kg-elitebook kernel: usb 3-4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Jul 24 13:03:42 kg-elitebook kernel: usb 3-4: Product: Tomu Bootloader v2.0-rc4
Jul 24 13:03:42 kg-elitebook kernel: usb 3-4: Manufacturer: Kosa

The LEDs blink red and green, so I have a DFU bootloader.

2018-07-24: e1 - I installed ARM toolchain on my Fedora laptop

[tingo@kg-elitebook ~]$ sudo dnf install arm-none-eabi-newlib arm-none-eabi-gcc-cs-c++
[..]
Install  4 Packages

Total download size: 156 M
Installed size: 1.2 G
[..]
Installed:
  arm-none-eabi-gcc-cs-c++.x86_64 1:7.1.0-5.fc27              arm-none-eabi-newlib.noarch 2.5.0-3.fc27              arm-none-eabi-binutils-cs.x86_64 1:2.30-1.fc28            
  arm-none-eabi-gcc-cs.x86_64 1:7.1.0-5.fc27                

Complete!

ok

2018-07-24: e1 - I installed dfu-util on my Fedora laptop

[tingo@kg-elitebook ~]$ sudo dnf install dfu-util
[..]
Total download size: 52 k
Installed size: 117 k
[..]
Installed:
  dfu-util.x86_64 0.9-5.fc28                                                                                                                                                   

Complete!

ok.

2018-07-24: e1 - I'm using my Fedora laptop for testing the Tomu:

[tingo@kg-elitebook ~]$ cat /etc/fedora-release
Fedora release 28 (Twenty Eight)
[tingo@kg-elitebook ~]$ uname -a
Linux kg-elitebook.kg4.no 4.17.5-200.fc28.x86_64 #1 SMP Tue Jul 10 13:39:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

ok.