# HG changeset patch # User Tero Koskinen # Date 1636144719 -7200 # Fri Nov 05 22:38:39 2021 +0200 # Node ID 766ad8d2f585967dcd8514948f0ef8828dc908fe # Parent 352e0943156b8e3448f2a7fa9817bf03210a52e2 Change dead Bitbucket links to Sourcehut. The arduino-pn532 repo wiki was not transferred to Sourcehut and therefore is gone forever. Links to the now dead wiki have been marked as broken. diff --git a/contents/avr-ada-122-f25-rpms.rst b/contents/avr-ada-122-f25-rpms.rst --- a/contents/avr-ada-122-f25-rpms.rst +++ b/contents/avr-ada-122-f25-rpms.rst @@ -31,7 +31,7 @@ Notes: * The used GCC version is 4.9.2. -* Instead of using normal .spec files + rpmbuild, I build the binaries with my `custom build script `_ +* Instead of using normal .spec files + rpmbuild, I build the binaries with my `custom build script `_ and `fpm `_ (for installation, you need only dnf). * The installation happens to /opt/avr-ada-122 * The RPMs are unofficial in every possible way and they are not endorsed by Fedora or AVR-Ada projects. diff --git a/contents/avr-ada-122-rpi1-debs.rst b/contents/avr-ada-122-rpi1-debs.rst --- a/contents/avr-ada-122-rpi1-debs.rst +++ b/contents/avr-ada-122-rpi1-debs.rst @@ -22,11 +22,11 @@ The installed binaries go to /usr/local/avr-ada-122 directory. -The build script can be found from https://bitbucket.org/tkoskine/avr-ada-build-script (branch raspberry-pi-wheezy_). +The build script can be found from https://hg.sr.ht/~tkoskine/avr-ada-build-script (branch raspberry-pi-wheezy_). Once the build script has compiled and installed avr-gcc and AVR-Ada, you can package the results with fpm:: fpm -s dir -t deb -n avr-ada -v 1.2.2 /usr/local/avr-ada-122 .. _method: http://arduino.ada-language.com/avr-ada-package-for-ubuntu-1404.html -.. _raspberry-pi-wheezy: https://bitbucket.org/tkoskine/avr-ada-build-script/branch/raspberry-pi-wheezy +.. _raspberry-pi-wheezy: https://hg.sr.ht/~tkoskine/avr-ada-build-script/browse?rev=raspberry-pi-wheezy diff --git a/contents/avr-ada-122-ubuntu-debs.rst b/contents/avr-ada-122-ubuntu-debs.rst --- a/contents/avr-ada-122-ubuntu-debs.rst +++ b/contents/avr-ada-122-ubuntu-debs.rst @@ -8,7 +8,7 @@ using the latest AVR-Ada sources (basically 1.2.2 + some fixes). It is categorized as "quick and dirty" because I generated the binaries on Ubuntu 14.04 using my -`avr-ada build script `_ +`avr-ada build script `_ and then created the package using `fpm `_. Anyway, if you are brave enough, you can get the package from `ubuntu.ada-language.com `_ @@ -33,7 +33,7 @@ If you want to generate the package by yourself, you can clone avr-ada-build-script repository and run the script and the fpm tool:: - hg clone https://bitbucket.org/tkoskine/avr-ada-build-script + hg clone https://hg.sr.ht/~tkoskine/avr-ada-build-script cd avr-ada-build-script # install gnat-4.6, probably need many other dependencies also apt-get install gnat-4.6 diff --git a/contents/avr-ada-rpms.rst b/contents/avr-ada-rpms.rst --- a/contents/avr-ada-rpms.rst +++ b/contents/avr-ada-rpms.rst @@ -35,11 +35,11 @@ *--nogpgcheck* parameter when installing the packages. When you have installed the packages, you can verify the installation -by cloning my `arduino-hello-uart `_ repository and compiling it: +by cloning my `arduino-hello-uart `_ repository and compiling it: :: - hg clone https://bitbucket.org/tkoskine/arduino-hello-uart + hg clone https://hg.sr.ht/~tkoskine/arduino-hello-uart cd arduino-hello-uart make diff --git a/contents/avr-buildscript.rst b/contents/avr-buildscript.rst --- a/contents/avr-buildscript.rst +++ b/contents/avr-buildscript.rst @@ -5,15 +5,15 @@ :tags: gnat, shell, avrada12 For those, who don't want to follow my `manual build instructions `_, I made -`a script `_ which automates the steps. +`a script `_ which automates the steps. You can use the script like this: :: - wget https://bitbucket.org/tkoskine/avr-ada-build-script/get/tip.zip - unzip tip.zip - cd tkoskine-avr-ada-build-script-1677e4b66123 + wget https://hg.sr.ht/~tkoskine/avr-ada-build-script/archive/tip.tar.gz + tar zxvf tip.tar.gz + cd avr-ada-build-script-tip/ sh -x build-avr-ada-environment.sh The script will build GNAT 4.7.0 into $HOME/programs64/gnat-native-470 directory diff --git a/contents/avr-toolchain.rst b/contents/avr-toolchain.rst --- a/contents/avr-toolchain.rst +++ b/contents/avr-toolchain.rst @@ -233,12 +233,12 @@ ----------------- To verify that you can actually compile AVR-Ada programs, you can download -some example code from my bitbucket repositories and build them. +some example code from my Sourcehut repositories and build them. :: export PATH=$HOME/programs/avrada/bin:$PATH - hg clone https://bitbucket.org/tkoskine/arduino-hello-uart + hg clone https://hg.sr.ht/~tkoskine/arduino-hello-uart cd arduino-hello-uart make diff --git a/contents/beginner/4digit7segment.rst b/contents/beginner/4digit7segment.rst --- a/contents/beginner/4digit7segment.rst +++ b/contents/beginner/4digit7segment.rst @@ -170,7 +170,7 @@ end loop; -The rest of the code is available from `arduino-mega2560-4d-7segment repository `_. +The rest of the code is available from `arduino-mega2560-4d-7segment repository `_. And now the explanation of the code: diff --git a/contents/beginner/blink.rst b/contents/beginner/blink.rst --- a/contents/beginner/blink.rst +++ b/contents/beginner/blink.rst @@ -122,5 +122,5 @@ Get the code ------------ -The full code can be found from my bitbucket.org `arduino-blink-led `_ repository. +The full code can be found from my Sourcehut `arduino-blink-led `_ repository. diff --git a/contents/beginner/button-interrupts.rst b/contents/beginner/button-interrupts.rst --- a/contents/beginner/button-interrupts.rst +++ b/contents/beginner/button-interrupts.rst @@ -78,6 +78,6 @@ pressed more than once during the waiting period and my code misses some of the presses. Another approach can be found from `AVR-Ada repository `_. -Full code is available in the `examples/button-interrupt `_ directory. +Full code is available in the `examples/button-interrupt `_ directory. .. _debouncing: http://arduino.cc/en/Tutorial/Debounce diff --git a/contents/beginner/countingseconds.rst b/contents/beginner/countingseconds.rst --- a/contents/beginner/countingseconds.rst +++ b/contents/beginner/countingseconds.rst @@ -34,7 +34,7 @@ Adding buttons to reset/stop time is left as an exercise for the reader :). -Code is at `bitbucket`_. Notice that the repository is +Code is at `sourcehut`_. Notice that the repository is *arduino-mega2560-4d-7segment* and the branch is this time *attiny4313*. This is mostly because I was lazy and didn't want to create a separate repository for this simple demo. @@ -43,7 +43,7 @@ :: - hg clone https://bitbucket.org/tkoskine/arduino-mega2560-4d-7segment + hg clone https://hg.sr.ht/~tkoskine/arduino-mega2560-4d-7segment cd arduino-mega2560-4d-7segment hg update attiny4313 @@ -52,5 +52,5 @@ .. _AVR-Ada: http://sourceforge.net/projects/avr-ada/ .. _Arduino: http://www.arduino.cc/ .. _7-segment display: http://arduino.ada-language.com/controlling-4-digit-7-segment-display.html -.. _bitbucket: https://bitbucket.org/tkoskine/arduino-mega2560-4d-7segment +.. _sourcehut: https://hg.sr.ht/~tkoskine/arduino-mega2560-4d-7segment .. _Mercurial: http://mercurial.selenic.com/ diff --git a/contents/beginner/ds18b20.rst b/contents/beginner/ds18b20.rst --- a/contents/beginner/ds18b20.rst +++ b/contents/beginner/ds18b20.rst @@ -91,5 +91,5 @@ should fit. .. _DS18B20: http://paeae.com/ds18b20-1-wire-temperature-sensor.html -.. _arduino-ds18b20 repository: https://bitbucket.org/tkoskine/arduino-ds18b20 +.. _arduino-ds18b20 repository: https://hg.sr.ht/~tkoskine/arduino-ds18b20 .. _the official Wireless Shield: http://arduino.cc/en/Main/ArduinoWirelessShield \ No newline at end of file diff --git a/contents/beginner/lcd3310.rst b/contents/beginner/lcd3310.rst --- a/contents/beginner/lcd3310.rst +++ b/contents/beginner/lcd3310.rst @@ -97,5 +97,5 @@ .. _UEXT: https://www.olimex.com/Products/Modules/UEXT/ .. _UEXT specification: https://www.olimex.com/Products/Modules/UEXT/resources/UEXT_rev_B.pdf .. _C example: https://github.com/OLIMEX/OLINUXINO/tree/master/SOFTWARE/iMX233/MOD-LCD3310 -.. _arduino-mod-lcd3310 repository: https://bitbucket.org/tkoskine/arduino-mod-lcd3310 +.. _arduino-mod-lcd3310 repository: https://hg.sr.ht/~tkoskine/arduino-mod-lcd3310 .. _roguelike: http://en.wikipedia.org/wiki/Roguelike diff --git a/contents/beginner/motorshield-pwm.rst b/contents/beginner/motorshield-pwm.rst --- a/contents/beginner/motorshield-pwm.rst +++ b/contents/beginner/motorshield-pwm.rst @@ -130,7 +130,7 @@ end Motor; -As usual, the code can be found from Bitbucket Mercurial repository: -`motorshield `_. +As usual, the code can be found from Sourcehut Mercurial repository: +`motorshield `_. AVR-Ada 1.2 is required. diff --git a/contents/beginner/progmem.rst b/contents/beginner/progmem.rst --- a/contents/beginner/progmem.rst +++ b/contents/beginner/progmem.rst @@ -32,7 +32,7 @@ how the address is calculated, the compiler handles everything for you. -The updated code is available at `my arduino-mod-lcd3310 repository `_ as usual. +The updated code is available at `my arduino-mod-lcd3310 repository `_ as usual. The revision number for this change is *ab6d9f7edc6f*. And here the .bss usage before and after Linker_Section pragma:: diff --git a/contents/expert/pn532.rst b/contents/expert/pn532.rst --- a/contents/expert/pn532.rst +++ b/contents/expert/pn532.rst @@ -43,8 +43,8 @@ If you are interested about the communication protocol details for various tag types, they are documented in wiki_: -* `NFC Forum Type 2 tags `_ -* `NFC Forum Type 4 tags `_ +* `NFC Forum Type 2 tags `_ (BROKEN LINK) +* `NFC Forum Type 4 tags `_ (BROKEN LINK) Code ---- @@ -138,9 +138,9 @@ `documentation `_, if you are interested about the issue. -The code is available under ISC license at `Bitbucket `_. +The code is available under ISC license at `Sourcehut `_. -Example hex_ file can be fetched from `arduino-blog repository `_. +Example hex_ file can be fetched from `arduino-blog repository `_. It is compiled for 16MHz Arduino with pin configuration: * MISO = PB4 (digital pin 12) @@ -151,7 +151,7 @@ .. _Adafruit: http://www.adafruit.com/ .. _tricky: https://learn.adafruit.com/adafruit-pn532-rfid-nfc/breakout-wiring .. _UEXT: https://www.olimex.com/Products/Modules/UEXT/ -.. _code: https://bitbucket.org/tkoskine/arduino-pn532 +.. _code: https://hg.sr.ht/~tkoskine/arduino-pn532 .. _wiki: https://bitbucket.org/tkoskine/arduino-pn532/wiki/Home .. _NFCTools: https://play.google.com/store/apps/details?id=com.wakdev.wdnfc -.. _hex: https://bitbucket.org/tkoskine/arduino-blog/raw/d6a1c1e0ab0ff2f1e562182772583b9266e770dc/examples/nfc/nfc_16MHz.hex +.. _hex: https://hg.sr.ht/~tkoskine/arduino-blog/raw/examples/nfc/nfc_16MHz.hex?rev=default diff --git a/contents/expert/pn532_part2.rst b/contents/expert/pn532_part2.rst --- a/contents/expert/pn532_part2.rst +++ b/contents/expert/pn532_part2.rst @@ -30,8 +30,8 @@ Yubikey NEO basically returns https URL which has the changing key part at the end of the url. -As before_, my code is available at https://bitbucket.org/tkoskine/arduino-pn532 -and generated hex files at https://bitbucket.org/tkoskine/arduino-blog as +As before_, my code is available at https://hg.sr.ht/~tkoskine/arduino-pn532 +and generated hex files at https://hg.sr.ht/~tkoskine/arduino-blog as `nfc_i2c.hex`_ and `nfc_spi.hex`_. nfc_i2c.hex works with `Adafruit PN532 Arduino Shield`_ while the SPI version @@ -48,8 +48,8 @@ For I2C, I used slightly modified (bigger buffers) version of Rolf's AVR.I2C package. Earlier, I had made my own I2C routines also, but Rolf's package is more polished. -.. _PN532 code: https://bitbucket.org/tkoskine/arduino-pn532 +.. _PN532 code: https://hg.sr.ht/~tkoskine//arduino-pn532 .. _Adafruit PN532 Arduino Shield: http://www.adafruit.com/product/789 .. _before: http://arduino.ada-language.com/read-write-and-emulate-nfc-tags-using-adafruit-pn532-breakout-board-olimexino-328-and-avr-ada.html -.. _nfc_i2c.hex: https://bitbucket.org/tkoskine/arduino-blog/src/380dd36738b2f8e47efaeb615030098efeb8fbb9/examples/nfc-part-2/nfc_i2c.hex?at=default -.. _nfc_spi.hex: https://bitbucket.org/tkoskine/arduino-blog/src/380dd36738b2f8e47efaeb615030098efeb8fbb9/examples/nfc-part-2/nfc_spi.hex?at=default +.. _nfc_i2c.hex: https://hg.sr.ht/~tkoskine/arduino-blog/raw/examples/nfc-part-2/nfc_i2c.hex?rev=default +.. _nfc_spi.hex: https://hg.sr.ht/~tkoskine/arduino-blog/raw/examples/nfc-part-2/nfc_spi.hex?rev=default diff --git a/contents/expert/software-i2c.rst b/contents/expert/software-i2c.rst --- a/contents/expert/software-i2c.rst +++ b/contents/expert/software-i2c.rst @@ -15,8 +15,8 @@ The code was for Atmel SAMD21 and as such could not be used with AVR-Ada. This led me to rewrite the code in Ada. -I abstracted the `core logic `_ -into a `generic package `_, +I abstracted the `core logic `_ +into a `generic package `_, which can be used on any platform as long as few procedures are provided by the user: :: @@ -75,8 +75,8 @@ An implementation for AVR-Ada and Arduino UNO (atmega328p) is provided -in `uno_i2c.ads `_ -and `uno_i2c.adb `_. +in `uno_i2c.ads `_ +and `uno_i2c.adb `_. .. image:: http://arduino.tkoskine.fastmail.com.user.fm/tmp102_temperature_sensor.jpg?asatt=1&variant=small :alt: TMP102 temperature sensor diff --git a/contents/expert/thinkpad-bios-password.rst b/contents/expert/thinkpad-bios-password.rst --- a/contents/expert/thinkpad-bios-password.rst +++ b/contents/expert/thinkpad-bios-password.rst @@ -80,7 +80,7 @@ end loop; -You can find it from my `arduino-thinkpad-bios `_ repository. The source code expects AVR-Ada 1.2 (the development version at the time of writing). +You can find it from my `arduino-thinkpad-bios `_ repository. The source code expects AVR-Ada 1.2 (the development version at the time of writing). I didn't know the exact I2C address of the EEPROM, so I iterated through multiple addresses and printed out all the info I was able to get. @@ -102,7 +102,7 @@ ... If you want to convert this to binary image form, you can save the output -to a file and feed the file to my `write_blocks.pl `_ +to a file and feed the file to my `write_blocks.pl `_ Perl script. The bytes are `IBM keyboard `_ diff --git a/contents/intermediate/alarm-clock.rst b/contents/intermediate/alarm-clock.rst --- a/contents/intermediate/alarm-clock.rst +++ b/contents/intermediate/alarm-clock.rst @@ -269,7 +269,7 @@ However, this and the button usage is left as an exercise for the reader. ;) -As usual, the code is available at `arduino-alarm-clock repository `_. +As usual, the code is available at `arduino-alarm-clock repository `_. *Note:* While the code is written using Ada and the required logic is quite simple, I do not guarantee that the alarm clock works 100% reliably or with a good accuracy. You should not rely on it as your only alarm clock. diff --git a/contents/intermediate/attiny2313-led.rst b/contents/intermediate/attiny2313-led.rst --- a/contents/intermediate/attiny2313-led.rst +++ b/contents/intermediate/attiny2313-led.rst @@ -115,5 +115,5 @@ avr-objcopy -O ihex -R .eeprom led.elf led.hex The full source code can be found from -`my Bitbucket Mercurial repository `_. +`my Bitbucket Mercurial repository `_. diff --git a/contents/intermediate/attiny4313-usi-twi.rst b/contents/intermediate/attiny4313-usi-twi.rst --- a/contents/intermediate/attiny4313-usi-twi.rst +++ b/contents/intermediate/attiny4313-usi-twi.rst @@ -88,8 +88,8 @@ Attiny_TWI.Master.Write_Data (EEPROM_Address, Buffer); -This time the code is available from my `arduino-blog `_ -repository, under directory `examples/attiny-twowire `_. +This time the code is available from my `arduino-blog `_ +repository, under directory `examples/attiny-twowire `_. The Attiny_TWI.Master package still needs some finishing touches (like fixing some delays), but once I am happy with it, I will commit it into AVR-Ada repository. diff --git a/contents/intermediate/delay-measurements.rst b/contents/intermediate/delay-measurements.rst --- a/contents/intermediate/delay-measurements.rst +++ b/contents/intermediate/delay-measurements.rst @@ -158,4 +158,4 @@ modifying the OSCCAL register. -As usual, the code is found from `Bitbucket `_. +As usual, the code is found from `Sourcehut `_. diff --git a/contents/intermediate/ina219-sensor.rst b/contents/intermediate/ina219-sensor.rst --- a/contents/intermediate/ina219-sensor.rst +++ b/contents/intermediate/ina219-sensor.rst @@ -81,5 +81,5 @@ power saving using AVR-Ada :). The code for the program is available in my -`arduino-blog repository `_ -(see examples/ina219 directory). \ No newline at end of file +`arduino-blog repository `_ +(see examples/ina219 directory). diff --git a/contents/intermediate/neopixel.rst b/contents/intermediate/neopixel.rst --- a/contents/intermediate/neopixel.rst +++ b/contents/intermediate/neopixel.rst @@ -174,7 +174,7 @@ -As usual, the code can be found from Bitbucket_. In addition, in this case I put +As usual, the code can be found from Sourcehut_. In addition, in this case I put the hexfile_ there also. .. _followup discussion: http://sourceforge.net/p/avr-ada/mailman/message/33575458/ @@ -182,5 +182,5 @@ .. _exact: https://learn.adafruit.com/adafruit-neopixel-uberguide/advanced-coding .. _advices: https://learn.adafruit.com/adafruit-neopixel-uberguide/power .. _blog: http://wp.josh.com/2014/05/13/ws2812-neopixels-are-not-so-finicky-once-you-get-to-know-them/ -.. _Bitbucket: https://bitbucket.org/tkoskine/arduino-blog/src/tip/examples/neopixel/?at=default -.. _hexfile: https://bitbucket.org/tkoskine/arduino-blog/raw/fa20a7bce5b876e06795f9d98af39e52378ddec5/examples/neopixel/neopixel-led.hex \ No newline at end of file +.. _Sourcehut: https://hg.sr.ht/~tkoskine/arduino-blog/browse/examples/neopixel?rev=tip +.. _hexfile: https://hg.sr.ht/~tkoskine/arduino-blog/raw/examples/neopixel/neopixel-led.hex?rev=tip \ No newline at end of file diff --git a/contents/intermediate/power-saving-revisited.rst b/contents/intermediate/power-saving-revisited.rst --- a/contents/intermediate/power-saving-revisited.rst +++ b/contents/intermediate/power-saving-revisited.rst @@ -21,6 +21,6 @@ It is somewhat complex to add good watchdog support for atmega328p and also "trigger an interrupt instead of reset" functionality, so I won't be committing my watchdog code to AVR-Ada repos any time soon. Meanwhile, you can get the code from -from my `arduino-blog repository `_, -examples/`deep-sleep `_ directory. +from my `arduino-blog repository `_, +examples/`deep-sleep `_ directory. diff --git a/contents/intermediate/power-saving.rst b/contents/intermediate/power-saving.rst --- a/contents/intermediate/power-saving.rst +++ b/contents/intermediate/power-saving.rst @@ -256,7 +256,7 @@ :height: 299 :width: 500 -The program running on the sleeping Arduino can be found from `here (sleeper-atmega328p.hex) `_ in ihex format. +The program running on the sleeping Arduino can be found from `here (sleeper-atmega328p.hex) `_ in ihex format. The measurement results were: @@ -295,7 +295,7 @@ Also, I didn't even try all the available power saving tricks, so it should be possible to go even lower. (See the Sparkfun tutorial for details.) -The complete code is available from my `arduino-blog repository `_, under examples/sleeper directory. +The complete code is available from my `arduino-blog repository `_, under examples/sleeper directory. diff --git a/contents/intermediate/remote-controlled-robot.rst b/contents/intermediate/remote-controlled-robot.rst --- a/contents/intermediate/remote-controlled-robot.rst +++ b/contents/intermediate/remote-controlled-robot.rst @@ -115,7 +115,7 @@ end if; The rest of the code can be found from -`arduino-rc-robot repository `_. +`arduino-rc-robot repository `_. Finally, I connected XBee Explorer USB to my PC, opened a terminal program, and started sending control commands. diff --git a/contents/intermediate/trinket-soft-serial.rst b/contents/intermediate/trinket-soft-serial.rst --- a/contents/intermediate/trinket-soft-serial.rst +++ b/contents/intermediate/trinket-soft-serial.rst @@ -63,9 +63,9 @@ The procedure uses 8N1 format, meaning that the start bit (pin low) is sent first, then the data byte as 8 bits, and finally one stop bit (pin high). -The example code_ can be found from `Bitbucket `_ as +The example code_ can be found from `Sourcehut `_ as usual. .. _Trinket: https://www.adafruit.com/products/1501 -.. _code: https://bitbucket.org/tkoskine/arduino-blog/src/2877b1ca6f9cfa0087af4ac80f020a91a8d81e22/examples/trinket-soft-serial/?at=default +.. _code: https://hg.sr.ht/~tkoskine/arduino-blog/browse/examples/trinket-soft-serial/?rev=2877b1ca6f9cfa0087af4ac80f020a91a8d81e22 diff --git a/contents/intermediate/wireless-temperature-sensor.rst b/contents/intermediate/wireless-temperature-sensor.rst --- a/contents/intermediate/wireless-temperature-sensor.rst +++ b/contents/intermediate/wireless-temperature-sensor.rst @@ -114,6 +114,6 @@ on a single battery. Of course, in my setup, I reported the temperature only once per hour. Doing it more often would drain the battery more. -The source code is available at `bitbucket.org/tkoskine/arduino-blog `_ as usual. +The source code is available at `arduino-blog repository `_ as usual. diff --git a/contents/pages/about.rst b/contents/pages/about.rst --- a/contents/pages/about.rst +++ b/contents/pages/about.rst @@ -21,7 +21,7 @@ server later, thanks to increased traffic lately (2013 May). The blog articles, theme, and other related settings can -be found from my `arduino-blog `_ +be found from my `arduino-blog `_ repository. .. _arduino.ada-language.com: http://arduino.ada-language.com/