# Evic SDK - völlige verzweiflung

## LuxJux

Hier mal die Anleitung

https://github.com/ReservedField/evic-sdk/blob/master/README.md

Es handelt sich dabei um dieses bzw dieses Gerät.

Wahrscheinlich geht es dabei um einen 8051/8052-Prozessor. [strike]Evtl. auch um einen Z80-kompatibilen Prozessor. Nichts genaues weis man nicht. [/strike]die SDK

Frage: Wie kann ich denn die toolchain einbinden ? Sowas 

 *Quote:*   

> arm-none-eabi-gcc
> 
> arm-none-eabi-newlib

 

findet emerge nicht

Edit: https://www.reddit.com/r/electronic_cigarette/comments/3zl349/tutorial_evic_vtc_power_to_5_letters_of_your/Last edited by LuxJux on Mon Sep 19, 2016 12:25 am; edited 1 time in total

----------

## Christian99

wenn ich dich richtig verstehe brauchst du eine cross-toolchain. dafür gibts unter gentoo crossdev, damit kannst du dann eine crosstoolchain emergen.

einfach 

```
emerge -va crossdev; crossdev -t arm-none-eabi
```

 sollte genügen.

PS: für was braucht eine E-Zigarette eine firmware, oder hab ich da was falsch verstanden?

----------

## LuxJux

Dank dir. Das hätte ich nie gefunden. Werd mich am WE nochmal dransetzen.

 *Christian99 wrote:*   

> PS: für was braucht eine E-Zigarette eine firmware, oder hab ich da was falsch verstanden?

 

Das ist ja nur der Akkuträger, also quasi eine halbe Dampfe. Dazu wird noch der Verdampfer benötigt.

Für die Selbstwickler gibt es verschiedene Drahtsorten und -stärken sowie verschiedene Wickeltechniken für den Draht.

Deshalb werden auf dem Display die wichtigsten Werte angezeigt, z.B. auch der Ladezustand des/der Akkus

Edit: Natürlich ganz wichtig, man kann die Leistung (Watt) wie benötigt einstellenLast edited by LuxJux on Sat Mar 05, 2016 2:11 pm; edited 1 time in total

----------

## LuxJux

crossdev -t arm-none-eabi

```
-------------------------------------------------------------------------------------------------

crossdev version:      20151026

Host Portage ARCH:     amd64

Target Portage ARCH:   arm

Target System:         arm-none-eabi

Stage:                 3 (C compiler & libc)

ABIs:                  default

binutils:              binutils-[latest]

gcc:                   gcc-[latest]

libc:                  newlib-[latest]

CROSSDEV_OVERLAY:      /usr/local/portage

PORT_LOGDIR:           /var/log/portage

PORTAGE_CONFIGROOT:    

Portage flags:         

  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  - 

leaving sys-devel/binutils in /usr/local/portage

leaving sys-devel/gcc in /usr/local/portage

leaving sys-libs/newlib in /usr/local/portage

leaving sys-devel/gdb in /usr/local/portage

leaving metadata/layout.conf alone in /usr/local/portage

  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  - 

Log: /var/log/portage/cross-arm-none-eabi-binutils.log

Emerging cross-binutils ...ok

Log: /var/log/portage/cross-arm-none-eabi-gcc-stage1.log

Emerging cross-gcc-stage1 ...

 * gcc failed :(

 * 

 * If you file a bug, please attach the following logfiles:

 * /var/log/portage/cross-arm-none-eabi-info.log

 * /var/log/portage/cross-arm-none-eabi-gcc-stage1.log.xz

 * /var/tmp/portage/cross-arm-none-eabi/gcc*/temp/gcc-config.logs.tar.xz

```

/var/log/portage/cross-arm-none-eabi-gcc-stage1.log

 *Quote:*   

> 
> 
> Calculating dependencies  . * Missing digest for '/usr/local/portage/cross-arm-none-eabi/gcc/gcc-4.9.3.ebuild'
> 
>  * Missing digest for '/usr/local/portage/cross-arm-none-eabi/gcc/gcc-4.9.2.ebuild'
> ...

 

Na ja, wäre ja auch nur ein Spass gewesen das Display zu verschönern.   :Smile: 

Edit: There is no libc for this target

Edit2: *Quote:*   

> On any OS, you also need a working python-evic install.

 

```
evic convert Cuboid_3.10Firmware.bin -o gentootest.bin

Writing APROM image...OK

```

----------

## Christian99

hmm.... nicht wirklich ne Ahnung, was da schief gegangen ist.

Probier mal

```
crossdev -C arm-none-eabi; emerge --sync; crossdev -t arm-none-eabi
```

sprich: das ganze löschen, tree syncen, nochmal probieren

----------

## LuxJux

"Nö, hat nischt gehilft."

Ich werde mal im Hauptbereich nachsehen, ob ich da was über crossdevtoolchains finde.

Allerdings ist google-translate nicht wirklich leserlich/verständlich

----------

## Christian99

dann mach mal 

```
ebuild "/usr/local/portage/cross-arm-none-eabi/gcc/gcc-4.9.2.ebuild" digest
```

und dann nochmal den crossdev befehl

----------

## LuxJux

gcc-stage1 geht nun

```

Calculating dependencies  . ... done!
```

Edit: compiler log entfernt. Geht jetztLast edited by LuxJux on Sun Sep 18, 2016 11:34 pm; edited 1 time in total

----------

## LuxJux

2ter Teil.

Edit: compiler log entfernt. Geht jetztLast edited by LuxJux on Sun Sep 18, 2016 11:35 pm; edited 1 time in total

----------

## LuxJux

Ich hab mir das log jetzt mal selber angesehen. Hier bricht es ab

```
checking for gcc... (cached) arm-none-eabi-cc -B/var/tmp/portage/cross-arm-none-eabi/newlib-2.3.0.20160104/work/build/arm-none-eabi/newlib/ -isystem /var/tmp/portage/cross-arm-none-eabi/newlib-2.3.0.20160104/work/build/arm-none-eabi/newlib/targ-include -isystem /var/tmp/portage/cross-arm-none-eabi/newlib-2.3.0.20160104/work/newlib-2.3.0.20160104/newlib/libc/include -B/var/tmp/portage/cross-arm-none-eabi/newlib-2.3.0.20160104/work/build/arm-none-eabi/libgloss/arm -L/var/tmp/portage/cross-arm-none-eabi/newlib-2.3.0.20160104/work/build/arm-none-eabi/libgloss/libnosys -L/var/tmp/portage/cross-arm-none-eabi/newlib-2.3.0.20160104/work/newlib-2.3.0.20160104/libgloss/arm   

checking dependency style of arm-none-eabi-cc -B/var/tmp/portage/cross-arm-none-eabi/newlib-2.3.0.20160104/work/build/arm-none-eabi/newlib/ -isystem /var/tmp/portage/cross-arm-none-eabi/newlib-2.3.0.20160104/work/build/arm-none-eabi/newlib/targ-include -isystem /var/tmp/portage/cross-arm-none-eabi/newlib-2.3.0.20160104/work/newlib-2.3.0.20160104/newlib/libc/include -B/var/tmp/portage/cross-arm-none-eabi/newlib-2.3.0.20160104/work/build/arm-none-eabi/libgloss/arm -L/var/tmp/portage/cross-arm-none-eabi/newlib-2.3.0.20160104/work/build/arm-none-eabi/libgloss/libnosys -L/var/tmp/portage/cross-arm-none-eabi/newlib-2.3.0.20160104/work/newlib-2.3.0.20160104/libgloss/arm   ... (cached) none

checking whether we are using GNU C... (cached) no 
```

Und bitte entschuldigt. Mir brummt der Schädel sowas von Linux...

Außerdem hab ich mir eine Opensource Suchmaschine (duckduckgo.com) auf meine Startseite gelegt, weil google wolte ich nicht mehr.

Aber da finde ich auch nichts.

und

```
Making all in libc

Making all in argz

/bin/sh: arm-none-eabi-cc: command not found 
```

----------

## LuxJux

Ich kanns mir zwar nicht vorstellen, doch kann der Fehler hiermit zusammenhaengen ?

----------

## Christian99

kannst du bitte, wenn du längere logs postest, einen pasteservice verwenden? das ist sonst also forumsthread zu unübersichtlich.

Und ich bin mir auch nicht sicher, was du machst. ich habs grad mal probiert, und bei mir läuft das "crossdev -t arm-none-eabi" ohne probleme durch. Ich hab weder eine corruption meldung von portage, noch probleme beim bauen der newlib.

Deswegen noch mal ganz von vorn: "crossdev -C arm-none-eabi" und bei der eventuellen frage, ob /usr/arm-none-eabi entfernt werden soll, bitt ja antworten.

Danach: "crossdev -t arm-none-eabi"

Falls das schief geht alle logs und zusätzlich ausgabe von: "emerge --info", "ls -lR /usr/local/portage/"

----------

## LuxJux

 *Christian99 wrote:*   

> ..., und bei mir läuft das "crossdev -t arm-none-eabi" ohne probleme durch. 

 

 :Embarassed:   Bei mir ist sabayon (Ist das kein gentoo ?)

Trotzdem update: vapor firmware

https://www.reddit.com/r/electronic_cigarette/comments/4e6mk9/flappy_bird_clone_on_evicvtc_mini/

----------

## LuxJux

Da es leider immer noch nicht funktioniert

Auch nicht mit 3x l;schen und neu machen

```

melana-pc melana # emerge --info

Portage 2.2.26 (python 2.7.10-final-0, default/linux/amd64/13.0/desktop, gcc-4.9.3, glibc-2.21-r2, 4.4.0-sabayon x86_64)

=================================================================

System uname: Linux-4.4.0-sabayon-x86_64-Intel-R-_Core-TM-_i5-4590_CPU_@_3.30GHz-with-gentoo-2.2

KiB Mem:     8125948 total,   6714740 free

KiB Swap:          0 total,         0 free

Timestamp of repository gentoo: Thu, 10 Mar 2016 09:45:01 +0000

sh bash 4.3_p42-r1

ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1

app-shells/bash:          4.3_p42-r1::gentoo

dev-java/java-config:     2.2.0-r3::gentoo

dev-lang/perl:            5.20.2::gentoo

dev-lang/python:          2.7.10-r1::gentoo, 3.4.3-r1::gentoo

dev-util/pkgconfig:       0.29.1::gentoo

sys-apps/baselayout:      2.2-r1::sabayon-distro

sys-apps/sandbox:         2.10-r2::gentoo

sys-devel/autoconf:       2.69::gentoo

sys-devel/automake:       1.15::gentoo

sys-devel/binutils:       2.25.1-r1::gentoo

sys-devel/gcc:            4.9.3::sabayon-distro

sys-devel/gcc-config:     1.8-r1::sabayon-distro

sys-devel/libtool:        2.4.6-r2::gentoo

sys-devel/make:           4.1-r1::gentoo

sys-kernel/linux-headers: 3.18::gentoo (virtual/os-headers)

sys-libs/glibc:           2.21-r2::gentoo

Repositories:

gentoo

    location: /usr/portage

    sync-type: rsync

    sync-uri: rsync://rsync.europe.gentoo.org/gentoo-portage

    priority: -1000

user_defined

    location: /usr/local/portage

    masters: gentoo

    priority: 0

sabayon

    location: /var/lib/layman/sabayon

    masters: gentoo

    priority: 50

sabayon-distro

    location: /var/lib/layman/sabayon-distro

    masters: gentoo

    priority: 50

ACCEPT_KEYWORDS="amd64 ~amd64"

ACCEPT_LICENSE="* -@EULA"

CBUILD="x86_64-pc-linux-gnu"

CFLAGS="-O2 -march=native -pipe"

CHOST="x86_64-pc-linux-gnu"

CONFIG_PROTECT="/etc /etc/conf.d /etc/entropy /etc/init.d /usr/share/config /usr/share/config/kdm /usr/share/gnupg/qualified.txt /usr/share/themes/oxygen-gtk/gtk-2.0 /usr/share/themes/oxygen-gtk/gtk-3.0"

CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/sandbox.d /etc/skel /etc/terminfo /lib/modules"

CXXFLAGS="-O2 -march=native -pipe"

DISTDIR="/usr/portage/distfiles"

FCFLAGS="-O2 -pipe"

FEATURES="assume-digests binpkg-logs compressdebug config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"

FFLAGS="-O2 -pipe"

GENTOO_MIRRORS="ftp://ftp.spline.inf.fu-berlin.de/mirrors/gentoo/ http://archive.mmu.edu.my/gentoo rsync://gentoo.bloodhost.ru/gentoo-distfiles ftp://gentoo.mirrors.tds.net/gentoo ftp://ftp.halifax.rwth-aachen.de/gentoo/ rsync://mirror.neolabs.kz/gentoo http://ftp.gentoo.bg/ http://ftp.cc.uoc.gr/mirrors/linux/gentoo/ ftp://ftp.cc.uoc.gr/mirrors/linux/gentoo/ ftp://mirrors.tera-byte.com/pub/gentoo"

LANG="en_US.UTF-8"

LDFLAGS="-Wl,-O1 -Wl,--as-needed"

MAKEOPTS="-j16 -s"

PKGDIR="/usr/portage/packages"

PORTAGE_CONFIGROOT="/"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"

PORTAGE_TMPDIR="/var/tmp"

USE="X a52 aac accessibility acl acpi aiglx aim alsa amd64 artswrappersuid audiofile avahi bash-completion berkdb bidi bluetooth bluray bzip2 cairo cdda cddb cdr cjk cli cpudetection cracklib crypt cups cxx dbus dga dri dts dv dvb dvd dvdr dvdread dvi emboss encode exif fam fame fat ffmpeg firefox flac foomatic-db fortran freetype gcj gdbm gif gimpprint glamor gmp gnutls gphoto2 gpm gsm gtk hfs iconv icq ieee1394 imap inotify ipod ipv6 irc irda jabber jack jfs joystick jpeg kdeenablefinal kdehiddenvisibility kerberos lame lcd lcms ldap libav libnotify live lm_sensors logind lzo mad mail matroska mjpeg mmx mmxext mng modules mozdevelop mp3 mp3rtp mp4 mpeg msn multilib musepack musicbrainz ncurses network nls nptl nsplugin ntfs ogg openal openexr opengl openmp pam pango pcmcia pcre pda pdf perl png policykit ppds pulseaudio python qt3support qt4 rar rdesktop readline real reiserfs rss scanner sdl seccomp session slp speex spell sse sse2 ssl startup-notification stream svg sysfs systemd tcpd theora tiff truetype udev udisks unicode upower usb v4l v4l2 visualization vorbis wayland wifi win32codecs wmf wxwidgets x264 x265 xattr xcb xfs xine xinerama xml xpm xprint xulrunner xv xvid xvmc yahoo zeroconf zlib" ABI_X86="64 32" ALSA_CARDS="emu10k1x darla20 darla24 emu10k1 gina20 gina24 hdsp hdspm ice1712 indigo indigoio layla20 layla24 mia mixart mona pcxhr rme32 rme96 sb16 sbawe sscape usbusx2y vx222 usb-usx2y" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" APACHE2_MPMS="prefork" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="agfa_cl20 casio_qv dimagev dimera3500 kodak_dc120 kodak_dc210 kodak_dc240 kodak_dc3200 kodak_ez200 konica_qm150 panasonic_coolshot panasonic_dc1000 panasonic_dc1580 panasonic_l859 polaroid_pdc320 polaroid_pdc640 polaroid_pdc700 ricoh_g3 sipix_blink sipix_blink2 sipix_web2 sony_dscf1 sony_dscf55 toshiba_pdrm11 adc65 aox barbie canon clicksmart310 digigr8 digita directory enigma13 fuji gsmart300 hp215 iclick jamcam jd11 konica largan lg_gsm mars mustek pccam300 pccam600 ptp2 ricoh samsung sierra smal sonix soundvision spca50x sq905 stv0674 stv0680 sx330z template" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-32 efi-64 pc" INPUT_DEVICES="evdev void" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer pdfimport wiki-publisher" LINGUAS="en en_US de" LIRC_DEVICES="audio audio_alsa serial pctv" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" QEMU_SOFTMMU_TARGETS="x86_64 arm cris i386 m68k microblaze mips mips64 mips64el mipsel ppc ppc64 ppcemb sh4 sh4eb sparc sparc64" QEMU_USER_TARGETS="alpha arm armeb cris i386 m68k microblaze mips mipsel ppc ppc64 ppc64abi32 sh4 sh4eb sparc sparc32plus sparc64 x86_64" RUBY_TARGETS="ruby21" USERLAND="GNU" VIDEO_CARDS="fbdev vesa radeonsi radeon" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"

USE_PYTHON="2.7"

Unset:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

```

----------------------------------------------------------------------

melana-pc melana # ls -lR /usr/local/portage/

```

/usr/local/portage/:

total 20

drwxr-xr-x 2 root root 4096 Apr 19 06:32 cross-arm-none-eab

drwxr-xr-x 2 root root 4096 Apr 19 06:45 cross-arm-none-eabi

drwxr-xr-x 2 root root 4096 Apr 19 06:42 cross-arm-none-eabi-cc

drwxr-xr-x 2 root root 4096 Nov 22 14:57 metadata

drwxr-xr-x 2 root root 4096 Mar 10 12:50 profiles

/usr/local/portage/cross-arm-none-eab:

total 0

lrwxrwxrwx 1 root root 31 Apr 19 06:32 binutils -> /usr/portage/sys-devel/binutils

lrwxrwxrwx 1 root root 44 Apr 19 06:32 gcc -> /var/lib/layman/sabayon-distro/sys-devel/gcc

lrwxrwxrwx 1 root root 26 Apr 19 06:32 gdb -> /usr/portage/sys-devel/gdb

lrwxrwxrwx 1 root root 37 Apr 19 06:32 linux-headers -> /usr/portage/sys-kernel/linux-headers

/usr/local/portage/cross-arm-none-eabi:

total 0

lrwxrwxrwx 1 root root 31 Apr 19 06:45 binutils -> /usr/portage/sys-devel/binutils

lrwxrwxrwx 1 root root 44 Apr 19 06:45 gcc -> /var/lib/layman/sabayon-distro/sys-devel/gcc

lrwxrwxrwx 1 root root 26 Apr 19 06:45 gdb -> /usr/portage/sys-devel/gdb

lrwxrwxrwx 1 root root 28 Apr 19 06:45 newlib -> /usr/portage/sys-libs/newlib

/usr/local/portage/cross-arm-none-eabi-cc:

total 0

lrwxrwxrwx 1 root root 31 Apr 19 06:42 binutils -> /usr/portage/sys-devel/binutils

lrwxrwxrwx 1 root root 44 Apr 19 06:42 gcc -> /var/lib/layman/sabayon-distro/sys-devel/gcc

lrwxrwxrwx 1 root root 26 Apr 19 06:42 gdb -> /usr/portage/sys-devel/gdb

lrwxrwxrwx 1 root root 37 Apr 19 06:42 linux-headers -> /usr/portage/sys-kernel/linux-headers

/usr/local/portage/metadata:

total 4

-rw-r--r-- 1 root root 17 Nov 22 14:57 layout.conf

/usr/local/portage/profiles:

total 8

-rw-r--r-- 1 root root 62 Apr 19 06:42 categories

-rw-r--r-- 1 root root 13 Nov 22 14:57 repo_name

```

----------

## LuxJux

Gibt ein update.

Evic hat nun auch Uhr. Selbst ohne Chip.

 *Quote:*   

> arm-none-eabi-gcc (Das geht nun fehlerfrei)
> 
> arm-none-eabi-newlib

 

habe hier

These packages are not supposed to be merged directly, instead please use sys-devel/crossdev to install them.

und (hier von 2011) was gefunden.

Nochmal von der Anleitung

 *Quote:*   

> Setting up the environment
> 
> To use evic-sdk, you need a working arm-none-eabi GCC toolchain, binutils and libc. On Linux, most distros have precompiled packages in their repos. For example, on Fedora, install the following packages:
> 
> arm-none-eabi-gcc
> ...

 

[strike](Just in progress. Please don't answer) erledigt[/strike]

Den wirklichen Fehler kann ich im Moment nicht posten. Sabayon zickt ganz schön rum.

Und ja, ich bin noch Linux-Kindergarten.

Und nein, ich mach kein gentoo. Da müßte ich ja für jedes Programm die .cfg per hand editieren.

Nachtrag: Nun hab vergessen mein Problem darzustellen. (newlib geht nicht)

----------

## LuxJux

Habe hier noch was gefunden.

Allerdings verstehe ich nicht, wie das ins System eingebunden werden kann.

<makefile> oder so gibt es nicht

Edit: Der D52 kann den Chip auslesen. Mehr weiß ich allerdings auch nicht.

----------

## LuxJux

 *Christian99 wrote:*   

> PS: für was braucht eine E-Zigarette eine firmware, oder hab ich da was falsch verstanden?

 

Es hat sich was getan

https://youtu.be/-QR9Cib_e7M

Nur aus diesem Grund, bin ich bei Linux und gentoo gelandet.

(Hoffentlich sind die Links unter dem Video noch aktuell)

Ist mittlerweile (around the world) verboten. Außer in UK

----------

## LuxJux

Wie ich ebend aus dem (dampf)Forum erfahren habe, handelt es allerdings um zwei verschiedene Projekte.

In #1 ist es die EvicSDK

Im Video geht es jedoch um ArcticFox

----------

