Git Product home page Git Product logo

sonix-flasher's People

Contributors

cederlys avatar crazyquark avatar dexter93 avatar gloryhzw avatar horrible-knots avatar horrortroll avatar janjan avatar jindaxia avatar jpe230 avatar krutonium avatar preisi avatar stdvar avatar tfuxu avatar xyzz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

sonix-flasher's Issues

Do a permission check on Linux

If you neglect to run as root, you may end up in a situation of being able to flash the jumploader but get permission denied when trying to flash firmware.

It should do a permission check at the start of the program to make sure it has access to do flashing before letting you do anything.

action auto-builds have expired

I was following @CalcProgrammer1's awesome youtube guide on flashing the GMMK with QMK (https://youtu.be/aUiKHdI5Vk8?t=924), and it says to grab the latest sonix-flasher build from the actions artifacts in this project. However, all of the recent builds have expired, and the artifacts are gone.

Short-term, could you please trigger another build? I ran into two other people in the gmmk channel in this project's discord today that were trying to follow the same video and similarly couldn't find a working download.

Longer-term, maybe you can add a schedule to the workflow to run once a week.

Keyboard not recognized

So, I own a nextime 75. It has the following chips on the PCB:
1x VS11K28A
1x VS12L17A

I believe this is the same or very similar to the normal GMMK. When my keyboard is plugged in and sonix-flasher is open, no device is recognized. What could cause this problem? Is the device just not supported? Could it be an issue with my USB cable?

Build does not run on Manjaro/Arch

~$ valgrind -v ./Sonix\ Keyboard\ Flasher
==9447== Memcheck, a memory error detector
==9447== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==9447== Using Valgrind-3.17.0-07f0cdcbb4-20210319X and LibVEX; rerun with -h for copyright info
==9447== Command: ./Sonix\ Keyboard\ Flasher
==9447== 
--9447-- Valgrind options:
--9447--    -v
--9447-- Contents of /proc/version:
--9447--   Linux version 5.14.18-1-MANJARO (builduser@fv-az72-786) (gcc (GCC) 11.1.0, GNU ld (GNU Binutils) 2.36.1) #1 SMP PREEMPT Fri Nov 12 20:24:59 UTC 2021
--9447-- 
--9447-- Arch and hwcaps: AMD64, LittleEndian, amd64-cx16-lzcnt-rdtscp-sse3-ssse3-avx-avx2-bmi-f16c-rdrand-rdseed
--9447-- Page sizes: currently 4096, max supported 4096
--9447-- Valgrind library directory: /usr/lib/valgrind
--9447-- Reading syms from /home/jarrod/Desktop/Sonix Keyboard Flasher/Sonix Keyboard Flasher
--9447--    object doesn't have a symbol table
--9447-- Reading syms from /usr/lib/ld-2.33.so
--9447-- Reading syms from /usr/lib/valgrind/memcheck-amd64-linux
--9447--    object doesn't have a dynamic symbol table
--9447-- Scheduler: using generic scheduler lock implementation.
--9447-- Reading suppressions file: /usr/lib/valgrind/default.supp
==9447== embedded gdbserver: reading from /tmp/vgdb-pipe-from-vgdb-to-9447-by-jarrod-on-???
==9447== embedded gdbserver: writing to   /tmp/vgdb-pipe-to-vgdb-from-9447-by-jarrod-on-???
==9447== embedded gdbserver: shared mem   /tmp/vgdb-pipe-shared-mem-vgdb-9447-by-jarrod-on-???
==9447== 
==9447== TO CONTROL THIS PROCESS USING vgdb (which you probably
==9447== don't want to do, unless you know exactly what you're doing,
==9447== or are doing some strange experiment):
==9447==   /usr/lib/valgrind/../../bin/vgdb --pid=9447 ...command...
==9447== 
==9447== TO DEBUG THIS PROCESS USING GDB: start GDB like this
==9447==   /path/to/gdb ./Sonix Keyboard Flasher
==9447== and then give GDB the following command
==9447==   target remote | /usr/lib/valgrind/../../bin/vgdb --pid=9447
==9447== --pid is optional if only one valgrind process is running
==9447== 
--9447-- REDIR: 0x4023890 (ld-linux-x86-64.so.2:strlen) redirected to 0x580bb342 (vgPlain_amd64_linux_REDIR_FOR_strlen)
--9447-- REDIR: 0x4023660 (ld-linux-x86-64.so.2:index) redirected to 0x580bb35c (vgPlain_amd64_linux_REDIR_FOR_index)
--9447-- Reading syms from /usr/lib/valgrind/vgpreload_core-amd64-linux.so
--9447-- Reading syms from /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so
==9447== WARNING: new redirection conflicts with existing -- ignoring it
--9447--     old: 0x04023890 (strlen              ) R-> (0000.0) 0x580bb342 vgPlain_amd64_linux_REDIR_FOR_strlen
--9447--     new: 0x04023890 (strlen              ) R-> (2007.0) 0x048448d0 strlen
--9447-- REDIR: 0x4020070 (ld-linux-x86-64.so.2:strcmp) redirected to 0x4845730 (strcmp)
--9447-- REDIR: 0x4023df0 (ld-linux-x86-64.so.2:mempcpy) redirected to 0x48491a0 (mempcpy)
--9447-- Reading syms from /usr/lib/libdl-2.33.so
--9447--    object doesn't have a symbol table
--9447-- Reading syms from /usr/lib/libz.so.1.2.11
--9447--    object doesn't have a symbol table
--9447-- Reading syms from /usr/lib/libc-2.33.so
--9447-- REDIR: 0x49320b0 (libc.so.6:memmove) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
==9447== Preferring higher priority redirection:
--9447--     old: 0x04a05510 (__memcpy_avx_unalign) R-> (2018.0) 0x04846980 __memcpy_avx_unaligned_erms
--9447--     new: 0x04a05510 (__memcpy_avx_unalign) R-> (2018.1) 0x04848220 memmove
--9447-- REDIR: 0x49315b0 (libc.so.6:strncpy) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x49323f0 (libc.so.6:strcasecmp) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4931050 (libc.so.6:strcat) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4931610 (libc.so.6:rindex) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x49337a0 (libc.so.6:rawmemchr) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x494b7f0 (libc.so.6:wmemchr) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x494b330 (libc.so.6:wcscmp) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4932210 (libc.so.6:mempcpy) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4932040 (libc.so.6:bcmp) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4931540 (libc.so.6:strncmp) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4931100 (libc.so.6:strcmp) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4932180 (libc.so.6:memset) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x494b2f0 (libc.so.6:wcschr) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x49314a0 (libc.so.6:strnlen) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x49311e0 (libc.so.6:strcspn) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4932440 (libc.so.6:strncasecmp) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4931180 (libc.so.6:strcpy) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4932590 (libc.so.6:memcpy@@GLIBC_2.14) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x494ca40 (libc.so.6:wcsnlen) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x494b370 (libc.so.6:wcscpy) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4931650 (libc.so.6:strpbrk) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x49310b0 (libc.so.6:index) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4931460 (libc.so.6:strlen) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4937c10 (libc.so.6:memrchr) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4932490 (libc.so.6:strcasecmp_l) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4932000 (libc.so.6:memchr) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x494b440 (libc.so.6:wcslen) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4931770 (libc.so.6:strspn) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4932390 (libc.so.6:stpncpy) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4932330 (libc.so.6:stpcpy) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x49337e0 (libc.so.6:strchrnul) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x49324e0 (libc.so.6:strncasecmp_l) redirected to 0x48331b0 (_vgnU_ifunc_wrapper)
--9447-- REDIR: 0x4a02330 (libc.so.6:__strrchr_avx2) redirected to 0x4844310 (rindex)
--9447-- REDIR: 0x492e0f0 (libc.so.6:calloc) redirected to 0x4843550 (calloc)
--9447-- REDIR: 0x4a04730 (libc.so.6:__stpcpy_avx2) redirected to 0x4847ae0 (stpcpy)
--9447-- REDIR: 0x49ade40 (libc.so.6:__strcpy_chk) redirected to 0x4848d10 (__strcpy_chk)
--9447-- REDIR: 0x4a03a40 (libc.so.6:__strcpy_avx2) redirected to 0x4844900 (strcpy)
--9447-- REDIR: 0x4a02500 (libc.so.6:__strlen_avx2) redirected to 0x48447b0 (strlen)
--9447-- REDIR: 0x48e1150 (libc.so.6:unsetenv) redirected to 0x4849b40 (unsetenv)
--9447-- REDIR: 0x4a01f10 (libc.so.6:__strchr_avx2) redirected to 0x4844490 (index)
--9447-- REDIR: 0x49fde30 (libc.so.6:__strncmp_avx2) redirected to 0x4844e80 (strncmp)
--9447-- REDIR: 0x4a026a0 (libc.so.6:__strnlen_avx2) redirected to 0x4844750 (strnlen)
--9447-- REDIR: 0x49add70 (libc.so.6:__stpcpy_chk) redirected to 0x4848d60 (__stpcpy_chk)
--9447-- REDIR: 0x492d320 (libc.so.6:malloc) redirected to 0x483e750 (malloc)
--9447-- REDIR: 0x4931c20 (libc.so.6:__GI_strstr) redirected to 0x4849430 (__strstr_sse2)
--9447-- REDIR: 0x492d980 (libc.so.6:free) redirected to 0x4841120 (free)
--9447-- REDIR: 0x4a054f0 (libc.so.6:__mempcpy_avx_unaligned_erms) redirected to 0x4848db0 (mempcpy)
--9447-- REDIR: 0x4a05510 (libc.so.6:__memcpy_avx_unaligned_erms) redirected to 0x4848220 (memmove)
--9447-- REDIR: 0x48e10f0 (libc.so.6:setenv) redirected to 0x4849be0 (setenv)
--9447-- REDIR: 0x492dc20 (libc.so.6:realloc) redirected to 0x48437c0 (realloc)
--9447-- REDIR: 0x49fd9f0 (libc.so.6:__strcmp_avx2) redirected to 0x4845630 (strcmp)
==9447== Warning: ignored attempt to set SIGKILL handler in sigaction();
==9447==          the SIGKILL signal is uncatchable
==9447== Warning: ignored attempt to set SIGSTOP handler in sigaction();
==9447==          the SIGSTOP signal is uncatchable
==9447== Warning: ignored attempt to set SIGRT32 handler in sigaction();
==9447==          the SIGRT32 signal is used internally by Valgrind
==9447== 
==9447== Process terminating with default action of signal 11 (SIGSEGV): dumping core
==9447==    at 0x48DED00: raise (in /usr/lib/libc-2.33.so)
==9447==    by 0x40531B: ??? (in /home/jarrod/Desktop/Sonix Keyboard Flasher/Sonix Keyboard Flasher)
==9447==    by 0x40316F: ??? (in /home/jarrod/Desktop/Sonix Keyboard Flasher/Sonix Keyboard Flasher)
==9447==    by 0x48C9B24: (below main) (in /usr/lib/libc-2.33.so)
==9447== 
==9447== HEAP SUMMARY:
==9447==     in use at exit: 16,896 bytes in 2 blocks
==9447==   total heap usage: 13 allocs, 11 frees, 23,016 bytes allocated
==9447== 
==9447== Searching for pointers to 2 not-freed blocks
==9447== Checked 182,320 bytes
==9447== 
==9447== LEAK SUMMARY:
==9447==    definitely lost: 0 bytes in 0 blocks
==9447==    indirectly lost: 0 bytes in 0 blocks
==9447==      possibly lost: 0 bytes in 0 blocks
==9447==    still reachable: 16,896 bytes in 2 blocks
==9447==         suppressed: 0 bytes in 0 blocks
==9447== Rerun with --leak-check=full to see details of leaked memory
==9447== 
==9447== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
zsh: segmentation fault (core dumped)  valgrind -v ./Sonix\ Keyboard\ Flasher

Run without GUI

The dependency on qt makes this a pain to run.

Is there a way to run a command from the CLI to flash?

Error when flashing a second time

If you try to flash a second time, it throws an error.

Procedure:

  1. Open sonix flasher with ./run.sh
  2. Keyboard already in bootloader, so just click flash QMK and pick .bin
  3. Flashes successfully
  4. Put keyboard in bootloader with key combination
  5. Refresh, select SN32F248B (bootloader)
  6. Try to flash QMK again
  7. Error:

image

Should 0x200 be the default?

While I was making the Window taller, I noticed it would be easy to change that default, so I am curious if there is any desire for 0x00 to be the default, or perhaps for it to change based on what bootloader pid/vid is detected?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.