Hijax

Members
  • Content Count

    60
  • Joined

  • Last visited

About Hijax

  • Rank
    Advanced Member

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. As no details are provided I will suggest to: 1) verify i2c-tools package is installed dpkg -l i2c-tools 2) After successful installation (if needed) check if i2c bus is detectable i2cdetect -l 3) If working, play around with other i2c commands, like i2cset or i2cget
  2. Jessie is not supported on Arm64 architecture. Is it really needed to continue from here? Current shell script conforms to Python version but with no lsb_module analysis. Frankly speaking I do believe current shell is good enough.
  3. Ok. Then next week I will spend some time in checking lsb_release
  4. Status update. DHL parcel received. New boards photos: and SD adapter inserted into Rock64 Now I am waiting for remaining components then soldering/assembly will start.
  5. As for now I have not faced any issues with my SBCs and mini images. So my question is : what is next step before incorporating those changes into master branch ?
  6. Thx @lanefu, as I already wrote I am also interested in that design, to sort out my shelf of SBCs and stop messing with SD cards. That said may it be that in the future I can connect some of my boards (as I have dozen of not used ones) for continuous integration of future Armbian changes. In a automatic way. So the question quickly pops up: I will continue with HW design but who will do the scripts that will use that HW? :) I.e. run compile.sh, upload to remote SD, power SUT, gather logs?
  7. Picture of first power / serial board. This is the old design and I am awaiting for new one (just got DHL notification of incoming parcel) I expect that till end of August the prototype will be assembled and electrically tested. Then as promised I will publish design and manufacturing files.
  8. JST connectors shall be locked in place and not touched, yes. This is due to the need of having firm board-cable connection, also there is no need to disconnect that. For power & serial cable, second end I plan to use 4 pin Dupont connectors. This time for easy plugging into SBC 40pin header. Hence, together with uSD card adapter both can be reconnected as many times as one need.
  9. First PCB from jlcpcb in on the way. Meanwhile I have find some time to sit down on the mSD adapter. Small PCB with JST XH connector. Thus cables between mux boards and those should be 4-Pin JST XH Female Connector Double Ended ones. An micro SD mux board final design: And serial mux / power distribution (with I2C interface) For serial / power connection, standard NEMA17 extender cable (4-pin JST XH & DUPONT connectors) will do the job. Dupont connector inserted into following pins on the SUT board: I have ordered 1m cables (JST/JST & JST/Dupont) from aliexpress.
  10. Fair enough. So this topic can be closed
  11. So you suggest to use CLEAN_LEVEL="debs" to remove debs all the time and eventually add IGNORE_UPDATES ?
  12. Playing with BUILD_MINIMAL I had to several times run compilation script for the same board / system / branch. To speed up verification I thought: what is a point to constantly build u-boot / kernel? So I added CLEAN_LEVEL option to not delete generated debs. I have noted that from one hand I can disable cleaning of (for example) kernel deb files, but from other hand if there is repository update no new deb is produced. And the idea.... or is this already implemented somewhere? Build of u-boot / kernel is initiated when no deb file exists. fetch_from_repo function knows if the repository is updated. What is fetch_from_repo returns update status and this is used also in main.sh as additional check? I.e. deb exists but is older than latest repo update so compilation is required. Essentially, to change: if [[ ! -f ${DEST}/debs/${CHOSEN_UBOOT}_${REVISION}_${ARCH}.deb ]]; then into something like: if [[ ${UBOOT_UPDATED} == "yes" || ! -f ${DEST}/debs/${CHOSEN_UBOOT}_${REVISION}_${ARCH}.deb ]]; then And diff proposal: diff --git a/lib/general.sh b/lib/general.sh index dc0718a4..64edeaa8 100644 --- a/lib/general.sh +++ b/lib/general.sh @@ -294,6 +294,7 @@ fetch_from_repo() fetch_from_repo "$surl" "$workdir/$i" "$sref" done fi + [[ $changed == false ]] && return 1 } ############################################################################# #-------------------------------------------------------------------------------------------------------------------------------- diff --git a/lib/main.sh b/lib/main.sh index 00ec251c..b9779edb 100644 --- a/lib/main.sh +++ b/lib/main.sh @@ -311,10 +311,15 @@ start=$(date +%s) # ignore updates help on building all images - for internal purposes # fetch_from_repo <url> <dir> <ref> <subdir_flag> +BOOT_IS_UPDATED=false +KERNEL_IS_UPDATED=false if [[ $IGNORE_UPDATES != yes ]]; then display_alert "Downloading sources" "" "info" fetch_from_repo "$BOOTSOURCE" "$BOOTDIR" "$BOOTBRANCH" "yes" + [[ $? == 0 ]] && BOOT_IS_UPDATED=true fetch_from_repo "$KERNELSOURCE" "$KERNELDIR" "$KERNELBRANCH" "yes" + [[ $? == 0 ]] && KERNEL_IS_UPDATED=true if [[ -n $ATFSOURCE ]]; then fetch_from_repo "$ATFSOURCE" "$ATFDIR" "$ATFBRANCH" "yes" fi @@ -357,7 +362,7 @@ for option in $(tr ',' ' ' <<< "$CLEAN_LEVEL"); do done # Compile u-boot if packed .deb does not exist -if [[ ! -f ${DEST}/debs/${CHOSEN_UBOOT}_${REVISION}_${ARCH}.deb ]]; then +if [[ $BOOT_IS_UPDATED == true || ! -f ${DEST}/debs/${CHOSEN_UBOOT}_${REVISION}_${ARCH}.deb ]]; then if [[ -n $ATFSOURCE ]]; then compile_atf fi @@ -365,7 +370,7 @@ if [[ ! -f ${DEST}/debs/${CHOSEN_UBOOT}_${REVISION}_${ARCH}.deb ]]; then fi # Compile kernel if packed .deb does not exist -if [[ ! -f ${DEST}/debs/${CHOSEN_KERNEL}_${REVISION}_${ARCH}.deb ]]; then +if [[ $KERNEL_IS_UPADTED == true || ! -f ${DEST}/debs/${CHOSEN_KERNEL}_${REVISION}_${ARCH}.deb ]]; then KDEB_CHANGELOG_DIST=$RELEASE compile_kernel fi
  13. Hi, few days delay as I had to do also other things Anyway... By latest I meant respective versions of default NOT dev branches. Thus: Pine H64 - branch next results in kernel 4.19.59 Rock64 - branch default results in kernel 4.4.184 Both had problems to boot. PineH64 did not start kernel at all while Rock64 has some crashes during kernel initialization resulting in no /bin/init. As I had to progress somehow I decided to switch to dev branch. After that numbering changes to: Pine H64 - kernel 5.2.2 Rock64 - kernel 5.2.0 Using dev branch I have successfuly build minimal images for those two boards using Ubuntu Bionic as base. Both boards works fine using mini images. Only one issue I have noted: pineh64:~$ /etc/update-motd.d/10-armbian-header error: could not load font standard Welcome to Ubuntu Bionic with Armbian Linux 5.2.2-sunxi64 This is because there is no standard font for toilet usage. https://packages.ubuntu.com/xenial/all/toilet-fonts/filelist Standard font is available for figlet. But figlet is not installed and not in use by 10-armbian-header script. Shall other available be used instead, like mono12?
  14. Back to main (from my perspective) topic: - Serial MUX board: I have changed analog to digital switching. I.e. instead of 4052 I placed 74HC151 & 74HC238 chips. Used P-MOS IRF7425 are chosen to minimize heat generation. - SD mux board: total redesign here. Eight 74HC157 (quad 2-input multiplexer) are used to connect SD either to SUT or MasterSBC. Only SPI mode of SD is utilized here. From MasterSBC perspective CLK, DI and CS signals are connected to all SDs, while DO signal of every SD card is multiplexed so only only selected card is available at the time. PCBs are designed to use only 2 layers (hence cheaper) with chips in SOIC enclosures. To make those easier for hand soldering. I have already sent for production initial design of Serial-Mux board. I will use it to test some ideas. But before sending next order I would appreciate comments on this design (fairly simple though)